# Texa Desk developers > Developer documentation for Texa Desk: the Texa API (Texa AI in your own software), Texa Desk's REST APIs, webhooks, the website and app widgets, and the SDKs. ## Documentation - [Texa Desk developers](https://developers.texadesk.com/): Build Texa AI and Texa Desk into your own website, app and systems. - [Quickstart](https://developers.texadesk.com/quickstart.md): Make a sandbox key, open a conversation with Texa AI, send a message and read its reply. - [Products and how they fit](https://developers.texadesk.com/products.md): Texa Desk, Texa AI, the Texa API, the widgets, the mobile app and the Texa Relay, and which one you build on. - [Concepts](https://developers.texadesk.com/concepts.md): The words these docs use, and what each one means in Texa. - [Authentication](https://developers.texadesk.com/authentication.md): Every key and token Texa uses, where you get it, where it may live, and what it reaches. - [Errors](https://developers.texadesk.com/api-basics/errors.md): One error shape for the Texa API, what each status means, and which ones to retry. - [Rate limits](https://developers.texadesk.com/api-basics/rate-limits.md): Requests per minute per environment, the headers that show them, and what happens over the limit. - [Retries and idempotency](https://developers.texadesk.com/api-basics/idempotency.md): How to retry any request safely, so a timeout never sends a customer two replies or runs a refund twice. - [Lists and the event feed](https://developers.texadesk.com/api-basics/pagination.md): Cursor pagination, and the event feed that is the complete record of everything that happened. - [Usage and credits](https://developers.texadesk.com/api-basics/usage.md): What the Texa API counts, how it draws down your prepaid credits, and how to read this month's usage. - [Texa AI in your website and app](https://developers.texadesk.com/guides/website-and-app.md): One script tag or an app component: a support chat for visitors that works in the customer's account once they sign in. - [A WhatsApp bot in 15 minutes](https://developers.texadesk.com/guides/whatsapp-bot.md): Your server already talks to Meta's Cloud API; Texa AI answers your customers through it. - [Voice in your app](https://developers.texadesk.com/guides/voice.md): Customers talk to Texa AI from your app or website over a WebSocket, with a single-use token. - [Handing over to people](https://developers.texadesk.com/guides/handover.md): When Texa AI hands a conversation to people, and how your team or your own system answers. - [The sandbox](https://developers.texadesk.com/guides/sandbox.md): Build against test keys: fixtures answer actions, faults show failure, nothing reaches a real customer. - [Customers and memory](https://developers.texadesk.com/guides/customers.md): How Texa AI remembers a customer by your reference, and how to read, merge or forget what it knows. - [Knowledge](https://developers.texadesk.com/guides/knowledge.md): Add documents to what Texa AI answers from, through the API, with a person's approval. - [Voice notes, photos and documents](https://developers.texadesk.com/guides/media.md): Send customers' voice notes, photos, PDFs and videos to Texa AI, and get voice-note replies back. - [Transcripts, quality and reports](https://developers.texadesk.com/guides/reports.md): Read a conversation's transcript and everything that happened in it, its quality scores, and your support reports. - [Actions](https://developers.texadesk.com/guides/actions.md): How Texa AI asks your systems for something, the three ways an action runs, and how to answer. - [Ready-made connectors](https://developers.texadesk.com/guides/connectors.md): Connect Paystack, Flutterwave, Monnify, M-Pesa, Shopify, WooCommerce, HubSpot, Salesforce or Zoho CRM with your keys, no code. - [Connect your own API](https://developers.texadesk.com/guides/your-api.md): Texa calls your HTTP API directly. Import an OpenAPI file or a documentation page, choose how Texa signs in, and map the answer. - [Run actions on your server](https://developers.texadesk.com/guides/action-server.md): Texa sends each action request to your server, signed, over a webhook or a socket your server opens. Your credentials never leave you. - [MCP](https://developers.texadesk.com/guides/mcp.md): Texa as an MCP server for your team's AI tools, and your MCP server as a source of actions. - [The Texa Relay](https://developers.texadesk.com/guides/relay.md): For banks and others whose data may not leave their network. The Relay runs inside it, connects out, and runs only the read-only lookups your administrator signed. - [Texa API webhooks](https://developers.texadesk.com/guides/webhooks.md): Signed events for every conversation, reply, action, handover and call, retried for about a day. - [Texa Desk webhooks](https://developers.texadesk.com/guides/desk-webhooks.md): Hear about every conversation, message, contact and ticket in Texa Desk, signed, as it happens. - [Live chat on your website](https://developers.texadesk.com/desk/live-chat.md): The Texa Desk chat bubble on any website: install, settings, who the visitor is, identity validation, events. - [WordPress plugin](https://developers.texadesk.com/desk/wordpress.md): Add Texa Desk's live chat to a WordPress site with a plugin, with signed-in WordPress users chatting as themselves. - [Bring your own channel](https://developers.texadesk.com/desk/api-channel.md): An API inbox connects any channel Texa Desk doesn't have (your app's chat, a kiosk, a partner's system) so your team and Texa AI answer it like any other. - [Agent bots](https://developers.texadesk.com/desk/agent-bots.md): Your own bot in Texa Desk: it gets each conversation's events, answers through the API, and hands over to your team. - [Dashboard apps](https://developers.texadesk.com/desk/dashboard-apps.md): Show your own page beside each conversation in Texa Desk, with the conversation, the contact and the person using it. - [Tickets](https://developers.texadesk.com/desk/tickets.md): A customer's request tracked beyond one conversation, with a reference, a state, a promise and every channel's messages. How tickets work, and the API. - [Customer portal](https://developers.texadesk.com/desk/customer-portal.md): Let customers follow, answer and make requests, in your help centre's My requests or inside your own app. - [Texa AI inside your helpdesk](https://developers.texadesk.com/desk/other-helpdesks.md): Keep Zendesk, Freshdesk, Salesforce Service Cloud, Intercom, HubSpot or Zoho Desk, and let Texa AI answer there. - [Single sign-on](https://developers.texadesk.com/desk/sso.md): Your team signs in to Texa Desk with Microsoft Entra ID, Google Workspace or any SAML 2.0 identity provider, optionally enforced. - [The Texa Desk app](https://developers.texadesk.com/desk/mobile-app.md): Texa Desk on iPhone and Android for your team, and how to put Texa AI in your own customers' app. ## API reference - [API reference](https://developers.texadesk.com/api-reference/introduction.md): Every route of Texa's APIs, with its parameters, its answers and examples in cURL, Python and JavaScript. - [Texa API](https://developers.texadesk.com/api-reference/texa-api.md): Texa AI as a service. Open conversations from your app, website or backend, send customers' messages and get Texa AI's replies as events. - [List conversations, newest first](https://developers.texadesk.com/api-reference/texa-api/conversations/list-conversations-newest-first): Newest first, by cursor. The cursor is the last conversation's id. - [Open a conversation](https://developers.texadesk.com/api-reference/texa-api/conversations/open-a-conversation): Connected actions in the answer run by themselves and are marked "handled_by": "texa" . Takes an Idempotency-Key header. - [Get a conversation](https://developers.texadesk.com/api-reference/texa-api/conversations/get-a-conversation): GET /v1/conversations/{conversation_id} - [Give the result of an action you ran](https://developers.texadesk.com/api-reference/texa-api/conversations/give-the-result-of-an-action-you-ran): Connected actions in the answer run by themselves and are marked "handled_by": "texa" . Takes an Idempotency-Key header. - [A suggested reply for the person holding the conversation](https://developers.texadesk.com/api-reference/texa-api/conversations/a-suggested-reply-for-the-person-holding-the-conversation): A suggested reply and action for the person holding it. Screened by the same guards and gate, labelled assist , never sent or run by Texa AI. Takes an Idempotency-Key header. - [Close the conversation](https://developers.texadesk.com/api-reference/texa-api/conversations/close-the-conversation): Takes an Idempotency-Key header. - [Hand the conversation back to Texa AI](https://developers.texadesk.com/api-reference/texa-api/conversations/hand-the-conversation-back-to-texa-ai): Connected actions in the answer run by themselves and are marked "handled_by": "texa" . Takes an Idempotency-Key header. - [Hand the conversation to people](https://developers.texadesk.com/api-reference/texa-api/conversations/hand-the-conversation-to-people): Takes an Idempotency-Key header. - [Record what a person said while they hold the conversation](https://developers.texadesk.com/api-reference/texa-api/conversations/record-what-a-person-said-while-they-hold-the-conversation): Takes an Idempotency-Key header. - [Send the customer's message; the reply comes back in events](https://developers.texadesk.com/api-reference/texa-api/conversations/send-the-customer-s-message-the-reply-comes-back-in-events): Connected actions in the answer run by themselves and are marked "handled_by": "texa" . Takes an Idempotency-Key header. - [A single-use token for your app to open a voice session](https://developers.texadesk.com/api-reference/texa-api/voice/a-single-use-token-for-your-app-to-open-a-voice-session): url is where your app opens the voice session, with the token , once, before expires_at . Never put a key in the app. Takes an Idempotency-Key header. - [Everything about a conversation: transcript, actions, handovers](https://developers.texadesk.com/api-reference/texa-api/records/everything-about-a-conversation-transcript-actions-handovers): Everything, in one read: the transcript, what was established and quoted, every guard evaluation and - for a support conversation - every action step, which is the audit answer to "why did it do that" - [Quality scores](https://developers.texadesk.com/api-reference/texa-api/records/quality-scores): GET /v1/conversations/{conversation_id}/quality - [The transcript](https://developers.texadesk.com/api-reference/texa-api/records/the-transcript): GET /v1/conversations/{conversation_id}/transcript - [What Texa AI remembers about a customer](https://developers.texadesk.com/api-reference/texa-api/customers/what-texa-ai-remembers-about-a-customer): What Texa AI remembers about one customer - each line with when and from which conversation - and their conversations with this account. - [Delete a customer's memory and conversations](https://developers.texadesk.com/api-reference/texa-api/customers/delete-a-customer-s-memory-and-conversations): Delete one customer: their memory, their conversations and their record (§6.10, §13). Cannot be undone; a row records that it happened. Takes an Idempotency-Key header. - [Two references, one person: merge them](https://developers.texadesk.com/api-reference/texa-api/customers/two-references-one-person-merge-them): Two references, one person: customer_ref 's memory and conversations move to into , and customer_ref is no more. Merging the same pair again answers the first merge. Takes an Idempotency-Key header. - [Every event, in order, after a cursor](https://developers.texadesk.com/api-reference/texa-api/events/every-event-in-order-after-a-cursor): GET /v1/events - [Upload a voice note, photo, document or video](https://developers.texadesk.com/api-reference/texa-api/media/upload-a-voice-note-photo-document-or-video): Sizes: audio 16 MB, image 10 MB, document 20 MB, video 64 MB (settings media.max_mb_*). A voice note is heard up to 3 minutes (media.audio_max_s). Takes an Idempotency-Key header. - [A media item and what was understood from it](https://developers.texadesk.com/api-reference/texa-api/media/a-media-item-and-what-was-understood-from-it): GET /v1/media/{media_id} - [The media item's bytes](https://developers.texadesk.com/api-reference/texa-api/media/the-media-item-s-bytes): GET /v1/media/{media_id}/content - [The agent your customers meet](https://developers.texadesk.com/api-reference/texa-api/agent/the-agent-your-customers-meet): GET /v1/agent - [Whether Texa AI is paused](https://developers.texadesk.com/api-reference/texa-api/agent/whether-texa-ai-is-paused): GET /v1/kill-switch - [The actions Texa AI can ask for](https://developers.texadesk.com/api-reference/texa-api/actions/the-actions-texa-ai-can-ask-for): GET /v1/actions - [One action](https://developers.texadesk.com/api-reference/texa-api/actions/one-action): GET /v1/actions/{name} - [Knowledge documents and their approval](https://developers.texadesk.com/api-reference/texa-api/knowledge/knowledge-documents-and-their-approval): GET /v1/knowledge/documents - [Add a document; it is used once a person approves it in Texa Desk](https://developers.texadesk.com/api-reference/texa-api/knowledge/add-a-document-it-is-used-once-a-person-approves-it-in-texa-desk): Takes an Idempotency-Key header. - [Quality report](https://developers.texadesk.com/api-reference/texa-api/reports/quality-report): GET /v1/reports/quality - [Support report](https://developers.texadesk.com/api-reference/texa-api/reports/support-report): GET /v1/reports/support - [Sandbox fixtures](https://developers.texadesk.com/api-reference/texa-api/sandbox/sandbox-fixtures): Sandbox only: use a test key ( texa_test_... ). - [Set what an action answers in the sandbox](https://developers.texadesk.com/api-reference/texa-api/sandbox/set-what-an-action-answers-in-the-sandbox): Sandbox only: use a test key ( texa_test_... ). - [Remove a sandbox fixture](https://developers.texadesk.com/api-reference/texa-api/sandbox/remove-a-sandbox-fixture): Sandbox only: use a test key ( texa_test_... ). - [A widget session for one customer: its token is for a web page or an app](https://developers.texadesk.com/api-reference/texa-api/widgets/a-widget-session-for-one-customer-its-token-is-for-a-web-page-or-an-app): A session for one of your customers, for a widget in a web page or an app. Give its token to the page or app: it reaches only the /v1/widget/... routes, for this customer, until expires_at . Make it o - [Open the session customer's conversation (web or voice)](https://developers.texadesk.com/api-reference/texa-api/widgets/open-the-session-customer-s-conversation-web-or-voice): Opens a conversation for the session's customer. - [A screen action's answer, from the customer's page or app](https://developers.texadesk.com/api-reference/texa-api/widgets/a-screen-action-s-answer-from-the-customer-s-page-or-app): Your page or app ran a screen action Texa AI asked for (from requests on the lines): its outputs, or why it failed. Within 30 seconds; once. The answer is what Texa AI says next. - [A spreadsheet Texa AI sent the customer, as CSV](https://developers.texadesk.com/api-reference/texa-api/widgets/a-spreadsheet-texa-ai-sent-the-customer-as-csv): A spreadsheet Texa AI sent the customer (a card of kind sheet ), as CSV. - [A photo, PDF or recording from the customer](https://developers.texadesk.com/api-reference/texa-api/widgets/a-photo-pdf-or-recording-from-the-customer): A photo, PDF, Word document, recording or short video from the customer (multipart: file , and optional text and message_id ), 10 MB at most, checked by its first bytes. - [What was said since a line: late replies, people's answers](https://developers.texadesk.com/api-reference/texa-api/widgets/what-was-said-since-a-line-late-replies-people-s-answers): What was said after line after : replies that came later and people's answers; documents Texa AI sent after card after_card ; screen actions this page should run now ( requests ). Poll it every few se - [The customer's message, from the widget](https://developers.texadesk.com/api-reference/texa-api/widgets/the-customer-s-message-from-the-widget): The customer's message. The answer shows only what a customer may see: replies, a handover, a close. - [The visitor signed in: the chat carries on as the customer](https://developers.texadesk.com/api-reference/texa-api/widgets/the-visitor-signed-in-the-chat-carries-on-as-the-customer): Call with the session your server made once the visitor signed in, and the visitor's token: the chat carries on as the customer. moved says whether it carries on in a new conversation. - [What the customer is typing, masked, for the team](https://developers.texadesk.com/api-reference/texa-api/widgets/what-the-customer-is-typing-masked-for-the-team): What the customer is typing, for the people who see the chat in Texa Desk: mask it first (digits and anything after pin, otp, code or password, as the guide shows), at most one every 300 ms; an empty - [A single-use token for the widget's voice line](https://developers.texadesk.com/api-reference/texa-api/widgets/a-single-use-token-for-the-widget-s-voice-line): A single-use token for the widget's voice line (a voice conversation). - [A signed-out visitor's session, from the account's site key](https://developers.texadesk.com/api-reference/texa-api/widgets/a-signed-out-visitor-s-session-from-the-account-s-site-key): A session for a visitor who hasn't signed in, from the account's site key (Texa Desk, Developers, Website and app). Live, only from the account's allowed websites; 20 an hour per address. A visitor is - [The account and key this request uses](https://developers.texadesk.com/api-reference/texa-api/account/the-account-and-key-this-request-uses): The account and key this request uses, and its rate limit. - [Usage this month, per meter](https://developers.texadesk.com/api-reference/texa-api/account/usage-this-month-per-meter): What has been counted this month, per meter: what draws down the account's credits. Test-key requests are counted as sandbox_requests . - [Texa Desk Application API](https://developers.texadesk.com/api-reference/desk.md): The helpdesk's own API. Conversations, messages, contacts, inboxes, agents, teams, labels, reports and settings, as a person in your team. - [List all AgentBots](https://developers.texadesk.com/api-reference/desk/account-agent-bots/list-all-agentbots): List all agent bots available for the current account - [Create an Agent Bot](https://developers.texadesk.com/api-reference/desk/account-agent-bots/create-an-agent-bot): Create an agent bot in the account - [Get an agent bot details](https://developers.texadesk.com/api-reference/desk/account-agent-bots/get-an-agent-bot-details): Get the details of an agent bot in the account - [Update an agent bot](https://developers.texadesk.com/api-reference/desk/account-agent-bots/update-an-agent-bot): Update an agent bot's attributes - [Delete an AgentBot](https://developers.texadesk.com/api-reference/desk/account-agent-bots/delete-an-agentbot): Delete an AgentBot from the account - [List Agents in Account](https://developers.texadesk.com/api-reference/desk/agents/list-agents-in-account): Get Details of Agents in an Account - [Add a New Agent](https://developers.texadesk.com/api-reference/desk/agents/add-a-new-agent): Add a new Agent to Account - [Update Agent in Account](https://developers.texadesk.com/api-reference/desk/agents/update-agent-in-account): Update an Agent in Account - [Remove an Agent from Account](https://developers.texadesk.com/api-reference/desk/agents/remove-an-agent-from-account): DELETE /api/v1/accounts/{account_id}/agents/{id} - [List campaigns](https://developers.texadesk.com/api-reference/desk/campaigns/list-campaigns): List all campaigns in the account. The response is an unpaginated array. Requires an account administrator and API access enabled for the account. - [Create a campaign](https://developers.texadesk.com/api-reference/desk/campaigns/create-a-campaign): Create a campaign. For a supported messaging inbox, provide scheduled_at to schedule a one-off campaign; omitting it makes the campaign eligible for the next scheduler run. Website campaigns use trigg - [Get a campaign](https://developers.texadesk.com/api-reference/desk/campaigns/get-a-campaign): Retrieve a campaign using its account-scoped ID. Requires an account administrator and API access enabled for the account. - [Update a campaign](https://developers.texadesk.com/api-reference/desk/campaigns/update-a-campaign): Update campaign fields, including scheduled_at to reschedule an active one-off campaign. Completed campaigns cannot be updated. Requires an account administrator and API access enabled for the account - [Delete a campaign](https://developers.texadesk.com/api-reference/desk/campaigns/delete-a-campaign): Delete a campaign from the account. Requires an account administrator and API access enabled for the account. - [List all Canned Responses in an Account](https://developers.texadesk.com/api-reference/desk/canned-responses/list-all-canned-responses-in-an-account): Get Details of Canned Responses in an Account - [Add a New Canned Response](https://developers.texadesk.com/api-reference/desk/canned-responses/add-a-new-canned-response): Add a new Canned Response to Account - [Update Canned Response in Account](https://developers.texadesk.com/api-reference/desk/canned-responses/update-canned-response-in-account): Update a Canned Response in Account - [Remove a Canned Response from Account](https://developers.texadesk.com/api-reference/desk/canned-responses/remove-a-canned-response-from-account): DELETE /api/v1/accounts/{account_id}/canned_responses/{id} - [List Contacts](https://developers.texadesk.com/api-reference/desk/contacts/list-contacts): Listing all the resolved contacts with pagination (Page size = 15). Resolved contacts are the ones with a value for identifier, email or phone number - [Create Contact](https://developers.texadesk.com/api-reference/desk/contacts/create-contact): Create a new Contact - [Show Contact](https://developers.texadesk.com/api-reference/desk/contacts/show-contact): Get a contact belonging to the account using ID - [Update Contact](https://developers.texadesk.com/api-reference/desk/contacts/update-contact): Update a contact belonging to the account using ID - [Delete Contact](https://developers.texadesk.com/api-reference/desk/contacts/delete-contact): Delete a contact belonging to the account using ID - [Contact Conversations](https://developers.texadesk.com/api-reference/desk/contacts/contact-conversations): Get conversations associated with that contact - [Search Contacts](https://developers.texadesk.com/api-reference/desk/contacts/search-contacts): Search the resolved contacts using a search key, currently supports email search (Page size = 15). Resolved contacts are the ones with a value for identifier, email or phone number - [Contact Filter](https://developers.texadesk.com/api-reference/desk/contacts/contact-filter): Filter contacts with custom filter options and pagination - [Create contact inbox](https://developers.texadesk.com/api-reference/desk/contacts/create-contact-inbox): Create a contact inbox record for an inbox - [Get Contactable Inboxes](https://developers.texadesk.com/api-reference/desk/contacts/get-contactable-inboxes): Get List of contactable Inboxes - [Merge Contacts](https://developers.texadesk.com/api-reference/desk/contacts/merge-contacts): Merge two contacts into a single contact. The base contact remains and receives all data from the mergee contact. After the merge, the mergee contact is permanently deleted. This action is irreversibl - [List Labels](https://developers.texadesk.com/api-reference/desk/contact-labels/list-labels): Lists all the labels of a contact - [Add Labels](https://developers.texadesk.com/api-reference/desk/contact-labels/add-labels): Add labels to a contact. Note that this API would overwrite the existing list of labels associated to the conversation. - [Assign Conversation](https://developers.texadesk.com/api-reference/desk/conversation-assignments/assign-conversation): Assign a conversation to an agent or a team - [Get Conversation Counts](https://developers.texadesk.com/api-reference/desk/conversations/get-conversation-counts): Get open, unassigned and all Conversation counts - [Conversations List](https://developers.texadesk.com/api-reference/desk/conversations/conversations-list): List all the conversations with pagination - [Create New Conversation](https://developers.texadesk.com/api-reference/desk/conversations/create-new-conversation): Creating a conversation in texa-desk requires a source id. Learn more about source_id: https://www.texa-desk.com/hc/user-guide/articles/1677839703-how-to-create-an-api-channel-inbox#send-messages-to-t - [Conversations Filter](https://developers.texadesk.com/api-reference/desk/conversations/conversations-filter): Filter conversations with custom filter options and pagination - [Conversation Details](https://developers.texadesk.com/api-reference/desk/conversations/conversation-details): Get all details regarding a conversation with all messages in the conversation - [Update Conversation](https://developers.texadesk.com/api-reference/desk/conversations/update-conversation): Update Conversation Attributes - [Toggle Status](https://developers.texadesk.com/api-reference/desk/conversations/toggle-status): Toggle the status of a conversation. Pass status to explicitly set the conversation state. Use snoozed along with snoozed_until to snooze a conversation until a specific time. If snoozed_until is omit - [Toggle Priority](https://developers.texadesk.com/api-reference/desk/conversations/toggle-priority): Toggles the priority of conversation - [Toggle Typing Status](https://developers.texadesk.com/api-reference/desk/conversations/toggle-typing-status): Toggles the typing status for a conversation. - [Update Custom Attributes](https://developers.texadesk.com/api-reference/desk/conversations/update-custom-attributes): Updates the custom attributes of a conversation - [Destroy Custom Attributes](https://developers.texadesk.com/api-reference/desk/conversations/destroy-custom-attributes): Removes the given custom attribute keys from a conversation - [List Labels](https://developers.texadesk.com/api-reference/desk/conversations/list-labels): Lists all the labels of a conversation - [Add Labels](https://developers.texadesk.com/api-reference/desk/conversations/add-labels): Add labels to a conversation. Note that this API would overwrite the existing list of labels associated to the conversation. - [Conversation Reporting Events](https://developers.texadesk.com/api-reference/desk/conversations/conversation-reporting-events): Get reporting events for a specific conversation. This endpoint returns events such as first response time, resolution time, and other metrics for the conversation, sorted by creation time in ascendin - [List all custom attributes in an account](https://developers.texadesk.com/api-reference/desk/custom-attributes/list-all-custom-attributes-in-an-account): Get details of custom attributes in an Account - [Add a new custom attribute](https://developers.texadesk.com/api-reference/desk/custom-attributes/add-a-new-custom-attribute): Add a new custom attribute to account - [Get a custom attribute details](https://developers.texadesk.com/api-reference/desk/custom-attributes/get-a-custom-attribute-details): Get the details of a custom attribute in the account - [Update custom attribute in Account](https://developers.texadesk.com/api-reference/desk/custom-attributes/update-custom-attribute-in-account): Update a custom attribute in account - [Remove a custom attribute from account](https://developers.texadesk.com/api-reference/desk/custom-attributes/remove-a-custom-attribute-from-account): DELETE /api/v1/accounts/{account_id}/custom_attribute_definitions/{id} - [List all custom filters](https://developers.texadesk.com/api-reference/desk/custom-filters/list-all-custom-filters): List all custom filters in a category of a user - [Create a custom filter](https://developers.texadesk.com/api-reference/desk/custom-filters/create-a-custom-filter): Create a custom filter in the account - [Get a custom filter details](https://developers.texadesk.com/api-reference/desk/custom-filters/get-a-custom-filter-details): Get the details of a custom filter in the account - [Update a custom filter](https://developers.texadesk.com/api-reference/desk/custom-filters/update-a-custom-filter): Update a custom filter's attributes - [Delete a custom filter](https://developers.texadesk.com/api-reference/desk/custom-filters/delete-a-custom-filter): Delete a custom filter from the account - [Get account branded email layout](https://developers.texadesk.com/api-reference/desk/inboxes/get-account-branded-email-layout): Get the account-scoped Liquid HTML layout used as the fallback for branded email replies. - [Update account branded email layout](https://developers.texadesk.com/api-reference/desk/inboxes/update-account-branded-email-layout): Update or clear the account-scoped Liquid HTML layout used as the fallback for branded email replies. - [List all inboxes](https://developers.texadesk.com/api-reference/desk/inboxes/list-all-inboxes): List all inboxes available in the current account - [Create an inbox](https://developers.texadesk.com/api-reference/desk/inboxes/create-an-inbox): You can create more than one website inbox in each account - [Get an inbox](https://developers.texadesk.com/api-reference/desk/inboxes/get-an-inbox): Get an inbox available in the current account - [Update Inbox](https://developers.texadesk.com/api-reference/desk/inboxes/update-inbox): Update an existing inbox - [List WhatsApp message templates](https://developers.texadesk.com/api-reference/desk/inboxes/list-whatsapp-message-templates): List the cached message templates available for a native or Twilio WhatsApp inbox - [Show Inbox Agent Bot](https://developers.texadesk.com/api-reference/desk/inboxes/show-inbox-agent-bot): See if an agent bot is associated to the Inbox - [Add or remove agent bot](https://developers.texadesk.com/api-reference/desk/inboxes/add-or-remove-agent-bot): To add an agent bot pass agent_bot id, to remove agent bot from an inbox pass null - [List Agents in Inbox](https://developers.texadesk.com/api-reference/desk/inboxes/list-agents-in-inbox): Get Details of Agents in an Inbox - [Add a New Agent](https://developers.texadesk.com/api-reference/desk/inboxes/add-a-new-agent): Add a new Agent to Inbox - [Update Agents in Inbox](https://developers.texadesk.com/api-reference/desk/inboxes/update-agents-in-inbox): All agents except the one passed in params will be removed - [Remove an Agent from Inbox](https://developers.texadesk.com/api-reference/desk/inboxes/remove-an-agent-from-inbox): DELETE /api/v1/accounts/{account_id}/inbox_members - [List all the Integrations](https://developers.texadesk.com/api-reference/desk/integrations/list-all-the-integrations): Get the details of all Integrations available for the account - [Create an integration hook](https://developers.texadesk.com/api-reference/desk/integrations/create-an-integration-hook): POST /api/v1/accounts/{account_id}/integrations/hooks - [Update an Integration Hook](https://developers.texadesk.com/api-reference/desk/integrations/update-an-integration-hook): PATCH /api/v1/accounts/{account_id}/integrations/hooks/{hook_id} - [Delete an Integration Hook](https://developers.texadesk.com/api-reference/desk/integrations/delete-an-integration-hook): DELETE /api/v1/accounts/{account_id}/integrations/hooks/{hook_id} - [List all labels](https://developers.texadesk.com/api-reference/desk/labels/list-all-labels): List all labels available in the current account - [Create a label](https://developers.texadesk.com/api-reference/desk/labels/create-a-label): Create a label in the account - [Get a label](https://developers.texadesk.com/api-reference/desk/labels/get-a-label): Get the details of a label in the account - [Update a label](https://developers.texadesk.com/api-reference/desk/labels/update-a-label): Update a label's attributes - [Delete a label](https://developers.texadesk.com/api-reference/desk/labels/delete-a-label): Delete a label from the account - [Get messages](https://developers.texadesk.com/api-reference/desk/messages/get-messages): List all messages of a conversation - [Create New Message](https://developers.texadesk.com/api-reference/desk/messages/create-new-message): Create a new message in the conversation. Use application/json for text messages and multipart/form-data when the message includes file attachments. Multipart attachment request Send files with the at - [Update message status](https://developers.texadesk.com/api-reference/desk/messages/update-message-status): Updates the delivery status of a single message. Available only for messages in API channel inboxes, where your own system is responsible for delivering messages and reporting what happened. Use this - [Delete a message](https://developers.texadesk.com/api-reference/desk/messages/delete-a-message): Delete a message and it's attachments from the conversation. - [Fetch user profile](https://developers.texadesk.com/api-reference/desk/profile/fetch-user-profile): Get the user profile details - [Update user profile](https://developers.texadesk.com/api-reference/desk/profile/update-user-profile): Update the user profile details - [Account Reporting Events](https://developers.texadesk.com/api-reference/desk/reports/account-reporting-events): Get paginated reporting events for the account. This endpoint returns reporting events such as first response time, resolution time, and other metrics. Only administrators can access this endpoint. Re - [Get Account reports](https://developers.texadesk.com/api-reference/desk/reports/get-account-reports): Get Account reports for a specific type, metric and date range - [Get Account reports summary](https://developers.texadesk.com/api-reference/desk/reports/get-account-reports-summary): Get Account reports summary for a specific type and date range - [Account Conversation Metrics](https://developers.texadesk.com/api-reference/desk/reports/account-conversation-metrics): Get conversation metrics for Account - [Agent Conversation Metrics](https://developers.texadesk.com/api-reference/desk/reports/agent-conversation-metrics): Get conversation metrics for Agent - [Get conversation statistics grouped by channel type](https://developers.texadesk.com/api-reference/desk/reports/get-conversation-statistics-grouped-by-channel-type): Get conversation counts grouped by channel type and status for a given date range. Returns statistics for each channel type including open, resolved, pending, snoozed, and total conversation counts. N - [Get conversation statistics grouped by inbox](https://developers.texadesk.com/api-reference/desk/reports/get-conversation-statistics-grouped-by-inbox): Get conversation statistics grouped by inbox for a given date range. Returns metrics for each inbox including conversation counts, resolution counts, average first response time, average resolution ti - [Get conversation statistics grouped by agent](https://developers.texadesk.com/api-reference/desk/reports/get-conversation-statistics-grouped-by-agent): Get conversation statistics grouped by agent for a given date range. Returns metrics for each agent including conversation counts, resolution counts, average first response time, average resolution ti - [Get conversation statistics grouped by team](https://developers.texadesk.com/api-reference/desk/reports/get-conversation-statistics-grouped-by-team): Get conversation statistics grouped by team for a given date range. Returns metrics for each team including conversation counts, resolution counts, average first response time, average resolution time - [Get first response time distribution by channel](https://developers.texadesk.com/api-reference/desk/reports/get-first-response-time-distribution-by-channel): Get the distribution of first response times grouped by channel type. Returns conversation counts in different time buckets (0-1h, 1-4h, 4-8h, 8-24h, 24h+) for each channel type. Note: This API endpoi - [Get inbox-label matrix report](https://developers.texadesk.com/api-reference/desk/reports/get-inbox-label-matrix-report): Get a matrix showing the count of conversations for each inbox-label combination. Returns a list of inboxes, labels, and a 2D matrix where each cell contains the count of conversations in a specific i - [Get outgoing messages count grouped by entity](https://developers.texadesk.com/api-reference/desk/reports/get-outgoing-messages-count-grouped-by-entity): Get the count of outgoing messages grouped by a specified entity (agent, team, inbox, or label). When grouped by agent, messages sent by bots (AgentBot, Texa AI::Assistant) are excluded. Note: This AP - [List all teams](https://developers.texadesk.com/api-reference/desk/teams/list-all-teams): List all teams available in the current account - [Create a team](https://developers.texadesk.com/api-reference/desk/teams/create-a-team): Create a team in the account - [Get a team details](https://developers.texadesk.com/api-reference/desk/teams/get-a-team-details): Get the details of a team in the account - [Update a team](https://developers.texadesk.com/api-reference/desk/teams/update-a-team): Update a team's attributes - [Delete a team](https://developers.texadesk.com/api-reference/desk/teams/delete-a-team): Delete a team from the account - [List Agents in Team](https://developers.texadesk.com/api-reference/desk/teams/list-agents-in-team): Get Details of Agents in an Team - [Add a New Agent](https://developers.texadesk.com/api-reference/desk/teams/add-a-new-agent): Add a new Agent to Team - [Update Agents in Team](https://developers.texadesk.com/api-reference/desk/teams/update-agents-in-team): All agents except the one passed in params will be removed - [Remove an Agent from Team](https://developers.texadesk.com/api-reference/desk/teams/remove-an-agent-from-team): DELETE /api/v1/accounts/{account_id}/teams/{team_id}/team_members - [List all webhooks](https://developers.texadesk.com/api-reference/desk/webhooks/list-all-webhooks): List all webhooks in the account - [Add a webhook](https://developers.texadesk.com/api-reference/desk/webhooks/add-a-webhook): Add a webhook subscription to the account - [Update a webhook object](https://developers.texadesk.com/api-reference/desk/webhooks/update-a-webhook-object): Update a webhook object in the account - [Delete a webhook](https://developers.texadesk.com/api-reference/desk/webhooks/delete-a-webhook): Delete a webhook from the account - [List all automation rules in an account](https://developers.texadesk.com/api-reference/desk/automation-rule/list-all-automation-rules-in-an-account): Get details of automation rules in an Account - [Add a new automation rule](https://developers.texadesk.com/api-reference/desk/automation-rule/add-a-new-automation-rule): Add a new automation rule to account - [Get a automation rule details](https://developers.texadesk.com/api-reference/desk/automation-rule/get-a-automation-rule-details): Get the details of a automation rule in the account - [Update automation rule in Account](https://developers.texadesk.com/api-reference/desk/automation-rule/update-automation-rule-in-account): Update a automation rule in account - [Remove a automation rule from account](https://developers.texadesk.com/api-reference/desk/automation-rule/remove-a-automation-rule-from-account): DELETE /api/v1/accounts/{account_id}/automation_rules/{id} - [List all portals in an account](https://developers.texadesk.com/api-reference/desk/help-center/list-all-portals-in-an-account): Get details of portals in an Account - [Add a new portal](https://developers.texadesk.com/api-reference/desk/help-center/add-a-new-portal): Add a new portal to account - [Update a portal](https://developers.texadesk.com/api-reference/desk/help-center/update-a-portal): Update a portal to account - [Add a new category](https://developers.texadesk.com/api-reference/desk/help-center/add-a-new-category): Add a new category to portal - [Add a new article](https://developers.texadesk.com/api-reference/desk/help-center/add-a-new-article): Add a new article to portal - [Get account details](https://developers.texadesk.com/api-reference/desk/account/get-account-details): Get the details of the current account - [Update account](https://developers.texadesk.com/api-reference/desk/account/update-account): Update account details, settings, and custom attributes - [List Audit Logs in Account](https://developers.texadesk.com/api-reference/desk/audit-logs/list-audit-logs-in-account): Get Details of Audit Log entries for an Account. This endpoint is only available in Enterprise editions and requires the audit_logs feature to be enabled. - [Tickets API](https://developers.texadesk.com/api-reference/desk-texa.md): Tickets, their types, states, tasks, saved views and reports, on the Texa Desk API. - [List tickets](https://developers.texadesk.com/api-reference/desk-texa/tickets/list-tickets): The tickets the person sees (through one of their conversations), 25 a page by default. - [Make a ticket](https://developers.texadesk.com/api-reference/desk-texa/tickets/make-a-ticket): From a conversation ( conversation_id , its display id) or for a contact. With no conversation, say how the request came in ( channel ). Needs conversation_update . kind: tracker makes a tracker inste - [Get a ticket](https://developers.texadesk.com/api-reference/desk-texa/tickets/get-a-ticket): 404 when the person sees none of its conversations. A merged reference opens the ticket it joined. - [Change a ticket](https://developers.texadesk.com/api-reference/desk-texa/tickets/change-a-ticket): Giving it a person or a team also needs conversation_assign ; a person who sees none of its conversations is refused. - [Move a ticket to a state](https://developers.texadesk.com/api-reference/desk-texa/tickets/move-a-ticket-to-a-state): Into a resolved state, the conversations the person sees are resolved too (unless resolve_conversations is false); meta.left_open counts those outside their view. The type's required fields must be fi - [Extend the promise](https://developers.texadesk.com/api-reference/desk-texa/tickets/extend-the-promise): A later date for the promise, with a reason; the customer is told. Refused once resolved, after the promise has passed, with no extension left, or beyond the type's limit. - [Write the English version](https://developers.texadesk.com/api-reference/desk-texa/tickets/write-the-english-version): For a complaint made in Pidgin, Hausa, Yoruba, Igbo, Twi, Swahili or French: Texa AI writes the title, description and the customer's messages in English for the complaints register, in the ticket's s - [Export tickets as CSV](https://developers.texadesk.com/api-reference/desk-texa/tickets/export-tickets-as-csv): The same filters as the list; at most 10,000 rows, the header in the account's language. Needs conversation_export . - [Change many tickets](https://developers.texadesk.com/api-reference/desk-texa/tickets/change-many-tickets): Each ticket is changed as one change would be; one refused doesn't stop the others. - [Add a conversation to a ticket](https://developers.texadesk.com/api-reference/desk-texa/tickets/add-a-conversation-to-a-ticket): POST /api/v1/accounts/{account_id}/tickets/{number}/conversations - [Take a conversation off a ticket](https://developers.texadesk.com/api-reference/desk-texa/tickets/take-a-conversation-off-a-ticket): DELETE /api/v1/accounts/{account_id}/tickets/{number}/conversations/{conversation_id} - [Merge into another ticket](https://developers.texadesk.com/api-reference/desk-texa/ticket-relations/merge-into-another-ticket): Refused across customers, for a tracker, or for a merged ticket. Needs ticket_merge . - [Undo a merge](https://developers.texadesk.com/api-reference/desk-texa/ticket-relations/undo-a-merge): POST /api/v1/accounts/{account_id}/tickets/{number}/unmerge - [Split a conversation into a new ticket](https://developers.texadesk.com/api-reference/desk-texa/ticket-relations/split-a-conversation-into-a-new-ticket): POST /api/v1/accounts/{account_id}/tickets/{number}/split - [Link two tickets](https://developers.texadesk.com/api-reference/desk-texa/ticket-relations/link-two-tickets): A tracker's number puts the ticket on that tracker. - [Unlink two tickets](https://developers.texadesk.com/api-reference/desk-texa/ticket-relations/unlink-two-tickets): DELETE /api/v1/accounts/{account_id}/tickets/{number}/links/{other} - [Put tickets on a tracker](https://developers.texadesk.com/api-reference/desk-texa/ticket-relations/put-tickets-on-a-tracker): number is the tracker. Needs tracker_manage . - [Tell every customer on a tracker](https://developers.texadesk.com/api-reference/desk-texa/ticket-relations/tell-every-customer-on-a-tracker): Sends message to the customer of each ticket on the tracker, on their own channel. - [Resolve every ticket on a tracker](https://developers.texadesk.com/api-reference/desk-texa/ticket-relations/resolve-every-ticket-on-a-tracker): POST /api/v1/accounts/{account_id}/tickets/{number}/resolve_all - [List a ticket's tasks](https://developers.texadesk.com/api-reference/desk-texa/ticket-tasks/list-a-ticket-s-tasks): GET /api/v1/accounts/{account_id}/tickets/{number}/tasks - [Ask another team for a task](https://developers.texadesk.com/api-reference/desk-texa/ticket-tasks/ask-another-team-for-a-task): Its person or team is emailed. shared says which of the ticket's fields, files and contact details the task's people may see. - [Time spent on a ticket](https://developers.texadesk.com/api-reference/desk-texa/ticket-tasks/time-spent-on-a-ticket): GET /api/v1/accounts/{account_id}/tickets/{number}/time - [Record time spent](https://developers.texadesk.com/api-reference/desk-texa/ticket-tasks/record-time-spent): 422 while the account doesn't record time (Settings → Tickets). - [My tasks](https://developers.texadesk.com/api-reference/desk-texa/ticket-tasks/my-tasks): The person's tasks and their teams'. - [Get a task](https://developers.texadesk.com/api-reference/desk-texa/ticket-tasks/get-a-task): GET /api/v1/accounts/{account_id}/ticket_tasks/{id} - [Change a task](https://developers.texadesk.com/api-reference/desk-texa/ticket-tasks/change-a-task): Its person marks it done ; the ticket's people change the rest. - [Delete a task](https://developers.texadesk.com/api-reference/desk-texa/ticket-tasks/delete-a-task): DELETE /api/v1/accounts/{account_id}/ticket_tasks/{id} - [Add a note to a task](https://developers.texadesk.com/api-reference/desk-texa/ticket-tasks/add-a-note-to-a-task): POST /api/v1/accounts/{account_id}/ticket_tasks/{id}/notes - [List ticket types](https://developers.texadesk.com/api-reference/desk-texa/ticket-types-and-states/list-ticket-types): GET /api/v1/accounts/{account_id}/ticket_types - [Add a ticket type](https://developers.texadesk.com/api-reference/desk-texa/ticket-types-and-states/add-a-ticket-type): Needs settings_tickets . fields[].key are conversation custom attribute keys. promise is {acknowledge: {within, unit}, resolve: {within, unit}} , units hours , calendar_days , business_days . - [Change a ticket type](https://developers.texadesk.com/api-reference/desk-texa/ticket-types-and-states/change-a-ticket-type): PATCH /api/v1/accounts/{account_id}/ticket_types/{id} - [Archive a ticket type](https://developers.texadesk.com/api-reference/desk-texa/ticket-types-and-states/archive-a-ticket-type): DELETE /api/v1/accounts/{account_id}/ticket_types/{id} - [List ticket states](https://developers.texadesk.com/api-reference/desk-texa/ticket-types-and-states/list-ticket-states): GET /api/v1/accounts/{account_id}/ticket_states - [Add a ticket state](https://developers.texadesk.com/api-reference/desk-texa/ticket-types-and-states/add-a-ticket-state): POST /api/v1/accounts/{account_id}/ticket_states - [Change a ticket state](https://developers.texadesk.com/api-reference/desk-texa/ticket-types-and-states/change-a-ticket-state): PATCH /api/v1/accounts/{account_id}/ticket_states/{id} - [Remove a ticket state](https://developers.texadesk.com/api-reference/desk-texa/ticket-types-and-states/remove-a-ticket-state): A state in use is archived; the four system states stay. - [Get ticket settings](https://developers.texadesk.com/api-reference/desk-texa/ticket-settings-and-views/get-ticket-settings): GET /api/v1/accounts/{account_id}/ticket_settings - [Change ticket settings](https://developers.texadesk.com/api-reference/desk-texa/ticket-settings-and-views/change-ticket-settings): prefix (the reference's letters), inboxes (which inboxes make tickets, of which type), regulator , messages (what the customer is told: kinds made , state , reopened , resolved , decision ; null back - [List saved views](https://developers.texadesk.com/api-reference/desk-texa/ticket-settings-and-views/list-saved-views): The account's shared views, then the person's own. - [Save a view](https://developers.texadesk.com/api-reference/desk-texa/ticket-settings-and-views/save-a-view): filters takes the list's own query keys. Sharing one needs settings_tickets . - [Change a saved view](https://developers.texadesk.com/api-reference/desk-texa/ticket-settings-and-views/change-a-saved-view): PATCH /api/v1/accounts/{account_id}/ticket_views/{id} - [Delete a saved view](https://developers.texadesk.com/api-reference/desk-texa/ticket-settings-and-views/delete-a-saved-view): DELETE /api/v1/accounts/{account_id}/ticket_views/{id} - [Ticket report](https://developers.texadesk.com/api-reference/desk-texa/ticket-reports/ticket-report): Needs report_manage , or report_team for one's own branches and teams. - [Complaints register as CSV](https://developers.texadesk.com/api-reference/desk-texa/ticket-reports/complaints-register-as-csv): Every complaint made in the period, for a regulator or an audit. Also needs conversation_export . - [A regulator's return as CSV](https://developers.texadesk.com/api-reference/desk-texa/ticket-reports/a-regulator-s-return-as-csv): GET /api/v1/accounts/{account_id}/ticket_reports/returns - [Client API](https://developers.texadesk.com/api-reference/client.md): Build a customer-facing chat on an API inbox, from the customer's own device, with no secret. - [Create a contact](https://developers.texadesk.com/api-reference/client/contacts/create-a-contact): POST /public/api/v1/inboxes/{inbox_identifier}/contacts - [Get a contact](https://developers.texadesk.com/api-reference/client/contacts/get-a-contact): Get the details of a contact - [Update a contact](https://developers.texadesk.com/api-reference/client/contacts/update-a-contact): Update a contact's attributes - [List all conversations](https://developers.texadesk.com/api-reference/client/conversations/list-all-conversations): List all conversations for the contact - [Create a conversation](https://developers.texadesk.com/api-reference/client/conversations/create-a-conversation): POST /public/api/v1/inboxes/{inbox_identifier}/contacts/{contact_identifier}/conversations - [Get a single conversation](https://developers.texadesk.com/api-reference/client/conversations/get-a-single-conversation): Retrieves the details of a specific conversation - [Resolve a conversation](https://developers.texadesk.com/api-reference/client/conversations/resolve-a-conversation): Marks a conversation as resolved - [Toggle typing status](https://developers.texadesk.com/api-reference/client/conversations/toggle-typing-status): Toggles the typing status in a conversation - [Update last seen and mark messages read](https://developers.texadesk.com/api-reference/client/conversations/update-last-seen-and-mark-messages-read): Updates the contact's last seen time for the conversation and marks agent messages sent before that time as read. Use this to send read receipts from a custom client built on the API channel, so agent - [List all messages](https://developers.texadesk.com/api-reference/client/messages/list-all-messages): List all messages in the conversation - [Create a message](https://developers.texadesk.com/api-reference/client/messages/create-a-message): POST /public/api/v1/inboxes/{inbox_identifier}/contacts/{contact_identifier}/conversations/{conversation_id}/messages - [Update a message](https://developers.texadesk.com/api-reference/client/messages/update-a-message): PATCH /public/api/v1/inboxes/{inbox_identifier}/contacts/{contact_identifier}/conversations/{conversation_id}/messages/{message_id} - [Customer portal API](https://developers.texadesk.com/api-reference/portal.md): The signed-in customer's own requests, as your help centre's My requests shows them, for your own app. - [Send a sign-in code](https://developers.texadesk.com/api-reference/portal/signing-in/send-a-sign-in-code): Answers {sent: true} for any address, so it never tells who is a customer. - [Sign in with the code](https://developers.texadesk.com/api-reference/portal/signing-in/sign-in-with-the-code): POST /public/api/v1/portals/{slug}/texa/verify - [Sign in with your own sign-in](https://developers.texadesk.com/api-reference/portal/signing-in/sign-in-with-your-own-sign-in): Your server proves who the customer is: identifier_hash is HMAC-SHA256 of identifier with the HMAC token of the help centre's live chat inbox, made on your server. The session is at the verified level - [The current session](https://developers.texadesk.com/api-reference/portal/signing-in/the-current-session): GET /public/api/v1/portals/{slug}/texa/session - [Sign out](https://developers.texadesk.com/api-reference/portal/signing-in/sign-out): DELETE /public/api/v1/portals/{slug}/texa/session - [Track a request by its reference](https://developers.texadesk.com/api-reference/portal/signing-in/track-a-request-by-its-reference): Sends a code only to the address on file for that reference's customer, and answers {sent: true} whatever the reference and address. - [List my requests](https://developers.texadesk.com/api-reference/portal/my-requests/list-my-requests): The session contact's tickets of customer-facing types. - [Make a request](https://developers.texadesk.com/api-reference/portal/my-requests/make-a-request): Multipart with up to 5 files in attachments[] . Made at once (created via customer ) and acknowledged. At most 5 an hour and 20 a day per customer. - [Kinds of request a customer can make](https://developers.texadesk.com/api-reference/portal/my-requests/kinds-of-request-a-customer-can-make): GET /public/api/v1/portals/{slug}/texa/request_types - [Get a request](https://developers.texadesk.com/api-reference/portal/my-requests/get-a-request): The row plus open , can_reply , the type's customer fields , and the public messages from every channel. open: false means a sensitive type at the code level: then messages and fields are empty, and y - [Reply to a request](https://developers.texadesk.com/api-reference/portal/my-requests/reply-to-a-request): Multipart with up to 5 files in attachments[] . The message goes on the help centre's conversation for the ticket. At most 30 an hour per customer. - [Platform API](https://developers.texadesk.com/api-reference/platform.md): Accounts, people and agent bots across a whole Texa Desk installation. Dedicated instances only. - [Create an Account](https://developers.texadesk.com/api-reference/platform/accounts/create-an-account): POST /platform/api/v1/accounts - [Get an account details](https://developers.texadesk.com/api-reference/platform/accounts/get-an-account-details): Get the details of an account - [Update an account](https://developers.texadesk.com/api-reference/platform/accounts/update-an-account): Update an account's attributes - [Delete an Account](https://developers.texadesk.com/api-reference/platform/accounts/delete-an-account): DELETE /platform/api/v1/accounts/{account_id} - [List all Account Users](https://developers.texadesk.com/api-reference/platform/account-users/list-all-account-users): List all account users - [Create an Account User](https://developers.texadesk.com/api-reference/platform/account-users/create-an-account-user): POST /platform/api/v1/accounts/{account_id}/account_users - [Delete an Account User](https://developers.texadesk.com/api-reference/platform/account-users/delete-an-account-user): DELETE /platform/api/v1/accounts/{account_id}/account_users - [List all AgentBots](https://developers.texadesk.com/api-reference/platform/agent-bots/list-all-agentbots): List all agent bots available - [Create an Agent Bot](https://developers.texadesk.com/api-reference/platform/agent-bots/create-an-agent-bot): Create an agent bot - [Get an agent bot details](https://developers.texadesk.com/api-reference/platform/agent-bots/get-an-agent-bot-details): Get the details of an agent bot - [Update an agent bot](https://developers.texadesk.com/api-reference/platform/agent-bots/update-an-agent-bot): Update an agent bot's attributes - [Delete an AgentBot](https://developers.texadesk.com/api-reference/platform/agent-bots/delete-an-agentbot): DELETE /platform/api/v1/agent_bots/{id} - [Create a User](https://developers.texadesk.com/api-reference/platform/users/create-a-user): POST /platform/api/v1/users - [Get an user details](https://developers.texadesk.com/api-reference/platform/users/get-an-user-details): Get the details of an user - [Update a user](https://developers.texadesk.com/api-reference/platform/users/update-a-user): Update a user's attributes - [Delete a User](https://developers.texadesk.com/api-reference/platform/users/delete-a-user): DELETE /platform/api/v1/users/{id} - [Get User SSO Link](https://developers.texadesk.com/api-reference/platform/users/get-user-sso-link): Get the sso link of a user - [Survey pages](https://developers.texadesk.com/api-reference/other.md): The customer satisfaction survey page a customer opens from a resolved conversation. - [Get CSAT survey page](https://developers.texadesk.com/api-reference/other/csat-survey-page/get-csat-survey-page): You can redirect the client to this URL, instead of implementing the CSAT survey component yourself. ## SDKs - [SDKs](https://developers.texadesk.com/sdks.md): Texa's SDKs for Python, JavaScript and TypeScript, React Native, Go, Swift and PHP, and the widgets for websites and apps. - [Python](https://developers.texadesk.com/sdks/python.md): pip install texa. A sync and an async client for the Texa API, the action handler and the webhook check. - [JavaScript and TypeScript](https://developers.texadesk.com/sdks/typescript.md): npm install @texadesk/sdk. A dependency-free client for Node, Deno, Bun and edge runtimes. - [Go](https://developers.texadesk.com/sdks/go.md): go get github.com/texadigital/texa-go. The Texa API from Go, standard library only. - [PHP](https://developers.texadesk.com/sdks/php.md): composer require texa/texa-php. The Texa API for Laravel, Symfony or plain PHP. - [Swift](https://developers.texadesk.com/sdks/swift.md): Swift Package Manager, github.com/texadigital/texa-swift. The Texa API for server-side Swift, and voice in iOS apps. - [Java and Kotlin](https://developers.texadesk.com/sdks/java.md): Coming soon to Maven Central. Until then, call the Texa API over HTTP. - [Website widget (widget.js)](https://developers.texadesk.com/sdks/widget.md): One script tag puts Texa AI's chat on your website. Every attribute, the JavaScript API and its events. - [React Native and Expo](https://developers.texadesk.com/sdks/react-native.md): npm install @texadesk/react-native. Texa AI's chat as a component in your app, for visitors and signed-in customers. - [Flutter](https://developers.texadesk.com/sdks/flutter.md): Coming soon to pub.dev. Texa AI's chat as a widget in your Flutter app. ## Hosting and security - [Where your data lives](https://developers.texadesk.com/hosting.md): Texa's three ways of hosting Texa Desk, what lives where, and how each account sees it. - [Dedicated instances](https://developers.texadesk.com/hosting/dedicated.md): Your own Texa Desk, on servers in your country, on your own domains, run by Texa. - [Status](https://developers.texadesk.com/hosting/status.md): Whether the Texa API, Texa AI, Texa Desk and webhooks are working, the last 90 days, and incident notes. - [Security](https://developers.texadesk.com/hosting/security.md): How Texa protects your data and your customers: sign-in, isolation, encryption, what Texa AI may and may not do, and how to stop it. - [Closing an account](https://developers.texadesk.com/hosting/account-closure.md): What happens to a company's data, keys and webhooks when its Texa Desk account closes. - [Install the Texa Relay](https://developers.texadesk.com/hosting/relay-install.md): For your IT team. Run the Texa Relay inside your network, sign its file, enrol it and keep it running. ## Changelog - [Changelog](https://developers.texadesk.com/changelog.md): What changed for developers, newest first. ## OpenAPI documents - [Texa API](https://api.texadesk.com/v1/openapi.json) - [Texa Desk, every family](https://developers.texadesk.com/openapi/texa-desk.json)