Gladly website screenshot

Gladly

Gladly is a San Francisco–based people-centered customer service AI platform. The Gladly Hero agent workspace unifies voice, chat, SMS, email, and social into a single, channel-agnostic conversation per Customer, while Gladly Sidekick AI handles routine resolutions, drafts replies, and hands off to humans with full context. Brands integrate via the REST API, the Chat SDK (Web/iOS/Android), the Help Center widget, the embedded App Platform, webhooks, and a brand-hosted Lookup API. Customers include JetBlue, Allbirds, Crate & Barrel, Warby Parker, Ulta, Nordstrom, TUMI, UGG, Tory Burch, and Breeze Airways.

8 APIs 10 Features
Customer ServiceCXContact CenterAI Customer ServiceConversationsSidekick AIHeroVoiceChatSMSEmailHelp CenterWebhooksKnowledge Base

APIs

Gladly REST API

Gladly's unified REST API for the people-centered customer service platform. Exposes Customers, Conversations, Messages, Tasks, Answers (knowledge base), Topics, Teams, Inboxes,...

Gladly Lookup API

Brand-hosted "Lookup" endpoint that Gladly calls outbound to enrich a conversation with first-party customer data. Lets brands keep system-of-record customer data in their own s...

Gladly Chat SDK

JavaScript chat widget loaded from the Gladly CDN. Exposes `Gladly.init`, `show`, `close`, `setUser`, `startConversation`, `navigate`, `applyCampaign`, `getAvailability`, plus a...

Gladly Sidekick iOS SDK

Swift SDK (v1.2.5, iOS 11+) for embedding the Gladly Sidekick chat experience in iOS apps. Ships `Gladly`, `GladlySettings`, `GladlyUser`, `UIConfiguration`, `UIHeaderConfigurat...

Gladly Sidekick Android SDK

Kotlin SDK (Android Q / API 29+) for embedding the Gladly Sidekick chat experience in Android apps. Provides `Gladly.initialize`, `setUser`, `showChat`, `handleMessageReceived`,...

Gladly Help Center

Embeddable Help Center widget that builds an FAQ/help page on a brand's website powered by Public Answers from Gladly's Answers knowledge base. Exposes a `.gladlyHC` CSS class h...

Gladly App Platform

Framework for building embedded "Apps" inside the Gladly Hero agent workspace. Apps surface third-party data (orders, loyalty, returns, CDP profiles) alongside the customer time...

Gladly Webhooks

Event-driven push channel that delivers Gladly platform events (conversation created/updated/closed, message created, task created/updated/closed, customer created/updated, agen...

Collections

Gladly API

OPEN

Pricing Plans

Gladly Plans Pricing

7 plans

PLANS

Rate Limits

Gladly Rate Limits

2 limits

RATE LIMITS

FinOps

Gladly Finops

FINOPS

Features

Unified Customer Conversation

One channel-agnostic conversation per customer across voice, chat, SMS, email, and social — with full history visible to agents and Sidekick AI.

Gladly Sidekick AI

AI agent that resolves routine cases end-to-end, drafts agent replies, and hands off with full context. Configured in plain English via Guides.

Gladly Hero

People-centric agent workspace (formerly Gladly Team) with customer timeline, topics, tasks, and inbox routing.

Answers Knowledge Base

Versioned answers with audiences, topics, language scoping, and Help Center publication.

Lookup API Pattern

Brand-hosted endpoint Gladly calls to enrich conversations with first-party customer data — no need to mirror profiles into Gladly.

App Platform

Embedded apps inside Hero that surface third-party data (orders, loyalty, returns, CDP) next to the timeline.

Webhooks and Events

Push delivery of conversation, message, task, customer, and agent-state events to brand endpoints.

Bulk Export Jobs

Scheduled export jobs for agents, conversations, customers, and metrics in JSONL.

Multichannel Voice

Native voice channel with call recording, Voice AI deflection, and toll-free / local number support.

Help Center Widget

Embeddable, brand-styled self-service surface backed by Public Answers.

Use Cases

Retail and DTC Customer Service

Tie order data from Shopify or BigCommerce to every conversation so agents can refund, replace, or cancel orders without leaving Hero.

Travel and Hospitality Care

Manage high-touch, multi-leg voice + messaging cases for airlines, cruise lines, and resorts (JetBlue, Breeze).

AI Deflection of Routine Cases

Have Sidekick AI fully resolve order-status, return, password-reset, and FAQ traffic with seamless human handoff.

Loyalty-Aware Service

Pull loyalty tier and lifetime value from Smile.io, Zinrelo, or LoyaltyLion to prioritize and personalize support.

Subscription Lifecycle Support

Coordinate billing, pause/skip, and renewal questions with Recharge, Recurly, Ordergroove, or Skio in-conversation.

CDP-Driven Personalization

Sync customer segments from Segment, HighTouch, or Fivetran into Gladly to tailor every interaction.

Proactive Outreach

Trigger outbound conversations from order events, delivery delays, or abandoned carts via Proactive Conversations and Communications APIs.

Integrations

Shopify

Native bidirectional integration — order history, customer LTV, refunds, cancellations, and discount codes from inside the conversation.

BigCommerce

E-commerce platform integration for order and customer context.

Magento (Adobe Commerce)

E-commerce platform integration.

Klaviyo

Send conversation-created and closed events from Gladly to Klaviyo for segmentation and lifecycle email flows.

Recharge

Subscription management integration for pause/skip/cancel inside conversations.

Recurly

Subscription billing integration.

Ordergroove

Subscription and reorder integration.

Skio

Subscription management integration.

AfterShip

Shipment tracking and post-purchase notifications.

Loop

Returns management for e-commerce brands.

ReturnLogic

Returns and reverse-logistics integration.

Narvar

Post-purchase experience and tracking.

Corso

Shipping protection and order recovery.

Shiphero

Warehouse and order fulfillment.

Shipped Suite

Package protection and shipping confidence.

Segment (Source)

Stream Gladly events into Segment for the data warehouse and downstream tools.

Fivetran

ELT extraction of Gladly data into the data warehouse.

HighTouch

Reverse-ETL sync of warehouse audiences into Gladly customer profiles.

Smile.io

Loyalty program data surfaced in conversations.

LoyaltyLion

Loyalty program data and tier-aware routing.

Zinrelo

Loyalty program integration.

Attentive

SMS marketing audience and campaign integration.

Emplifi

Social media management integration.

Optimizely / Zaius

Customer data and personalization platform integration.

TurnTo

Reviews and Q&A integration.

ScreenMeet

In-conversation co-browse and screen-share.

Flip

Live-shopping and video customer support.

Facebook Messenger

Native social messaging channel.

AWS EventBridge

Stream Gladly events to AWS EventBridge for serverless downstream automation.

Linc

Voice-of-customer and AI assistance integration.

Ada Support

AI chatbot integration partner.

Netomi

AI customer experience platform integration.

Siena

Autonomous CX agent integration.

KODIF.ai

AI customer service automation integration.

AgentsOnly

On-demand agent staffing integration.

Endear

Clienteling and outreach for retail.

Simplr

On-demand customer service capacity.

HiOperator

Managed customer service operations partner.

Assembled

Workforce management for forecasting and scheduling.

MaestroQA

Quality assurance and agent scoring.

Playvox

Quality, coaching, and workforce optimization.

Calabrio

Workforce management and quality.

Medallia

Customer experience and feedback.

Medallia Agent Connect

Agent feedback and coaching loop.

Simplesat

CSAT survey integration.

Delighted

NPS and customer satisfaction surveys.

Qualtrics

Enterprise experience management surveys.

Hark

Voice-of-customer escalation video capture.

SentiSum

Tagging and analytics for conversations.

Formspree

Form-to-conversation routing.

Formstack

Form data routing into Gladly.

Jotform

Form ingestion into customer conversations.

Idiomatic

Conversation analytics and CX insights.

Spree Commerce

Open-source e-commerce platform integration.

Swell

Headless commerce integration.

Solutions

Gladly Hero

People-centered agent workspace for voice, chat, SMS, email, and social — formerly known as Gladly Team.

Gladly Sidekick AI

AI customer service agent that resolves routine cases end-to-end and hands off to human agents with full context.

Gladly Voice AI

Voice-channel AI assistant priced per minute, layered on the native voice channel.

Gladly Help Center

Embedded self-service experience powered by Public Answers.

Gladly App Platform

Embedded apps and connectors inside the Hero workspace.

Semantic Vocabularies

Gladly Context

0 classes · 5 properties

JSON-LD

API Governance Rules

Gladly API Rules

4 rules · 1 errors 3 warnings

SPECTRAL

JSON Structure

Gladly Answer Structure

0 properties

JSON STRUCTURE

Gladly Conversation Structure

0 properties

JSON STRUCTURE

Gladly Customer Structure

0 properties

JSON STRUCTURE

Gladly Task Structure

0 properties

JSON STRUCTURE

Gladly Webhook Structure

0 properties

JSON STRUCTURE

Example Payloads

Gladly Task Create Example

2 fields

EXAMPLE

Resources

🌐
Portal
Portal
🔗
Documentation
Documentation
🔗
APIReference
APIReference
💬
Support
Support
🚀
GettingStarted
GettingStarted
🔗
RateLimits
RateLimits
🔗
RateLimits
RateLimits
💰
Pricing
Pricing
🔗
Plans
Plans
🔗
FinOps
FinOps
📜
PrivacyPolicy
PrivacyPolicy
📜
TermsOfService
TermsOfService
📰
Blog
Blog
👥
GitHubOrganization
GitHubOrganization
🔗
LinkedIn
LinkedIn
🔗
Twitter
Twitter
👥
YouTube
YouTube
🔗
SpectralRules
SpectralRules
🔗
Vocabulary
Vocabulary
🔗
JSONLD
JSONLD

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Gladly API
  version: '1.0'
request:
  auth:
    type: basic
    username: '{{username}}'
    password: '{{password}}'
items:
- info:
    name: Communications
    type: folder
  items:
  - info:
      name: Send SMS
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/communications/sms
      body:
        type: json
        data: '{}'
    docs: 'To send an SMS message to a customer specified by a mobile phone number.


      Gladly can send outbound SMS messages globally. By default, your organization is set up to only allow access to your
      home country.  To send SMS messages to other countries, please contact [Gladly Support](https://help.gladly.com/implementation/docs/filing-a-support-issue)
      with a P4 designation.


      Please be aware that:

      - Any automated outbound text messages **must** comply with carrier [acceptable use policies](https://help.'
  - info:
      name: Send Email
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/communications/email
      body:
        type: json
        data: '{}'
    docs: 'Used to send an email messages to a customer specified by an email address.


      Any items created using this API will not be considered part of a conversation, and are **non-routable** and **non-searchable**
      aside from the email address specified as part of the payload.

      '
- info:
    name: Conversations
    type: folder
  items:
  - info:
      name: Get Conversations for Customer
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/customers/:customerId/conversations
      params:
      - name: customerId
        value: gHufx-U3QqOmhvFuViceTw
        type: path
        description: Id of the customer to get all conversations for
    docs: 'Get the list of conversations for a customer.

      The list is not paginated and will return at most 100 conversations.

      The conversations are returned in ascending order by timestamp.

      The `Gladly-Limited-Data` header flag in the response will indicate if the customer has more conversations than returned.

      '
  - info:
      name: Get Conversation
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/conversations/:conversationId
      params:
      - name: conversationId
        value: 9BcE2O0DQ2ynGHRmk9FeoA
        type: path
        description: Id of the conversation to get
    docs: 'Get conversation metadata such as it''s assignee, topics, inbox, etc.

      '
  - info:
      name: Update Conversation
      type: http
    http:
      method: PATCH
      url: https://{organization}.gladly.com/api/v1/api/v1/conversations/:conversationId
      params:
      - name: conversationId
        value: 9BcE2O0DQ2ynGHRmk9FeoA
        type: path
        description: Id of the conversation
      body:
        type: json
        data: '{}'
    docs: 'Update conversation assignee, statusor both

      '
  - info:
      name: Create Item
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/conversation-items
      body:
        type: json
        data: '{}'
    docs: 'To add items to the timeline for a customer specified by identifying information. If the customer doesn''t exist,
      a new customer profile is created.


      Any items created using this API will not be considered part of a conversation, and are **non-routable** and **non-searchable**
      aside from the mobile phone number or email address specified as part of the payload.

      '
  - info:
      name: Get Item
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/conversation-items/:itemId
      params:
      - name: itemId
        value: ''
        type: path
        description: 'id of the conversation item

          '
    docs: 'Returns the conversation item with the provided id.

      '
  - info:
      name: Delete Item
      type: http
    http:
      method: DELETE
      url: https://{organization}.gladly.com/api/v1/api/v1/conversation-items/:itemId
      params:
      - name: itemId
        value: ''
        type: path
        description: 'Id of the item to be deleted.

          '
    docs: 'To delete an item.


      Please note only items of type **CUSTOMER_ACTIVITY** may be deleted by this API.

      '
  - info:
      name: Get Media
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/conversation-items/:itemId/media/recording
      params:
      - name: itemId
        value: ''
        type: path
        description: 'id of the conversation item

          '
    docs: 'Returns the media file associated with the conversation item

      '
  - info:
      name: Get Voice Transcript
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/conversation-items/:itemId/voice-transcript
      params:
      - name: itemId
        value: ''
        type: path
        description: 'id of the conversation item

          '
    docs: 'Returns a transcript of a phone call or a voicemail

      '
  - info:
      name: Get Attachment
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/conversation-items/:itemId/attachments/:attachmentId
      params:
      - name: itemId
        value: ''
        type: path
        description: 'Id of the conversation item that contains the attachment.

          '
      - name: attachmentId
        value: ''
        type: path
        description: 'Id of the attachment to retrieve.

          '
    docs: 'Returns a redirect to the URL of the specified attachment on a conversation item.


      The response is a `303 See Other` redirect. Follow the redirect to download the attachment content.


      Attachments are available on conversation items with content types that support them, such as emails, chat messages,
      SMS messages, and custom channel messages.

      '
  - info:
      name: Create Item for Customer
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/customers/:customerId/conversation-items
      params:
      - name: customerId
        value: ''
        type: path
        description: 'Id of the customer associated with this item.


          You can look up the id using the [Find customers](index.html#tag/Customers) API.

          '
      body:
        type: json
        data: '{}'
    docs: 'To add items to a customer''s timeline.


      Any items created using this API will not be considered part of a conversation, and are **non-routable** and **non-searchable**
      aside from the mobile phone number or email address specified as part of the payload.

      '
  - info:
      name: Delete Item for Customer
      type: http
    http:
      method: DELETE
      url: https://{organization}.gladly.com/api/v1/api/v1/customers/:customerId/conversation-items/:itemId
      params:
      - name: customerId
        value: ''
        type: path
        description: 'Id of the customer associated with this item.


          You can look up the id using the [Find customers](index.html#tag/Customers) API.

          '
      - name: itemId
        value: ''
        type: path
        description: 'Id of the item to be deleted.

          '
    docs: 'To delete an item.


      Please note only items of type **CUSTOMER_ACTIVITY** may be deleted by this API.

      '
  - info:
      name: List Items in Conversation
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/conversations/:conversationId/items
      params:
      - name: conversationId
        value: 9BcE2O0DQ2ynGHRmk9FeoA
        type: path
        description: Id of the conversation to get the timeline for
      - name: sessionId
        value: 5k04bYuTRGqyT6uoSQfWVA
        type: query
        description: Return only items whose `sessionId` matches the given value.
    docs: 'Get the list of items in the timeline of a conversation.

      The conversation represents a period of related interactions between a customer and your organization.

      The list is not paginated and will return at most 1000 items. The items are returned in ascending order by timestamp.

      The `Gladly-Limited-Data` header flag in the response will indicate if the conversation has more items than returned.


      The response can be filtered by session using the optional `sessionId` query parameter.

      '
  - info:
      name: Add Topics to Conversation
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/conversations/:conversationId/topics
      params:
      - name: conversationId
        value: ''
        type: path
        description: 'Id of the conversation.

          '
      body:
        type: json
        data: '{}'
    docs: 'Adds a list of topics to the conversation. If a topic being added already exists on the conversation, that topic
      is ignored.

      '
  - info:
      name: Delete Topic From Conversation
      type: http
    http:
      method: DELETE
      url: https://{organization}.gladly.com/api/v1/api/v1/conversations/:conversationId/topics/:topicId
      params:
      - name: conversationId
        value: ''
        type: path
        description: 'Id of the conversation.

          '
      - name: topicId
        value: ''
        type: path
        description: 'Id of topic to be deleted from conversation.

          '
    docs: 'Delete a topic from a conversation.

      '
  - info:
      name: Add or Remove Freeform Topic
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/customer-history/:customerId/conversations/:conversationId/custom-attributes
      params:
      - name: customerId
        value: ''
        type: path
        description: 'Id of the customer.

          '
      - name: conversationId
        value: ''
        type: path
        description: 'Id of the conversation.

          '
      body:
        type: json
        data: '{}'
    docs: 'Adds or removes a list of freeform topics to the conversation. If the freeform topic being added already exists
      on the conversation, that topic is ignored.

      '
  - info:
      name: Add Note
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/conversations/:conversationId/notes
      params:
      - name: conversationId
        value: ''
        type: path
        description: 'Id of the conversation.

          '
      body:
        type: json
        data: '{}'
    docs: Adds note to an existing conversation.
  - info:
      name: Get Note
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/conversations/:conversationId/notes/:noteId
      params:
      - name: conversationId
        value: ''
        type: path
        description: 'id of the conversation

          '
      - name: noteId
        value: ''
        type: path
        description: 'id of the note

          '
    docs: 'Returns the note with the provided conversation and note id.

      '
  - info:
      name: Reply to Message
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/conversation-items/:itemId/reply
      params:
      - name: itemId
        value: ''
        type: path
        description: 'id of the conversation item

          '
      body:
        type: json
        data: '{}'
    docs: Sends a response to a conversation item. If no agent is assigned to the conversation, the conversation is assigned
      to the API User who made this call.
  - info:
      name: Redact Conversation Item
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/conversation-items/:itemId/redact
      params:
      - name: itemId
        value: ''
        type: path
        description: 'id of the conversation item

          '
      body:
        type: json
        data: '{}'
    docs: 'For supported items, the item''s content will be removed but the item will

      remain in the conversation timeline. Supported types are Chat Message,

      SMS Message, Email, Twitter (decommissioned as of 04/20/23, but can still be redacted), WhatsApp, Voicemail, Phone Call.

      '
- info:
    name: Tasks
    type: folder
  items:
  - info:
      name: Create Task
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/tasks
      body:
        type: json
        data: '{}'
    docs: 'To add tasks to the timeline for a customer specified by identifying information. If the customer doesn''t exist,
      a new customer profile is created.

      '
  - info:
      name: List Tasks
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/customers/:customerId/tasks
      params:
      - name: customerId
        value: ''
        type: path
        description: 'Id of the customer whose tasks you''d like to view.

          '
      - name: status
        value: ''
        type: query
        description: 'Fetch tasks with the provided status.

          '
    docs: "Fetch all tasks for a customer.\n\nThe list is not paginated and will return at most 2000 tasks. The tasks are\
      \ returned in descending order by timestamp. \nThe `Gladly-Limited-Data` header flag in the response will indicate if\
      \ the customer has more tasks than returned.        \n\nTo see and act on any newly created tasks, webhooks can be used\
      \ to listen for task related events.\nTasks older than the limit can be viewed using the Task Export.\n"
  - info:
      name: Create Task for Customer
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/customers/:customerId/tasks
      params:
      - name: customerId
        value: ''
        type: path
        description: 'Id of the customer associated with the task to create.


          You can look up the id using the [Find customers](index.html#tag/Customers) API.

          '
      body:
        type: json
        data: '{}'
    docs: 'Add a task to an existing customer''s conversation timeline

      '
  - info:
      name: Get Task
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/tasks/:taskId
      params:
      - name: taskId
        value: ''
        type: path
        description: 'Id of the task requested

          '
    docs: 'Get task

      '
  - info:
      name: Update Task
      type: http
    http:
      method: PATCH
      url: https://{organization}.gladly.com/api/v1/api/v1/tasks/:taskId
      params:
      - name: taskId
        value: ''
        type: path
        description: 'Id of the task that is to be updated

          '
      body:
        type: json
        data: '{}'
    docs: 'Update an existing task

      '
  - info:
      name: Get Task Comments
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/tasks/:taskId/comments
      params:
      - name: taskId
        value: ''
        type: path
        description: 'Id of the task comments are requested for.

          '
    docs: 'The comments are returned in ascending order by createdAt timestamp. The list is not paginated and will return
      at most 1000 task comments. The `Gladly-Limited-Data` header flag in the response will indicate if the task has more
      comments than returned.


      To see and act on any newly created task comments, webhooks can be used to listen to any task comment related events.

      '
  - info:
      name: Add Task Comment
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/tasks/:taskId/comments
      params:
      - name: taskId
        value: ''
        type: path
        description: 'Id of the task that will be commented on.

          '
      body:
        type: json
        data: '{}'
    docs: 'Create a comment on a task.  Note that you can’t create comments on closed tasks.

      ![Task Comment](assets/task-comment.png)

      '
  - info:
      name: Get Task Comment
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/tasks/:taskId/comments/:commentId
      params:
      - name: taskId
        value: ''
        type: path
        description: 'Task id

          '
      - name: commentId
        value: ''
        type: path
        description: 'Comment id

          '
    docs: 'Get task comment.

      '
- info:
    name: Freeform Topics
    type: folder
  items:
  - info:
      name: Get Custom Attribute
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/custom-attributes/:customAttributeId
      params:
      - name: customAttributeId
        value: ''
        type: path
        description: 'id of the custom attribute

          '
    docs: 'Returns a custom attribute that matches the provided custom attribute id.

      '
- info:
    name: Customers
    type: folder
  items:
  - info:
      name: Find Customers
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/customer-profiles
      params:
      - name: email
        value: ''
        type: query
        description: customer email address to search on.
      - name: externalCustomerId
        value: ''
        type: query
        description: Customer ID in your system of record for Customer Profiles linked to a Lookup Adaptor installed prior
          to 05/12/21. If Customer Profile is linked to a Lookup Adaptor installed on or after 05/12/21, this field is not
          searchable.
      - name: phoneNumber
        value: ''
        type: query
        description: 'Phone number in E.164 format. The value should be URL escaped where `+` becomes `%2B`.

          '
    docs: "Find customers by searching by choosing **one** of the following identifiers as query parameters:\n\n```\n/api/v1/customer-profiles?phoneNumber=%2B14151234567\n\
      ```\n\nMax limit of 50 profiles returned, sorted by most recently updatedAt date descending. \n"
  - info:
      name: Create Customer
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/customer-profiles
      body:
        type: json
        data: '{}'
    docs: 'Create a new customer with the supplied profile data.

      '
  - info:
      name: Get Customer
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/customer-profiles/:customerId
      params:
      - name: customerId
        value: ''
        type: path
        description: id of the customer
    docs: 'Get a customer by unique id.

      If a customer has been merged into another, an error will be returned specifying the new id of the customer.

      '
  - info:
      name: Update Customer
      type: http
    http:
      method: PATCH
      url: https://{organization}.gladly.com/api/v1/api/v1/customer-profiles/:customerId
      params:
      - name: customerId
        value: ''
        type: path
        description: id of the customer
      body:
        type: json
        data: '{}'
    docs: 'Update a customer by unique id with the supplied JSON patch.


      You may supply only the properties which you want to update or insert into the profile.

      When updating arrays, such as `phones` and `emails` you must provide the entire list of values

      since it is not possible to add or delete a single value.


      If a customer has been merged into another, an error will be returned specifying the new id of the customer.

      '
  - info:
      name: Delete Customer
      type: http
    http:
      method: DELETE
      url: https://{organization}.gladly.com/api/v1/api/v1/customer-profiles/:customerId
      params:
      - name: customerId
        value: ''
        type: path
        description: id of the customer
    docs: 'Delete a customer and all associated conversations.


      All conversations associated with the customer must be closed before the customer can be deleted.


      This operation is irreversible.


      The user associated with the API token must have both Compliance Admin and API User roles.

      '
- info:
    name: User Identity
    type: folder
  items:
  - info:
      name: Create a User Identity JWT
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/user-identity-jwt
      body:
        type: json
        data: '{}'
    docs: "Create a User Identity JWT for a customer. The JWT is used to authenticate the customer with \n[Chat](https://developer.gladly.com/chat/).\
      \ The JWT contains the customer identity information.\n"
- info:
    name: Public Answer
    type: folder
  items:
  - info:
      name: Search Public Answers
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/orgs/:orgId/answers-search?q=search+terms
      params:
      - name: orgId
        value: ''
        type: path
        description: 'id of your organization


          You can look up the ID using the [Get organization](index.html#tag/Organization) API.

          '
      - name: q
        value: ''
        type: query
        description: search term
      - name: lng
        value: ''
        type: query
        description: language code
      - name: audienceId
        value: ''
        type: query
        description: Audience ID. The Audience ID can be retrieved by going to Settings > Audiences in Gladly, then clicking
          on the Edit button next to the Audience in question. The ID will be in the page URL.
    docs: 'Returns a list of answers that match the provided query string.

      '
  - info:
      name: List Public Answers
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/orgs/:orgId/answers?lng=:lng&audienceId=:audienceId
      params:
      - name: orgId
        value: ''
        type: path
        description: 'id of your organization


          You can look up the ID using the [Get organization](index.html#tag/Organization) API.

          '
      - name: lng
        value: ''
        type: query
        description: 'Language of the answers returned


          Defaults to `en-us`

          '
      - name: audienceId
        value: ''
        type: query
        description: 'Audience ID for answers returned - optional. The Audience ID can be retrieved by going to Settings >
          Audiences in Gladly, then clicking on the Edit button next to the Audience in question. The ID will be in the page
          URL.

          '
    docs: 'Returns the first 1000 public answers sorted alphabetically by name.

      '
  - info:
      name: List Help Center Answer Titles
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/orgs/:orgId/help-center/:helpCenterId/answer-titles?lng=:lng&audienceId=:audienceId
      params:
      - name: orgId
        value: ''
        type: path
        description: 'id of your organization


          You can look up the ID using the [Get organization](index.html#tag/Organization) API.

          '
      - name: helpCenterId
        value: ''
        type: path
        description: 'Help Center ID


          You can look up the ID by going to Settings > Help Center in Gladly, then clicking on the 3 dots next to the Help
          Center and selecting Configure. Help Center ID will be in the URL

          '
      - name: lng
        value: ''
        type: query
        description: 'Language of the answers returned


          Defaults to `en-us`

          '
      - name: audienceId
        value: ''
        type: query
        description: 'Audience ID for answers returned - optional. The Audience ID can be retrieved by going to Settings >
          Audiences in Gladly, then clicking on the Edit button next to the Audience in question. The ID will be in the page
          URL.

          '
    docs: 'Returns an array of answers configured in Help Center sections with their ID and name

      '
  - info:
      name: Get Public Answer
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/orgs/:orgId/answers/:answerId
      params:
      - name: orgId
        value: ''
        type: path
        description: 'id of your organization


          You can look up the ID using the [Get organization](index.html#tag/Organization) API.

          '
      - name: answerId
        value: ''
        type: path
        description: id of the answer
      - name: lng
        value: ''
        type: query
        description: language code
    docs: 'Returns the answer with the provided id.

      '
- info:
    name: Answer Management
    type: folder
  items:
  - info:
      name: Add Answer
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/answers
      body:
        type: json
        data: '{}'
    docs: 'Adds an answer to the list of answers.

      '
  - info:
      name: Get Answer
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/answers/:answerId
      params:
      - name: answerId
        value: ''
        type: path
        description: id of the answer
    docs: 'Returns the answer requested.

      '
  - info:
      name: Update Answer
      type: http
    http:
      method: PATCH
      url: https://{organization}.gladly.com/api/v1/api/v1/answers/:answerId
      params:
      - name: answerId
        value: ''
        type: path
        description: id of the answer
      body:
        type: json
        data: '{}'
    docs: 'Updates the answer with the provided id.

      '
  - info:
      name: Delete Answer
      type: http
    http:
      method: DELETE
      url: https://{organization}.gladly.com/api/v1/api/v1/answers/:answerId
      params:
      - name: answerId
        value: ''
        type: path
        description: id of the answer
    docs: 'Deletes the answer with the provided id.

      '
  - info:
      name: Get Answer Content
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/answers/:answerId/languages/:language/type/:type
      params:
      - name: answerId
        value: ''
        type: path
        description: id of the answer
      - name: language
        value: ''
        type: path
        description: Language code according to ISO 639 format. The specified language must also be configured for the org.
      - name: type
        value: ''
        type: path
        description: Type of answer. Must be one of `public`, `email`, `messaging`, or `reference`.
    docs: 'Returns the answer content requested by language and type.

      '
  - info:
      name: Add or Update Answer Content
      type: http
    http:
      method: PUT
      url: https://{organization}.gladly.com/api/v1/api/v1/answers/:answerId/languages/:language/type/:type
      params:
      - name: answerId
        value: ''
        type: path
        description: id of the answer
      - name: language
        value: ''
        type: path
        description: Language code according to ISO 639 format. The specified language must also be configured for the org.
      - name: type
        value: ''
        type: path
        description: Type of answer. Must be one of `public`, `email`, `messaging`, or `reference`.
      body:
        type: json
        data: '{}'
    docs: 'Adds or Updates the answer content for the specified answer by language and type.

      '
  - info:
      name: Delete Answer Content
      type: http
    http:
      method: DELETE
      url: https://{organization}.gladly.com/api/v1/api/v1/answers/:answerId/languages/:language/type/:type
      params:
      - name: answerId
        value: ''
        type: path
        description: id of the answer
      - name: language
        value: ''
        type: path
        description: Language code according to ISO 639 format. The specified language must also be configured for the org.
      - name: type
        value: ''
        type: path
        description: Type of answer. Must be one of `public`, `email`, `messaging`, or `reference`.
    docs: 'Deletes the answer content for the specified answer by language and type.

      '
- info:
    name: Agents
    type: folder
  items:
  - info:
      name: List Agents
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/agents
    docs: 'Returns a list of agents.

      '
  - info:
      name: Get Agent
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/agents/:agentId
      params:
      - name: agentId
        value: ''
        type: path
        description: id of the agent
    docs: 'Get an agent profile by their unique id.

      '
  - info:
      name: Get Agent CallRecorder
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/agents/:agentId/call-recorder
      params:
      - name: agentId
        value: ''
        type: path
        description: Gladly ID or Gladly email address of the agent
    docs: 'Get an agent call recording status.

      '
  - info:
      name: Update Agent CallRecorder
      type: http
    http:
      method: PATCH
      url: https://{organization}.gladly.com/api/v1/api/v1/agents/:agentId/call-recorder
      params:
      - name: agentId
        value: ''
        type: path
        description: Gladly ID or Gladly email address of the agent
      body:
        type: json
        data: '{}'
    docs: 'Update an agent''s active call recording status. This API allows changing the `recording` property.

      '
- info:
    name: Audiences
    type: folder
  items:
  - info:
      name: List Audiences
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/audiences
    docs: 'Returns a list of audiences.

      '
- info:
    name: Business Hours
    type: folder
  items:
  - info:
      name: List Business Hours
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/business-hours
    docs: 'Returns a list of all business hours configurations for your organization.

      '
  - info:
      name: Create Business Hours
      type: http
    http:
      method: POST
      url: https://{organization}.gladly.com/api/v1/api/v1/business-hours
      body:
        type: json
        data: '{}'
    docs: 'Creates a new business hours configuration for your organization.

      '
  - info:
      name: Get Business Hours
      type: http
    http:
      method: GET
      url: https://{organization}.gladly.com/api/v1/api/v1/business-hours/:businessHoursId
      params:
      - name: businessHoursId
        value: ''
        type: path
        description: ID of the business hours configuration
    docs: 'Returns a single business hours configuration by its unique ID.

      '
  - info:
      name: Update Business Hours
      type: http
    http:
      method: PUT
      url: https://{organization}.gladly.com/api/v1/api/v1/business-hours/:businessHoursId
      params:
      - name: businessHoursId
        value: ''
        type: path
        description: ID of the business hours configuration
      body:
        type: json
        data: '{}'
    docs: 'Updates an existing business hours configuration. The `version` field must match the current version of the business
      hours to prevent conflicting updates.

      '
  - info:
      name: Delete Business Hours
      type: http
    http:
      method: DELETE
      url: https://{organization}.gladly.com/api/v1/api/v1/business-hours/:businessHoursId
      params:
      - name: businessHoursId
        value: ''
        type: path
        description: ID of the business hours configuration
    docs: 'Deletes a business hours configuration. The primary business hours configuration cannot be deleted.

      '
- info:
    name: Organization
    type: folder
  items:
  - info:
      name: Get Organization
      type: http
    http:
      method: GET
      url: https://{o

# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/gladly/refs/heads/main/apis.yml