Browse Developers
Build with OnloAPI v1View as Markdown

Conversations API v1 Quick Start

Send your first customer conversation to Onlo and find it in Inbox.

For
Teams that want to send customer conversations from their app to Onlo Inbox
Needs
You need a full-access Onlo API key.
Time
10 minutes

Before you start

  • Plan: Onlo Starter or above
  • Access: Sign in as an Owner or Admin
  • API tool: Use Postman, curl, or another API client

How to send your first conversation

Use the Conversations API to send customer conversations from your app to Onlo, so your team can handle them in Inbox.

  1. Test connection

    This proves your API key can connect to Onlo with Full access.

    Method
    GET
    URL
    https://onlo.ai/api/v1/ping
    Authorization
    TypeBearer TokenTokenPaste your API keyOpen the Authorization tab in Postman.
    Headers
    Content-Typeapplication/jsonOpen the Headers tab in Postman.

    For API key and security details, click here.

    NextKeep the same API key. You will use it to create the conversation.

  2. Create a conversation

    This creates one test conversation for Maya, asks Onlo to answer the first customer message, and stores four conversation attributes.

    Fields used here

    external_idRequired
    Your unique ID for this conversation in your system. Reuse it if you retry.
    bodyOptional
    The first customer message. Onlo answers it using the workspace’s normal settings. Omit it when you only need an empty conversation record.
    fromRequired
    The customer attached to this conversation.
    from.external_id or from.idRequired
    Your unique ID for this customer, or an existing Onlo contact ID. Use only one.
    from.typeOptional
    Use contact. The API also accepts user, lead, and customer.
    from.name / from.email / from.phoneOptional
    Customer details your team can recognize in Inbox.
    custom_attributesOptional
    Flat string, number, or true-or-false values stored on this conversation, not on the contact.
    Method
    POST
    URL
    https://onlo.ai/api/v1/conversations
    Authorization
    TypeBearer TokenTokenPaste your API keyOpen the Authorization tab in Postman.
    Headers
    Content-Typeapplication/jsonOpen the Headers tab in Postman.

    You send external_id. Onlo returns id. Use the returned id in the Get and Update URLs.

    BodyBody → raw → JSON
    {
      "external_id": "support_case_1048",
      "from": {
        "type": "contact",
        "external_id": "customer_4821",
        "name": "Maya Patel",
        "email": "maya.patel@example.com"
      },
      "custom_attributes": {
        "order": "ORD-1001",
        "reason": "It's something else",
        "attempts": 2,
        "paid": false
      },
      "body": "I need help with my order."
    }

    For every supported create field, click here.

    NextCopy the returned id. You will paste that conversation ID into Steps 4 and 5.

  3. Get the conversation

    This proves Onlo saved the conversation and its attributes unchanged.

    Fields used here

    conversation_idRequired
    The id returned by Onlo in Step 3.
    Method
    GET
    URL
    https://onlo.ai/api/v1/conversations/<conversation_id>Replace <conversation_id> with the id you copied in Step 3.
    Authorization
    TypeBearer TokenTokenPaste your API keyOpen the Authorization tab in Postman.
    Headers
    Content-Typeapplication/jsonOpen the Headers tab in Postman.

    For full Get details, click here.

    NextKeep the same conversation ID. You will update this conversation next.

  4. Update the conversation

    This changes attempts to 3 and removes reason by sending null.

    Fields used here

    conversation_idRequired
    The id returned by Onlo in Step 3.
    custom_attributesRequired
    Only the attributes you want to change or remove.
    attemptsOptional
    Sending 3 replaces the previous value of 2.
    reasonOptional
    Sending null removes this attribute.
    Method
    PUT
    URL
    https://onlo.ai/api/v1/conversations/<conversation_id>Replace <conversation_id> with the id you copied in Step 3.
    Authorization
    TypeBearer TokenTokenPaste your API keyOpen the Authorization tab in Postman.
    Headers
    Content-Typeapplication/jsonOpen the Headers tab in Postman.
    BodyBody → raw → JSON
    {
      "custom_attributes": {
        "attempts": 3,
        "reason": null
      }
    }

    For full Update details, click here.

    NextKeep customer_4821 and ORD-1001. You will use both to find this conversation.

  5. Find the conversation

    This searches for Maya’s test conversation using the same customer and order values.

    Fields used here

    queryRequired
    The filters Onlo should match.
    contact.external_idRequired
    Limits the search to customer_4821.
    custom_attributes.orderOptional
    Narrows the result to order ORD-1001.
    paginationOptional
    Controls how many matching conversations Onlo returns.
    Method
    POST
    URL
    https://onlo.ai/api/v1/conversations/search
    Authorization
    TypeBearer TokenTokenPaste your API keyOpen the Authorization tab in Postman.
    Headers
    Content-Typeapplication/jsonOpen the Headers tab in Postman.
    BodyBody → raw → JSON
    {
      "query": {
        "operator": "AND",
        "value": [
          {
            "field": "contact.external_id",
            "operator": "=",
            "value": "customer_4821"
          },
          {
            "field": "custom_attributes.order",
            "operator": "=",
            "value": "ORD-1001"
          }
        ]
      },
      "pagination": {
        "per_page": 50,
        "starting_after": null
      }
    }

    For all search fields and operators, click here.

    NextOpen Onlo Inbox and confirm the same conversation is visible to your team.

  6. Verify in Onlo

    Open Dashboard → Inbox, select Maya’s test conversation, then open This conversation → Custom attributes.

    Focused Onlo Inbox screenshot marking the test conversation to select
    Select the test conversation.
    Focused Onlo sidebar screenshot marking This conversation and Custom attributes
    Open This conversation and check Custom attributes.

    The screenshots are cropped and marked so you can find the two controls quickly.

    For the complete API Reference, click here.

Your Conversations API setup is working.