Used to initiate a new dialog with a customer by sending the first message. Note: To send RCS to multiple recipients simultaneously, use the endpoint Bundles.

Start a new conversation #

Quick start #

💻
Quick start (cURL)
Copy to clipboard
curl -X POST https://api.ip1.net/v3/conversations \
  -H "Authorization: Bearer API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "brand": "My-Store-Inc",
  "agent": "Customer Service",
  "recipient": "46700123456",
  "type": "Carousel",
  "carousel": [
    {
      "title": "Summer Campaign 2026",
      "content": "Get 20% off all sunglasses!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": 1,
      "order": 0
    },
    {
      "title": "Summer Sale 2026",
      "content": "Get 20% off all sunglasses!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": 1,
      "order": 2
    },
  ],
  "suggestions": [
    {
      "text": "View selection",
      "type": 1,
      "order": 0,
      "url": "https://site.se/shop",
      "postbackData": "shop_click"
    },
    {
      "text": "Call the store",
      "type": 4,
      "order": 1,
      "phoneNumber": "468123456",
      "postbackData": "call_click"
    }
  ]
}'"

Call #

Endpoint: /conversations

Methodology: POST

Example of call data #

📋
filename.js
Copy to clipboard
{
  "brand": "Min-Butik-AB",
  "agent": "Customer Service",
  "recipient": "46700123456",
  "type": "Carousel",
  "carousel": [
    {
      "title": "Summer Sale 2026",
      "content": "Get 20% off all sunglasses!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": 1,
      "order": 0
    },
    {
      "title": "Summer Sale 2026",
      "content": "Get 20% off all sunglasses!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": 1,
      "order": 2
    },
  ],
  "suggestions": [
    {
      "text": "View selection",
      "type": 1,
      "order": 0,
      "url": "https://site.se/shop",
      "postbackData": "shop_click"
    },
    {
      "text": "Call the store",
      "type": 4,
      "order": 1,
      "phoneNumber": "468123456",
      "postbackData": "call_click"
    }
  ]
}

Fields for request data #

Field nameDescription of the projectRequiredTypeExample
brandYour brand name Yesstring"My Shop Ltd."
agentYour agent's nameYesstring”Customer service”
recipientRecipient's numberYesObject”46700123456”: { ”name”: ”Kalle” }
contentThe content of the message itselfYes (Except when using Cards)string”Hi {name}! Your order has now been shipped.”
typeMessage in conversation typeYesstring”Carousell”
carouselA list of multiple cards that create a CarouselRequired if the type is ”Carousel”Array(See table below)
cardContains image, headline, and text (Rich Card).Required if the type is ”Card”Object(See table below)
suggestionsA list of interactive buttons.No, it is not.Array(See table below)
uniqueIdUnique ID to avoid duplicates.No, it is not.string”order-12345-id”

Field details card #

Field nameDescription of the projectRequiredTypeExample
titleThe heading displayed at the top of the card.Yesstring”Spring Sale!”
contentThe descriptive text on the card.Yesstring”We are emptying the warehouse now.”
typeCard type (2 for Rich Card in carousel).YesInteger2
orderOrder in which cards are shownRequired if the ”Carousel” type is usedInteger1
mediaUrlURL to image or video (public link).No, it is not.URI”https://site.se/image.jpg”

Field details suggestions #

Field nameDescription of the projectRequiredTypeExample
textThe text on the button.Yesstring”Shop now”
typeAction type (2=URL, 5=Share Location, 6=Call).YesInteger2
orderDetermines the order suggestions are displayed.Yes, with more than one suggestionInteger”2”
postbackDataThe data you get back upon a click.Yesstring”track_sale_click”
URLTarget URL (required for type 2).No, it is not.string”https://site.se/shop”
TitleTitle for Show Location on Map and Calendar Event.Required for types 5 and 3string”Our Store”
DescriptionEvent description.Required for Type 3string”Welcome for a haircut!”
Start Time
The start time for a calendar event.
Required for Type 3string”2026-07-01T14:30”
EndTime
The end time for a calendar event.
Required for Type 3string”2026-07-01T15:30”
LatitudeLatitude to display a location on a map.Required at Type 5string”58.3944347”
LongitudeThe longitude to display a location on a map.Required at Type 5string”13.8601547,18”
PhoneNumberThe phone number being dialed when the button is pressedRequired at type 6string”46101606060”

Responsibility #

Returns the first message in the created conversation.

Example of response data #

📋
Response data (JSON)
Copy to clipboard
{
  "id": "65eb3d14f1234567890abcdef",
  "conversationId": "65e15d14f1234547890ghijkl",
  "brand": "my-store-inc",
  "agent": "customer-service"
  "recipient": "46700123456",
  "type": "Carousell",
  "content": "Hello! How can we help you today?",
    "card": {
    "title": "Order #12345",
    "content": "The package is expected to arrive tomorrow.",
    "mediaUrl": "https://cdn.site.se/package.jpg",
    "type": 1,
    "height": 2
  },
  "suggestions": [
    {
      "text": "Track Package",
      "type": 1,
      "url": "https://frakt.se/track/123",
      "postbackData": "track_click",
      "order": 0
    }
  ]
  "modified": "2026-03-09T08:00:05Z",
  "uniqueId": "conversation-12345-id"
}

Fields for response data #

Field nameDescription of the projectTypeExample
idMessage ID to which the current conversation belongsstring"65eb3d14f1234567890abcdef"
brandBrand's internal name.string”my-store-ab”
agentThe agent handling the conversation.string”customer service”
conversationIdThe current conversation IDstring”65e15d14f1234547890ghijkl”
recipientRecipient's numberObject”46700123456”: { ”name”: ”Kalle” }
contentThe first message in the conversation contentstring”Hi! How can we help you today?”
typeThe first message in the conversation typestring”Carousell”
modifiedTimestamp of last modification (status update, response, etc.)DateTime”2026-03-09T08:00:05Z”
uniqueIdUnique ID to avoid duplicates.string”conversation-12345-id”

Continue conversation #

Used to send additional messages in an ongoing conversation.

Quick start #

💻
Quick start (cURL)
Copy to clipboard
curl -X POST https://api.ip1.net/v3/conversations/65e15d14f1234547890ghijkl \
  -H "Authorization: Bearer API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"content": "Here is the information you requested."}'

Call #

Endpoint: /conversations/{conversation}

Methodology: GET

Example of call data #

🔷
Call (URL)
Copy to clipboard
https://api.ip1.net/v3/conversations/65e15d14f1234547890ghijkl

Call fields #

Field nameDescription of the projectRequiredTypeExample
idConversation ID you wish to continue.YesQuery Parameter65e15d14f1234547890ghijkl

Responsibility #

Returns details about the new message in the conversation.

Example of response data #

📋
Response data (JSON)
Copy to clipboard
Hello! How can we help you today?

Example of response data #

Field nameDescription of the projectTypeExample
idNew message IDstring"65eb3d14f1234567890abcdef"
brandBrand's internal name.string”my-store-ab”
agentThe agent handling the conversation.string”customer service”
conversationIdThe current conversation IDstring”65e15d14f1234547890ghijkl”
recipientRecipient's numberObject”46700123456”: { ”name”: ”Kalle” }
contentThe new message's contentstring”Hi! How can we help you today?”
typeNew message typestring”Carousell”
modifiedLast modified timestampDateTime”2026-03-09T08:00:05Z”
uniqueIdUnique ID to avoid duplicates.string”conversation-12345-id”