KitoDeskDocs

API reference

Every route in the current API, generated from the source.

API reference

Generated from the route declarations in the API source, so it always matches the deployed surface. Paths marked public need no session; everything else requires an authenticated workspace user and is limited to their tenant.

Before the tables:

  • :id, :slug, :kind, :sid, :key are path parameters.
  • PATCH /api/:kind/:id is the generic partial-update route.
  • POST /api/:kind/:id/delete deletes records where supported.
  • Provider callback routes return XML (TwiML or equivalent), not JSON - they exist for the provider to call, not for you.

Endpoint reference

Generated from the route declarations in the API source. Paths marked public do not need a session; everything else requires an authenticated workspace user and is automatically limited to that user's tenant.

Public endpoints

MethodPathPurpose
POST/api/auth/:actionAsync
POST/api/public/docs-feedbackDocs portal feedback: public, stores only slug/helpful/comment.
POST/api/widget/:key/messagesWebchat widget: CORS-open endpoints addressed by the public widget key.
GET/api/widget/:key/messagesWidget poll
POST/api/voice/twilio/twiml/:slugPublic provider webhooks (signed/secreted per provider).
POST/api/voice/at/:slugAsync
POST/api/voice/twilio/status/:slugTwilio status
POST/api/voice/twilio/conference/:slugTwilio conf
POST/api/voice/twilio/recording/:slugTwilio rec
POST/api/voice/yeastar/:slugYeastar in
POST/api/voice/yeastar/signYeastar sdk sign
POST/api/auth/forgotForgot
POST/api/auth/resetReset
POST/api/auth/verify/sendVerify send
POST/api/auth/verify/confirmVerify confirm
GET/api/widgets/:kindWidget get

Identity and sessions

MethodPathPurpose
GET/api/me/profileMe profile
PATCH/api/me/profileMe profile patch
POST/api/me/passwordMe password
POST/api/me/avatarMe avatar
GET/api/meMe
GET/api/members/:idMember
POST/api/me/heartbeatHeartbeat
GET/api/members/:id/timelineMember timeline get
PUT/api/members/:id/labelsMem labels
PATCH/api/members/:id/attributesMem attrs
POST/api/members/:id/notesNote post
POST/api/members/:id/notes/:noteId/deleteNote del
POST/api/members/:id/channelsChan post
POST/api/members/:id/channels/:channelId/deleteChan del
POST/api/members/:id/mergeMember merge
POST/api/members/importMember import
PATCH/api/me/availabilityAvailability patch
PUT/api/me/prefsPrefs put
GET/api/members/:id/commerceMember commerce
PUT/api/me/accepts-callsAcc calls
PUT/api/me/extensionMe ext
GET/api/me/perm/:permPerm check
PUT/api/me/localeLocale put
PUT/api/me/skillsSkills put

Conversations

MethodPathPurpose
GET/api/agents-directoryAgents dir
GET/api/searchSearch
POST/api/conversations/:id/followConv follow
GET/api/conversations/:id/followersConv followers
PUT/api/conversations/:id/insightsConv insights
POST/api/conversations/:id/takeoverConv takeover
POST/api/conversations/:id/coachConv coach
GET/api/conversations/:id/guidanceConv guidance
GET/api/conversations/:id/suggested-assigneesConv suggest
GET/api/conversations/navConv nav
GET/api/conversations/:id/timelineConv timeline
GET/api/conversations/:id/contextConv context
GET/api/conversations/:id/messagesMessages
POST/api/conversations/:id/messagesMessage
POST/api/conversations/:id/assistAssist
PUT/api/conversations/:id/labelsConv labels
PATCH/api/conversations/:id/attributesConv attrs
GET/api/conversations/:id/draftDraft get
PUT/api/conversations/:id/draftDraft put
GET/api/filtersFilters get
POST/api/filtersFilters post
POST/api/filters/:id/deleteFilters del
POST/api/conversations/:id/macros/:macroIdMacro run
POST/api/conversations/bulkConv bulk
POST/api/conversations/:id/csatConv csat
POST/api/conversations/:id/typingConv typing
POST/api/conversations/:id/viewingConv viewing
POST/api/conversations/:id/templateConv template
GET/api/search2Search2

Tickets

MethodPathPurpose
GET/api/tickets/:idTicket
GET/api/tickets/:id/timeTime get
POST/api/tickets/:id/timeTime post
POST/api/tickets/:id/mergeTicket merge
GET/api/tickets/:id/timelineTicket timeline get

Customers

MethodPathPurpose
GET/api/members/:idMember
GET/api/members/:id/timelineMember timeline get
PUT/api/members/:id/labelsMem labels
PATCH/api/members/:id/attributesMem attrs
POST/api/members/:id/notesNote post
POST/api/members/:id/notes/:noteId/deleteNote del
POST/api/members/:id/channelsChan post
POST/api/members/:id/channels/:channelId/deleteChan del
POST/api/members/:id/mergeMember merge
POST/api/members/importMember import
GET/api/companies---- Batch-2 endpoints: companies, API tokens, CSAT, public portal ----
POST/api/companiesCompanies post
GET/api/companies/:idCompany get
PUT/api/companies/:idCompany put
POST/api/companies/:id/deleteCompany del
GET/api/members/:id/commerceMember commerce

Voice

MethodPathPurpose
POST/api/calls/syncCalls sync
POST/api/calls/:id/superviseSupervise go
POST/api/calls/:id/supervise-endSupervise stop
POST/api/calls/:id/transfer-numberCall xfer num
GET/api/callsCalls get
POST/api/callsCalls log
POST/api/voice/token---- Voice providers (Twilio Voice / WhatsApp Calling / Yeastar PBX) ----------
POST/api/calls/:id/acceptCall accept
POST/api/calls/:id/rejectCall reject
POST/api/calls/:id/endCall end now
POST/api/calls/whatsappWa call
GET/api/calls/:id/wa-sdpWa sdp
POST/api/calls/:id/wa-acceptWa accept
POST/api/calls/:id/wa-actionWa action
POST/api/calls/yeastar/dialYeastar dial
GET/api/voicemailsVoicemails get
POST/api/voicemails/:id/heardVoicemail heard
POST/api/voicemails/:id/transcribeVm trans
POST/api/calls/dialCall dial
GET/api/calls/mineCalls mine get
GET/api/voice/capabilitiesVoice caps
GET/api/voice/settingsVoice set get
PUT/api/voice/settingsVoice set put
GET/api/voice/agentsVoice agents get
PUT/api/voice/agents/:idVoice agent set
GET/api/calls/:id/detailCall detail get
POST/api/calls/:id/controlCall ctl
POST/api/calls/:id/transfer-requestCall xfer req
POST/api/calls/:id/transfer-respondCall xfer resp
POST/api/calls/:id/transfer-cancelCall xfer cancel
POST/api/calls/:id/handoff-completeCall handoff
POST/api/calls/:id/wrapupCall wrap
GET/api/calls/:id/recordingAsync
GET/api/calls/:id/transcriptCall tr
POST/api/calls/:id/transcribeCall tr req
PUT/api/calls/:id/summaryCall sum
POST/api/calls/:id/transferCall xfer
POST/api/calls/:id/conferenceCall conf
GET/api/calls/liveLive calls

Teams, inboxes and SLAs

MethodPathPurpose
GET/api/labelsLabels get
POST/api/labelsLabels post
POST/api/labels/:id/deleteLabels del
GET/api/teamsTeams get
POST/api/teamsTeams post
PUT/api/teams/:idTeams put
POST/api/teams/:id/deleteTeams del
GET/api/inboxesInboxes get
POST/api/inboxesInboxes post
PUT/api/inboxes/:idInboxes put
POST/api/inboxes/:id/deleteInboxes del
GET/api/slaSla get
POST/api/slaSla post
POST/api/sla/:id/deleteSla del
POST/api/inboxes/:id/membersInbox members
POST/api/staff/:id/statusStaff status
POST/api/staff/:id/capacityStaff capacity

Automation and knowledge

MethodPathPurpose
GET/api/routing/settingsRouting get
PUT/api/routing/settingsRouting put
GET/api/automationAutomation get
POST/api/automationAutomation create
POST/api/automation/:id/toggleAutomation toggle
GET/api/cannedCanned get
POST/api/cannedCanned post
POST/api/canned/:id/deleteCanned del
GET/api/macrosMacros get
POST/api/macrosMacros post
POST/api/macros/:id/deleteMacros del
GET/api/kbKb get
GET/api/kb/:idKb get one
POST/api/kbKb post
PUT/api/kb/:idKb put
POST/api/kb/:id/deleteKb del

Campaigns and surveys

MethodPathPurpose
GET/api/campaignsCampaigns get
POST/api/campaignsCampaigns create
POST/api/campaigns/:id/sendCampaigns send
GET/api/surveys/public/:token---- Voice of the Member (surveys, journeys, responses, follow-ups) ----
POST/api/surveys/public/:tokenSurvey pub post
GET/api/surveysSurveys get
POST/api/surveysSurveys create
POST/api/surveys/:id/respondSurveys respond
POST/api/surveys/:id/toggleSurveys toggle
POST/api/surveys/:id/send2Survey send2
GET/api/surveys/:id/statsSurvey stats

Reports

MethodPathPurpose
GET/api/overviewOverview
GET/api/reports/agentsReport agents
GET/api/reports/conversationsReport convs
GET/api/reports/opsOps get
GET/api/reports/ops-csv/:kindOps csv get
GET/api/reports/trendTrend get
GET/api/reports/csv/:kindCsv get
GET/api/reports/leaderboardBoard

Administration

MethodPathPurpose
POST/api/channels/:channel/enabledChannel enabled
GET/api/webhooks/whatsapp/:slugMeta webhook verification handshake , no staff session required.
POST/api/webhooks/whatsapp/:slugWhatsapp ingest
GET/api/channels/:channelChannel get
PUT/api/channels/:channelChannel put
POST/api/channels/whatsapp/simulateChannel sim
POST/api/webhooks/email/:slugposts the parsed message with the channel secret.
POST/api/webhooks/telegram/:slugInbound telegram: secret travels in Telegram's secret-token header.
POST/api/webhooks/:channel/:slugas ?secret= or the x-channel-secret header (Meta app secret for fb/ig).
GET/api/integrationsIntegrations get
PUT/api/integrationsIntegrations put
GET/api/notifications---- Inbox parity endpoints ----
POST/api/notifications/:id/readNotif read
POST/api/notifications/read-allNotif read all
GET/api/webhooksWebhooks get
POST/api/webhooksWebhooks post
POST/api/webhooks/:id/deleteWebhooks del
POST/api/channels/:channel/testChannel test
POST/api/webhooks/voice/:slugVoice in
POST/api/webhooks/sms/:slugSms in

Other

MethodPathPurpose
GET/api/healthAsync
POST/api/demoDemo
POST/api/contactContact
GET/api/invitationsInvitations
GET/api/onboard/brand/:slugBrand pub
GET/api/enabled-channelsEnabled channels
GET/api/analyticsAnalytics get
POST/api/analytics/emailAnalytics email
GET/api/report-templatesTpl list
POST/api/report-templatesTpl save
POST/api/report-templates/:id/deleteTpl del
POST/api/mfa/setupMfa setup
POST/api/mfa/enableMfa enable
GET/api/summarySummary
POST/api/onboard/accept-inviteTenant onboarding: public slug availability check (rate-limited).
GET/api/onboard/hostHost lookup
GET/api/onboard/slug/:slugSlug check
GET/api/events/streampolling /api/events if the stream is unavailable.
GET/api/presence/boardPresence board get
GET/api/platformPlatform get
POST/api/workspace/rename-slug---- People & Access ----
GET/api/workspace/domainsWsp domains
GET/api/people/overviewPpl ov
GET/api/people/membersPpl list
POST/api/people/members/:id/removePpl remove
GET/api/people/teamsTm list
POST/api/people/teamsTm save
POST/api/people/teams/:idTm upd
GET/api/people/teams/:id/membersTm members
POST/api/people/teams/:id/membersTm add
POST/api/people/teams/:id/members/:mid/removeTm rm
POST/api/people/teams/:id/deleteTm del
POST/api/people/transfer-ownerPpl owner
GET/api/people/auditPpl aud
GET/api/people/permissionsGranular roles, branches, org security policy, invitation tracking.
GET/api/people/rolesPpl roles
POST/api/people/rolesPpl role new
POST/api/people/roles/:idPpl role edit
POST/api/people/roles/:id/duplicatePpl role dup
POST/api/people/roles/:id/archivePpl role arc
POST/api/people/roles/:id/deletePpl role del
POST/api/people/members/:id/rolePpl role asn
GET/api/people/members/:id/branchesPpl br get
POST/api/people/members/:id/branchesPpl br set
GET/api/people/securityPpl sec get
POST/api/people/securityPpl sec set
PUT/api/people/securityPpl sec put
POST/api/people/invitations/bulkPpl inv bulk
POST/api/people/teams/:id/members/:mid/supervisorTm sup
GET/api/people/branchesPpl branches
GET/api/people/invitationsPpl invs
GET/api/people/invitations/:id/eventsPpl inv ev
POST/api/people/invitations/:id/approvePpl inv appr
POST/api/invitations/delivery-eventPublic provider delivery webhook (shared-secret header).
GET/api/camp/overview---- Campaign workspace ----
GET/api/camp/campaignsCamp list
POST/api/camp/campaignsCamp create
GET/api/camp/campaigns/:idCamp get
GET/api/camp/campaigns/:id/runsCamp runs
POST/api/camp/campaigns/:idCamp edit
POST/api/camp/campaigns/:id/statusCamp st
POST/api/camp/campaigns/:id/approveCamp ap
POST/api/camp/campaigns/:id/sendCamp send
POST/api/camp/audienceCamp aud
POST/api/camp/deliveries/:id/retryCamp retry
GET/api/camp/segmentsCamp segs
POST/api/camp/segmentsCamp seg save
POST/api/camp/segments/:id/deleteCamp seg del
GET/api/camp/analyticsCamp an
GET/api/vom/overviewVom ov
GET/api/vom/surveysVom list
POST/api/vom/surveysVom create
GET/api/vom/surveys/:idVom get
POST/api/vom/surveys/:idVom edit
POST/api/vom/surveys/:id/statusVom status
POST/api/vom/surveys/:id/deleteVom del
POST/api/vom/inviteVom invite
GET/api/vom/invitations/:surveyIdVom inv list
GET/api/vom/responsesVom resps
GET/api/vom/responses/:idVom resp get
GET/api/vom/followupsVom fus
POST/api/vom/followups/:idVom fu upd
GET/api/vom/journeysVom jns
POST/api/vom/journeysVom jn save
POST/api/vom/journeys/:idVom jn edit
POST/api/vom/journeys/:id/toggleVom jn tgl
POST/api/vom/journeys/:id/fireVom jn fire
GET/api/vom/analyticsVom an
GET/api/attributesAttrs get
POST/api/attributesAttrs post
POST/api/attributes/:id/deleteAttrs del
GET/api/hoursHours get
PUT/api/hoursHours put
GET/api/attachments/:idAsync
GET/api/eventsEvents get
GET/api/tokensTokens get
POST/api/tokensTokens post
POST/api/tokens/:id/revokeTokens revoke
GET/api/exportExport get
GET/api/dashboard-appsApps get
POST/api/dashboard-appsApps post
POST/api/dashboard-apps/:id/deleteApps del
PUT/api/brandBrand put
GET/api/bots---- Batch 5: bots, commerce context, channel tests ----
POST/api/botsBots post
PUT/api/bots/:idBots put
POST/api/bots/:id/deleteBots del
POST/api/bots/:id/testBots test
GET/api/bots/:id/flows---- Batch 8: flows, voice, wa templates, sso, reset, reports ----
POST/api/bots/:id/flowsFlows post
POST/api/flows/:id/deleteFlows del
GET/api/wa-templatesWa get
POST/api/wa-templatesWa post
POST/api/wa-templates/:id/submitWa submit
POST/api/wa-templates/:id/deleteWa del
POST/api/wa-templates/syncWa sync
GET/api/ssoSso get
POST/api/ssoSso post
GET/api/sso/begin/:provider/:slugSso begin
POST/api/sso/callback/:provider/:slugSso cb
GET/api/scheduled-reportsSr get
POST/api/scheduled-reportsSr post
POST/api/scheduled-reports/:id/deleteSr del
POST/api/rtc/:key/start---- WebRTC browser calling ----
GET/api/rtc/:key/:idRtc state
POST/api/rtc/:key/:id/candidateRtc vcand
GET/api/rtc-pendingRtc pending
POST/api/rtc/:id/answerRtc answer
GET/api/rtc/:id/offerRtc offer
POST/api/rtc/:id/candidateRtc acand
POST/api/rtc/:id/endRtc end
GET/api/roles---- Batch 10: depth features ----
POST/api/rolesRoles post
POST/api/roles/:id/deleteRoles del
GET/api/wa-templates/statsWa stats
GET/api/dashboardsDash get
POST/api/dashboardsDash post
PUT/api/dashboards/:idDash put
POST/api/dashboards/:id/deleteDash del
GET/api/i18n/:localeI18n get
POST/api/i18nI18n post
GET/api/retentionRet get
POST/api/retentionRet post
POST/api/export/linkExp link
GET/api/export/download/:tokenExp dl
GET/api/badgesBadges get
POST/api/badgesBadges post
GET/api/streaksStreaks get
GET/api/challengesChal get
POST/api/challengesChal post
POST/api/sso/saml/:slugSaml cb
POST/api/sso/ldap/:slugLdap cb
GET/api/sso/saml-metadata/:slugPublic SP metadata: the IdP imports this descriptor (entityID + ACS URL).
GET/api/backupsScheduled filesystem backups (point them at any writable path).
POST/api/backupsBackups post
POST/api/backups/:id/deleteBackup del
POST/api/backups/:id/runBackup run now
POST/api/backups/:id/testBackup probe
GET/api/backups/:id/filesBackup files
POST/api/attachments/:id/reextractAtt reextract
GET/api/providers---- Batch 11: providers, airtime, drips, tracking, telephony, skills ----
POST/api/providersProv post
POST/api/providers/:id/deleteProv del
GET/api/airtimeAir get
POST/api/airtimeAir post
GET/api/track/open/:idTrk open
GET/api/track/click/:idTrk click
GET/api/ivrIvr get
POST/api/ivrIvr post
POST/api/ivr/:id/deleteIvr del
POST/api/ivr/eval/:slug/:digitIvr eval
GET/api/audio-libraryAudio get
POST/api/audio-libraryAudio post
POST/api/audio-library/:id/deleteAudio del
GET/api/call-queueCq get
POST/api/call-queue/:id/pickCq pick
POST/api/ttsTts post
GET/api/portal/:slug/articlesPublic help-center portal: no staff session, published articles only.
GET/api/portal/:slug/articles/:idPortal one
GET/api/portal/:slug/topicsPortal topics
GET/api/portal/:slug/topics/:idPortal topic
POST/api/portal-post/:keyPortal post
GET/api/ticket-templatesTemplates get
POST/api/ticket-templatesTemplates post
POST/api/ticket-templates/:id/deleteTemplates del
GET/api/:kindList
GET/api/organisation/profileOrg get
POST/api/organisation/logoOrg logo
PATCH/api/organisation/profileOrg patch
POST/api/invitationsInvite
POST/api/invitations/:id/revokeRevoke inv
POST/api/invitations/:id/resendResend inv
POST/api/:kindCreate
PATCH/api/:kind/:idUpdate
Was this guide helpful?