> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tied.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update resolution confirmation settings

> Administrator-only update behind the account resolution_confirmation feature. Send at least one writable setting at the JSON root with no query parameters. Changes are locked and audited per field; unchanged values are no-ops.



## OpenAPI

````yaml /api-reference/openapi.json patch /api/v1/accounts/{account_id}/resolution_confirmation_settings
openapi: 3.0.4
info:
  title: Tied API
  description: >-
    The Tied REST API. Three families of endpoint, each with its own credential:
    **Application** for everything inside an account, **Platform** for
    provisioning accounts and users, and **Client** for acting as a contact from
    your own surface.
  version: 1.1.0
  termsOfService: https://tied.com/legal
  contact:
    email: hello@tied.com
  license:
    name: MIT License
    url: https://opensource.org/licenses/MIT
servers:
  - url: https://app.tied.com
    description: Tied cloud
security: []
tags:
  - name: Account AgentBots
    description: Account-specific Agent Bots
  - name: Agents
    description: Agent management APIs
  - name: Canned Responses
    description: Pre-defined responses for common queries
  - name: Contacts
    description: Contact management APIs
  - name: Contact Labels
    description: Manage contact labels
  - name: Conversation Assignments
    description: Manage conversation assignments
  - name: Conversation Labels
    description: Manage conversation labels
  - name: Conversations
    description: Conversation management APIs
  - name: Custom Attributes
    description: Custom fields for contacts and conversations
  - name: Custom Filters
    description: Saved filters for conversations
  - name: Inboxes
    description: Communication channels setup
  - name: Integrations
    description: Third-party integrations
  - name: Messages
    description: Message management APIs
  - name: Profile
    description: User profile APIs
  - name: Reports
    description: Analytics and reporting APIs
  - name: Teams
    description: Team management APIs
  - name: Webhooks
    description: Event notification webhooks
  - name: Automation Rule
    description: Workflow automation rules
  - name: Help Center
    description: Knowledge base management
  - name: Contacts API
    description: Public contact APIs
  - name: Conversations API
    description: Public conversation APIs
  - name: Messages API
    description: Public message APIs
  - name: CSAT Survey Page
    description: Customer satisfaction survey
  - name: Account
    description: >-
      The authenticated user's own account — read and update account settings.
      Distinct from the Platform family's **Accounts**, which provisions
      accounts across an installation.
  - name: Audit Logs
    description: Read the account's audit trail
  - name: Inbox API
    description: Public inbox lookup by channel identifier
  - name: Labels
    description: >-
      Create and manage the account's labels. Applying one to a conversation or
      contact is a separate endpoint under those resources.
  - name: Macros
    description: >-
      Saved multi-step actions an agent — or an integration — can run against
      one or more conversations.
  - name: Campaigns
    description: Ongoing website campaigns and one-off SMS and WhatsApp sends.
  - name: Contact Notes
    description: Internal notes on a contact. Never visible to the contact.
  - name: Help Center Categories
    description: Categories group a portal's articles, one tree per allowed locale.
  - name: Help Center Articles
    description: The articles a portal publishes, and their draft and archived states.
  - name: Summary Reports
    description: Per-agent, per-team, per-inbox and per-label totals for a period, as JSON.
  - name: Live Reports
    description: Right-now queue counts. No date range — these describe the present.
  - name: CSAT
    description: >-
      The satisfaction ratings contacts have submitted, and the metrics computed
      from them.
  - name: Notifications
    description: >-
      The per-user notification feed, its read and snooze state, and the
      settings that decide what lands in it.
  - name: Conversation Participants
    description: >-
      The agents watching a conversation. Participants get notified about it
      without being assigned to it.
  - name: Draft Messages
    description: >-
      The unsent reply held for a conversation. Stored in Redis, one per
      conversation.
  - name: Search
    description: >-
      One search service across conversations, contacts, messages and Help
      Center articles.
  - name: Dashboard Apps
    description: Embedded pages that appear as a tab beside a conversation.
  - name: Assignment Policies
    description: How conversations are handed out, and which inbox uses which policy.
  - name: Files
    description: Storing a file so another endpoint can attach it.
  - name: Bot Flows
    description: >-
      Scripted conversation flows, their versions, and the publish and rollback
      that move between them.
  - name: Billing
    description: >-
      Credit balance, usage, invoices, spend controls and the provider-hosted
      payment flows.
  - name: AMB Templates
    description: >-
      Saved Apple Messages primitive payloads an agent can reuse from the
      composer.
  - name: AMB Onboarding
    description: The in-flight Apple Messages for Business registration for an account.
  - name: Widget Session
    description: Starting a widget session and reading the visitor it belongs to.
  - name: Widget Conversation
    description: The visitor's conversation and its messages.
  - name: Widget Context
    description: Campaigns, agents, labels, events and uploads for a widget session.
  - name: CSAT Survey
    description: The public, unauthenticated survey a contact answers from a link.
  - name: Workspace
    description: Scheduling and cancelling deletion of the whole workspace.
  - name: Widget Integrations
    description: Provider actions available to a visitor session in its own conversation.
  - name: Orchestration Studio
    description: >-
      Administrator-only read APIs for Orchestration Studio cases and knowledge
      sources.
  - name: Topic Analytics
    description: Account Topics readiness, labeling health and usage aggregates.
  - name: Analytics V2
    description: >-
      Account-scoped metrics, anonymized benchmarks and audited conversation
      drilldown.
  - name: Knowledge proposals
    description: Administrator-only proposal review and revision decisions.
  - name: Model settings
    description: Administrator-only routing profiles and Tied-hosted catalogue.
  - name: Quality Review
    description: Current quality review queue metadata and manual work state.
paths:
  /api/v1/accounts/{account_id}/resolution_confirmation_settings:
    parameters:
      - name: account_id
        in: path
        required: true
        description: Account id established by the authenticated account membership.
        schema:
          type: integer
          format: int64
    patch:
      tags:
        - Billing
      summary: Update resolution confirmation settings
      description: >-
        Administrator-only update behind the account resolution_confirmation
        feature. Send at least one writable setting at the JSON root with no
        query parameters. Changes are locked and audited per field; unchanged
        values are no-ops.
      operationId: update_resolution_confirmation_settings
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/resolution_confirmation_settings_update'
      responses:
        '200':
          description: Updated account settings.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/resolution_confirmation_settings'
              examples:
                default:
                  summary: Actual default response using synthetic persisted fixtures.
                  value:
                    customer_yes_ask: true
                    human_marked_no_return: true
                    quiet_days: true
                    window_days: 14
                    ask_text: null
                    reopen_window_days: 30
                    effective:
                      ask_enabled: false
                      quiet_days_enabled: false
                same-value-no-op:
                  summary: >-
                    Actual same-value-no-op response using synthetic persisted
                    fixtures.
                  value:
                    customer_yes_ask: true
                    human_marked_no_return: true
                    quiet_days: false
                    window_days: 7
                    ask_text: Saved wording
                    reopen_window_days: 30
                    effective:
                      ask_enabled: false
                      quiet_days_enabled: false
        '400':
          description: The request supplied more than one account API credential type.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/orchestration_studio_credential_conflict'
              examples:
                multiple-credentials:
                  summary: Actual inherited credential-conflict response.
                  value:
                    error:
                      code: multiple_credentials
        '401':
          description: Current response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/account_api_unauthorized'
              examples:
                unauthenticated:
                  summary: >-
                    Actual unauthenticated response using synthetic persisted
                    fixtures.
                  value:
                    errors:
                      - You need to sign in or sign up before continuing.
        '402':
          description: Inherited trial-lock refusal; the update is not applied.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/account_trial_locked_error'
              examples:
                trial-locked:
                  summary: >-
                    Actual trial-locked response using synthetic persisted
                    fixtures.
                  value:
                    error: trial_expired_locked
                    message: >-
                      This workspace trial has ended. Restore billing from the
                      billing page to continue.
        '403':
          description: Current response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/studio_quality_authorization_error'
              examples:
                agent:
                  summary: Actual agent response using synthetic persisted fixtures.
                  value:
                    error: You are not authorized to do this action
                impersonation-read-only:
                  summary: >-
                    Actual impersonation-read-only response using synthetic
                    persisted fixtures.
                  value:
                    error:
                      code: impersonation_read_only
        '404':
          description: Current response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/studio_quality_error'
              examples:
                feature-off:
                  summary: >-
                    Actual feature-off response using synthetic persisted
                    fixtures.
                  value:
                    error: Resource could not be found
        '422':
          description: Unknown fields, wrong JSON shape or setting values.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/studio_quality_error'
              examples:
                invalid-params:
                  summary: >-
                    Actual invalid-params response using synthetic persisted
                    fixtures.
                  value:
                    error: invalid_params
      security:
        - userApiKey: []
components:
  schemas:
    resolution_confirmation_settings_update:
      type: object
      properties:
        customer_yes_ask:
          type: boolean
          description: >-
            Whether customer confirmation is requested for a positive customer
            response.
        human_marked_no_return:
          type: boolean
          description: >-
            Stored account setting; current resolution logic does not consume
            this value.
        quiet_days:
          type: boolean
          description: Whether the quiet-days confirmation path is enabled.
        window_days:
          type: integer
          minimum: 1
          maximum: 30
          description: Confirmation window in days; writable range is 1 through 30.
        ask_text:
          type: string
          nullable: true
          minLength: 1
          maxLength: 200
          description: >-
            Optional customer-facing ask text, or null to use the default
            wording.
      minProperties: 1
      additionalProperties: false
    resolution_confirmation_settings:
      type: object
      required:
        - customer_yes_ask
        - human_marked_no_return
        - quiet_days
        - window_days
        - ask_text
        - reopen_window_days
        - effective
      properties:
        customer_yes_ask:
          type: boolean
          description: >-
            Whether customer confirmation is requested for a positive customer
            response.
        human_marked_no_return:
          type: boolean
          description: >-
            Stored account setting; current resolution logic does not consume
            this value.
        quiet_days:
          type: boolean
          description: Whether the quiet-days confirmation path is enabled.
        window_days:
          type: integer
          minimum: 1
          maximum: 30
          description: Confirmation window in days; writable range is 1 through 30.
        ask_text:
          type: string
          nullable: true
          minLength: 1
          maxLength: 200
          description: >-
            Optional visible text of 1 through 200 characters without control
            characters, or null to use the default wording.
        reopen_window_days:
          type: integer
          readOnly: true
          minimum: 0
          description: Current read-only reopen window used by the service.
        effective:
          type: object
          required:
            - ask_enabled
            - quiet_days_enabled
          properties:
            ask_enabled:
              type: boolean
              description: Whether the ask path is currently effective.
            quiet_days_enabled:
              type: boolean
              description: Whether quiet-days confirmation is currently effective.
          additionalProperties: false
          description: >-
            Current effective flags after account feature, global switches and
            configured hold ceilings.
      additionalProperties: false
    orchestration_studio_credential_conflict:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - multiple_credentials
              description: Conflicting credential types were supplied.
          required:
            - code
          description: The authentication error.
      required:
        - error
    account_api_unauthorized:
      description: >-
        Unauthenticated and ended-impersonation response shapes from inherited
        account API guards.
      oneOf:
        - $ref: '#/components/schemas/error_unauthenticated'
        - $ref: '#/components/schemas/studio_quality_error'
        - $ref: '#/components/schemas/impersonation_ended_error'
    account_trial_locked_error:
      type: object
      required:
        - error
        - message
      additionalProperties: false
      description: Inherited account trial-lock refusal for nonbilling writes.
      properties:
        error:
          type: string
          enum:
            - trial_expired_locked
          description: Stable trial-lock refusal code.
        message:
          type: string
          description: Message directing an administrator to restore billing.
    studio_quality_authorization_error:
      description: Ordinary role refusal or structured inherited impersonation refusal.
      oneOf:
        - $ref: '#/components/schemas/studio_quality_error'
        - $ref: '#/components/schemas/impersonation_forbidden_error'
    studio_quality_error:
      type: object
      required:
        - error
      properties:
        error:
          type: string
          description: Error message or refusal code returned by the controller.
      additionalProperties: false
    error_unauthenticated:
      type: object
      description: >-
        Returned by Devise when the `api_access_token` header is absent
        entirely, before the token check runs. Note `errors` holds plain
        strings, not objects.
      properties:
        errors:
          type: array
          items:
            type: string
          example:
            - You need to sign in or sign up before continuing.
          description: >-
            One or more messages explaining why the request was not
            authenticated.
      required:
        - errors
    impersonation_ended_error:
      type: object
      required:
        - error
      additionalProperties: false
      description: Structured 401 refusal returned for an ended impersonation session.
      properties:
        error:
          type: object
          required:
            - code
          additionalProperties: false
          description: Structured inherited impersonation refusal details.
          properties:
            code:
              type: string
              enum:
                - impersonation_ended
              description: Current impersonation refusal code.
    impersonation_forbidden_error:
      type: object
      required:
        - error
      additionalProperties: false
      description: >-
        Structured 403 refusal returned by the inherited account API
        impersonation guard.
      properties:
        error:
          type: object
          required:
            - code
          additionalProperties: false
          description: Structured inherited impersonation refusal details.
          properties:
            code:
              type: string
              enum:
                - impersonation_read_only
                - impersonation_wrong_account
                - impersonation_blocked_action
              description: Current impersonation refusal code.
  securitySchemes:
    userApiKey:
      type: apiKey
      in: header
      name: api_access_token
      description: >-
        This token can be obtained by visiting the profile page or via rails
        console. Provides access to  endpoints based on the user permissions
        levels. This token can be saved by an external system when user is
        created via API, to perform activities on behalf of the user.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.