{"openapi":"3.1.0","info":{"title":"Help desk API","version":"1.0.0"},"servers":[{"url":"https://api.blhp.app/v1"}],"paths":{"/conversations/{id}/escalate":{"post":{"operationId":"escalateConversation","description":"A session receives only its own public conversation view. A secret key without Origin receives the workspace view, including marked staff-only items. For server creation supply contact; for replies supply as.member.","security":[{"secret":[]},{"session":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EscalateInput"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Conversation"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/approvals/jwks.json":{"get":{"operationId":"approvalKeys","security":[],"parameters":[{"in":"query","name":"workspace","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JWKS"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/approvals/{id}/consume":{"post":{"operationId":"consumeApproval","security":[{"secret":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Approval"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Already used","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"410":{"description":"Pending, rejected, or expired","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/conversations/{id}/approvals":{"get":{"operationId":"listApprovals","security":[{"secret":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Approvals"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/workspace":{"get":{"operationId":"workspace","security":[{"publishable":[]},{"session":[]}],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workspace"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/session/refresh":{"post":{"operationId":"refreshSession","description":"Verified sessions only. Issues a new bearer, invalidates the old bearer, and preserves the absolute 30-day lifetime. Not replayable.","security":[{"session":[]}],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Session"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/contacts":{"get":{"operationId":"listContacts","security":[{"secret":[]}],"parameters":[{"in":"query","name":"q","required":false,"schema":{"type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contacts"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/contacts/by-external-id/{external_id}":{"get":{"operationId":"getContactBySubject","security":[{"secret":[]}],"parameters":[{"in":"path","name":"external_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"put":{"operationId":"upsertContact","security":[{"secret":[]}],"parameters":[{"in":"path","name":"external_id","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInput"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/contacts/{id}":{"get":{"operationId":"getContact","security":[{"secret":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"operationId":"eraseContact","security":[{"secret":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OK"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/conversations/{id}":{"patch":{"operationId":"updateConversation","security":[{"secret":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationPatch"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Conversation"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"operationId":"getConversation","description":"A session receives only its own public conversation view. A secret key without Origin receives the workspace view, including marked staff-only items. For server creation supply contact; for replies supply as.member.","security":[{"secret":[]},{"session":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Conversation"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/conversations/{id}/verifications":{"post":{"operationId":"requestVerification","security":[{"secret":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationInput"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Verification"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/uploads":{"post":{"operationId":"upload","security":[{"session":[]}],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/MultipartFile"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Upload"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large or upload_byte_quota","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_multipart or unsupported_video","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/realtime":{"post":{"operationId":"realtime","security":[{"session":[]}],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RealtimeTicket"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"operationId":"connectRealtime","security":[{"socketTicket":[]}],"parameters":[],"responses":{"101":{"description":"Success","x-websocket-frame":{"$ref":"#/components/schemas/RealtimeEvent"}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"426":{"description":"upgrade_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/openapi.json":{"get":{"operationId":"openapi","security":[],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenAPI"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/sessions":{"post":{"operationId":"createSession","security":[{"publishable":[]},{"secret":[]}],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionInput"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Session"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"428":{"description":"human_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"siteverify_failed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/sessions/email":{"post":{"operationId":"startEmail","description":"Publishable key, or an anonymous session on its allowed origin. Verifying with the anonymous bearer claims only that session’s history and revokes it.","security":[{"publishable":[]},{"session":[]}],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}},{"in":"header","name":"Challenge-Token","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailStart"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OK"}}},"headers":{"Challenge-Token":{"description":"Opaque browser challenge; echo on verify.","schema":{"type":"string"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"428":{"description":"human_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"siteverify_failed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/sessions/email/verify":{"post":{"operationId":"verifyEmail","description":"Publishable key, or an anonymous session on its allowed origin. Verifying with the anonymous bearer claims only that session’s history and revokes it.","security":[{"publishable":[]},{"session":[]}],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}},{"in":"header","name":"Challenge-Token","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailVerify"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Session"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/session":{"delete":{"operationId":"revokeSession","security":[{"session":[]}],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OK"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/me":{"get":{"operationId":"getMe","security":[{"session":[]}],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndUser"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"operationId":"updateMe","security":[{"session":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Profile"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndUser"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/conversations":{"get":{"operationId":"listConversations","description":"A session receives only its own public conversation view. A secret key without Origin receives the workspace view, including marked staff-only items. For server creation supply contact; for replies supply as.member.","security":[{"secret":[]},{"session":[]}],"parameters":[{"in":"query","name":"cursor","required":false,"schema":{"type":"string"}},{"in":"query","name":"status","required":false,"schema":{"enum":["open","closed","in_progress","waiting"]}},{"in":"query","name":"q","required":false,"schema":{"type":"string"}},{"in":"query","name":"contact_id","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Conversations"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"operationId":"createConversation","description":"A session receives only its own public conversation view. A secret key without Origin receives the workspace view, including marked staff-only items. For server creation supply contact; for replies supply as.member.","security":[{"secret":[]},{"session":[]}],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationInput"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Conversation"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"410":{"description":"expired: report metadata is no longer available","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/conversations/{id}/items":{"get":{"operationId":"listItems","description":"A session receives only its own public conversation view. A secret key without Origin receives the workspace view, including marked staff-only items. For server creation supply contact; for replies supply as.member.","security":[{"secret":[]},{"session":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"type":"string"}},{"in":"query","name":"after","required":false,"schema":{"type":"string"}},{"in":"query","name":"before","required":false,"schema":{"type":"string"}},{"in":"query","name":"last","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Items"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/conversations/{id}/messages":{"post":{"operationId":"postMessage","description":"A session receives only its own public conversation view. A secret key without Origin receives the workspace view, including marked staff-only items. For server creation supply contact; for replies supply as.member.","security":[{"secret":[]},{"session":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageInput"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Message"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/conversations/{id}/read":{"post":{"operationId":"markRead","security":[{"session":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Read"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OK"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/conversations/{id}/typing":{"post":{"operationId":"typing","security":[{"session":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OK"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/conversations/{id}/verifications/{vid}/confirm":{"post":{"operationId":"confirmVerification","security":[{"session":[]}],"parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"path","name":"vid","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Confirm"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Verification"}}}},"400":{"description":"invalid_input, invalid_code or invalid_attachment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"invalid_credential, invalid_identity or contact_required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"forbidden, helpdesk_only, anonymous_disabled, blocked or locked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"not_found: unknown host, resource not found or not owned","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"conflict or request_pending","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"too_large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"expected_json","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"idempotency_mismatch: key reused with different input","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"rate_limited, idempotency_limit or code_limit; retry after the indicated delay","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"internal_error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"misconfigured, mail_unavailable or conversation_upgrading","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"securitySchemes":{"socketTicket":{"type":"apiKey","in":"query","name":"ticket","description":"Single-use WebSocket ticket, valid 60 seconds."},"secret":{"type":"http","scheme":"bearer","bearerFormat":"bh_sk_…","description":"Server only; Origin must be absent."},"publishable":{"type":"http","scheme":"bearer","bearerFormat":"bh_pk_…","description":"Requires an exactly allowed Origin."},"session":{"type":"http","scheme":"bearer","bearerFormat":"bh_us_…","description":"24-hour end-user bearer. Browser origins must be allowed."}},"schemas":{"EscalateInput":{"type":"object","properties":{"reason":{"type":"string","maxLength":1000}},"required":[]},"Approval":{"type":"object","properties":{"details_hash":{"type":"string","pattern":"^[A-Za-z0-9_-]{43}$"},"id":{"type":"string"},"issue_number":{"type":"integer"},"action":{"type":"string"},"summary":{"type":"string"},"details":{"type":"object","description":"At most 4096 UTF-8 bytes as JSON.","maxProperties":20,"additionalProperties":{"type":["number","boolean","string"],"maxLength":256}},"state":{"enum":["pending","approved","rejected","expired","used"]},"requested_by":{"$ref":"#/components/schemas/Actor"},"decided_by":{"anyOf":[{"$ref":"#/components/schemas/Actor"},{"type":"null"}]},"decided_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}]},"note":{"anyOf":[{"type":"string"},{"type":"null"}]},"expires_at":{"type":"string","format":"date-time"},"created_at":{"type":"string","format":"date-time"}},"required":["details_hash","id","issue_number","action","summary","details","state","requested_by","decided_by","decided_at","note","expires_at","created_at"]},"Approvals":{"type":"array","items":{"$ref":"#/components/schemas/Approval"}},"JWKS":{"type":"object","properties":{"keys":{"type":"array","items":{"type":"object","properties":{"kid":{"type":"string"},"kty":{"const":"OKP"},"crv":{"const":"Ed25519"},"alg":{"const":"EdDSA"},"use":{"const":"sig"},"x":{"type":"string"}},"required":["kid","kty","crv","alg","use","x"]}}},"required":["keys"]},"RequestField":{"type":"object","properties":{"key":{"type":"string","pattern":"^[a-z0-9_]{1,40}$"},"label":{"type":"string"},"kind":{"enum":["text","textarea","email","url","number","select"]},"required":{"type":"boolean"},"options":{"type":"array","items":{"type":"string"}},"help":{"type":"string"},"verify":{"type":"boolean"}},"required":["key","label","kind","required"]},"RequestForm":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"fields":{"type":"array","items":{"$ref":"#/components/schemas/RequestField"}},"require_verification":{"type":"boolean"}},"required":["id","name","description","fields","require_verification"]},"Workspace":{"type":"object","properties":{"request_types":{"type":"array","items":{"$ref":"#/components/schemas/RequestForm"}},"name":{"type":"string"},"icon_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"allow_anonymous":{"type":"boolean"},"require_verified_email":{"type":"boolean"},"turnstile_site_key":{"anyOf":[{"type":"string"},{"type":"null"}]},"brand":{"type":"object","properties":{"accent":{"type":"null"}},"required":["accent"]}},"required":["request_types","name","icon_url","allow_anonymous","require_verified_email","turnstile_site_key","brand"]},"Contacts":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Contact"}},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["data","next_cursor"]},"Contact":{"allOf":[{"$ref":"#/components/schemas/EndUser"},{"type":"object","properties":{"unverified_email":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time"},"last_seen_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}]}},"required":["unverified_email","created_at","last_seen_at"]}]},"ContactInput":{"type":"object","properties":{"email":{"type":"string"},"email_verified":{"type":"boolean"},"link_existing":{"type":"boolean"},"name":{"type":"string"},"locale":{"type":"string","enum":["en","es","pt-BR","fr","de","ja","zh-CN","ko"]}},"required":[]},"ConversationPatch":{"type":"object","properties":{"status":{"enum":["open","in_progress","waiting","closed"]},"close_reason":{"anyOf":[{"enum":["completed","not_planned","duplicate"]},{"type":"null"}]},"assignee":{"anyOf":[{"oneOf":[{"type":"object","properties":{"member":{"type":"string"}},"required":["member"]},{"type":"object","properties":{"agent":{"type":"string"}},"required":["agent"]}]},{"type":"null"}]},"labels":{"type":"array","items":{"type":"string"}}},"required":[]},"VerificationInput":{"type":"object","properties":{"email":{"type":"string"}},"required":["email"]},"OK":{"type":"object","properties":{"ok":{"const":true}},"required":["ok"]},"Error":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"]}},"required":["error"]},"EndUser":{"type":"object","properties":{"id":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"anyOf":[{"type":"string","format":"email"},{"type":"null"}]},"external_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"verified_via":{"enum":["host","email",null]},"anonymous":{"type":"boolean"},"locale":{"type":"string","enum":["en","es","pt-BR","fr","de","ja","zh-CN","ko"]}},"required":["id","name","email","external_id","verified_via","anonymous","locale"]},"Session":{"type":"object","properties":{"token":{"type":"string"},"expires_at":{"type":"string","format":"date-time"},"user":{"$ref":"#/components/schemas/EndUser"}},"required":["token","expires_at","user"]},"SessionInput":{"oneOf":[{"type":"object","properties":{"user":{"type":"object","properties":{"id":{"type":"string"},"email":{"type":"string"},"email_verified":{"type":"boolean"},"link_existing":{"type":"boolean"},"name":{"type":"string"},"locale":{"type":"string","enum":["en","es","pt-BR","fr","de","ja","zh-CN","ko"]}},"required":["id"]}},"required":["user"]},{"type":"object","properties":{"identity_token":{"type":"string"}},"required":["identity_token"]},{"type":"object","properties":{"anonymous":{"const":true},"turnstile_token":{"type":"string"}},"required":["anonymous","turnstile_token"]}]},"EmailStart":{"type":"object","properties":{"email":{"type":"string"},"turnstile_token":{"type":"string"}},"required":["email","turnstile_token"]},"EmailVerify":{"type":"object","properties":{"email":{"type":"string"},"code":{"type":"string"}},"required":["email","code"]},"Confirm":{"type":"object","properties":{"code":{"type":"string"}},"required":["code"]},"Profile":{"type":"object","properties":{"name":{"type":"string"},"locale":{"type":"string","enum":["en","es","pt-BR","fr","de","ja","zh-CN","ko"]}},"required":[]},"Read":{"type":"object","properties":{"item_id":{"type":"string"}},"required":["item_id"]},"Participant":{"oneOf":[{"type":"object","properties":{"type":{"const":"user"},"id":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","id","name"]},{"type":"object","properties":{"type":{"const":"team"},"id":{"type":"string"},"name":{"type":"string"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","id","name","avatar_url"]},{"type":"object","properties":{"type":{"const":"agent"},"id":{"type":"string"},"name":{"type":"string"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","id","name","avatar_url"]}]},"Actor":{"oneOf":[{"type":"object","properties":{"type":{"const":"guest"},"id":{"type":"string"},"handle":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","id","handle","name"]},{"type":"object","properties":{"type":{"const":"member"},"id":{"type":"string"},"name":{"type":"string"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","id","name","avatar_url"]},{"type":"object","properties":{"type":{"const":"agent"},"id":{"type":"string"},"name":{"type":"string"}},"required":["type","id","name"]}]},"Verification":{"type":"object","properties":{"id":{"type":"string"},"email":{"type":"string"},"state":{"enum":["pending","verified","expired","failed"]},"requested_by":{"oneOf":[{"$ref":"#/components/schemas/Actor"},{"type":"object","properties":{"type":{"const":"team"},"id":{"type":"string"},"name":{"type":"string"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","id","name","avatar_url"]}]},"created_at":{"type":"string","format":"date-time"},"verified_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}]}},"required":["id","email","state","requested_by","created_at","verified_at"]},"Upload":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"},"size":{"type":"integer"},"url":{"type":"string"}},"required":["id","name","type","size","url"]},"MultipartFile":{"type":"object","properties":{"file":{"type":"string","format":"binary"}},"required":["file"]},"RealtimeTicket":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"expires_at":{"type":"string","format":"date-time"}},"required":["url","expires_at"]},"RealtimeEvent":{"oneOf":[{"type":"object","properties":{"type":{"const":"item.created"},"conversation_id":{"type":"string"},"item":{"$ref":"#/components/schemas/Item"}},"required":["type","conversation_id","item"]},{"type":"object","properties":{"type":{"const":"message.updated"},"conversation_id":{"type":"string"},"message":{"$ref":"#/components/schemas/Message"}},"required":["type","conversation_id","message"]},{"type":"object","properties":{"type":{"const":"conversation.updated"},"conversation":{"$ref":"#/components/schemas/Conversation"}},"required":["type","conversation"]},{"type":"object","properties":{"type":{"const":"typing"},"conversation_id":{"type":"string"},"participant":{"$ref":"#/components/schemas/Participant"}},"required":["type","conversation_id","participant"]},{"type":"object","properties":{"type":{"const":"activity"},"conversation_id":{"type":"string"},"participant":{"$ref":"#/components/schemas/Participant"},"text":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","conversation_id","participant","text"]}]},"MessageInput":{"type":"object","properties":{"body":{"type":"string","maxLength":65536},"attachments":{"type":"array","items":{"type":"string"}},"internal":{"type":"boolean"},"as":{"type":"object","properties":{"member":{"type":"string"}},"required":["member"],"description":"Required with a server key; not available to an end user."}},"required":["body"]},"ConversationInput":{"type":"object","properties":{"request_type":{"type":"string"},"fields":{"type":"object","additionalProperties":{"type":"string"}},"subject":{"type":"string","maxLength":256},"message":{"$ref":"#/components/schemas/MessageInput"},"metadata_id":{"type":"string"},"contact":{"oneOf":[{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]},{"type":"object","properties":{"external_id":{"type":"string"}},"required":["external_id"]}],"description":"Required with a server key; not available to an end user."}},"required":["message"]},"Message":{"type":"object","properties":{"held":{"type":"boolean"},"internal":{"type":"boolean"},"id":{"type":"string"},"conversation_id":{"type":"string"},"author":{"$ref":"#/components/schemas/Participant"},"body":{"type":"string"},"attachments":{"type":"array","items":{"$ref":"#/components/schemas/Upload"}},"created_at":{"type":"string","format":"date-time"},"edited_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}]}},"required":["id","conversation_id","author","body","attachments","created_at","edited_at"]},"Event":{"oneOf":[{"type":"object","properties":{"type":{"const":"escalated"}},"required":["type"]},{"type":"object","properties":{"type":{"const":"workspace_event"},"action":{"type":"string"},"data":{"type":"object"}},"required":["type","action","data"]},{"type":"object","properties":{"type":{"const":"status_changed"},"status":{"enum":["open","in_progress","waiting","closed"]},"close_reason":{"anyOf":[{"enum":["completed","not_planned","duplicate"]},{"type":"null"}]}},"required":["type","status","close_reason"]},{"type":"object","properties":{"type":{"const":"assigned"},"assignee":{"anyOf":[{"$ref":"#/components/schemas/Participant"},{"type":"null"}]}},"required":["type","assignee"]},{"type":"object","properties":{"type":{"const":"verification_requested"},"verification_id":{"type":"string"}},"required":["type","verification_id"]},{"type":"object","properties":{"type":{"const":"verified"},"verification_id":{"type":"string"}},"required":["type","verification_id"]}]},"Item":{"allOf":[{"type":"object","properties":{"internal":{"type":"boolean"},"hidden":{"type":"boolean"},"held":{"type":"boolean"}},"required":[]},{"oneOf":[{"type":"object","properties":{"kind":{"const":"message"},"id":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"message":{"$ref":"#/components/schemas/Message"}},"required":["kind","id","created_at","message"]},{"type":"object","properties":{"kind":{"const":"event"},"id":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"actor":{"anyOf":[{"$ref":"#/components/schemas/Participant"},{"type":"null"}]},"event":{"$ref":"#/components/schemas/Event"}},"required":["kind","id","created_at","actor","event"]}]}]},"Conversation":{"type":"object","properties":{"with_person":{"type":"boolean"},"request_type":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["id","name"]},{"type":"null"}]},"fields":{"type":"object","additionalProperties":{"type":"string"}},"effective_autonomy":{"enum":["suggest","approve_actions","autonomous"]},"labels":{"type":"array","items":{"type":"string"}},"contact_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"hidden":{"type":"boolean"},"created_via":{"const":"api"},"id":{"type":"string"},"number":{"type":"integer"},"subject":{"type":"string"},"status":{"enum":["open","in_progress","waiting","closed"]},"close_reason":{"anyOf":[{"enum":["completed","not_planned","duplicate"]},{"type":"null"}]},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"last_item":{"anyOf":[{"$ref":"#/components/schemas/Item"},{"type":"null"}]},"unread":{"type":"integer"},"assignee":{"anyOf":[{"$ref":"#/components/schemas/Participant"},{"type":"null"}],"description":"Workspace view only; always null for end users."},"verifications":{"type":"array","items":{"$ref":"#/components/schemas/Verification"}}},"required":["id","number","subject","request_type","fields","with_person","status","close_reason","created_at","updated_at","last_item","unread","assignee","verifications"]},"Conversations":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Conversation"}},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["data","next_cursor"]},"Items":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Item"}},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["data","next_cursor"]},"OpenAPI":{"type":"object","properties":{"openapi":{"const":"3.1.0"},"info":{"type":"object"},"paths":{"type":"object"}},"required":["openapi","info","paths"]}}}}