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
curl -X POST https: //api.ip1.net/v3/conversations \
  -H "Authorization: Bearer API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "brand": "Min-Butik-AB",
  "agent": "Kundservice",
  "recipient": "46700123456",
  "fallbackPolicy": "FallbackOnNoCapability,FallbackOnFailure, FallbackAfterTimeout",
  "fallbackMessage": "Detta är ett fallbackmeddelande",
  "fallbackTimeOutSeconds": 300,
  "type": "Carousel",
  "carousel": [
    {
      "title": "Sommarkampanj 2026",
      "content": "Få 20% rabatt på alla solglasögon!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": "Carousel",
      "order": 0,
      "height": "Medium",
      "orientation": "Horizontal"
    },
    {
      "title": "Sommarkampanj 2026",
      "content": "Få 20% rabatt på alla solglasögon!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": "Carousel",
      "order": 1
      "height": "Medium",
      "orientation": "Horizontal"
    },
  ],
  "suggestions": [
    {
      "text": "Se utbud",
      "type": "OpenUrlAction",
      "order": 0,
      "url": "https://site.se/shop",
      "postbackData": "shop_click"
    },
    {
      "text": "Ring butik",
      "type": "DialAction",
      "order": 1,
      "phoneNumber": "468123456",
      "postbackData": "call_click"
    }
  ]
}'

Call #

Endpoint: /conversations

Methodology: POST

Example of call data #

📋
filename.js
Copy
{
  "brand": "Min-Butik-AB",
  "agent": "Kundservice",
  "recipient": "46700123456",
  "fallbackPolicy": "FallbackOnNoCapability,FallbackOnFailure,FallbackAfterTimeout",
  "fallbackMessage": "Detta är ett fallbackmeddelande",
  "fallbackTimeOutSeconds": 300,
  "type": "Carousel",
  "carousel": [
    {
      "title": "Sommarkampanj 2026",
      "content": "Få 20% rabatt på alla solglasögon!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": "Carousel",
      "order": 0,
      "height": "Medium",
      "orientation":
    },
    {
      "title": "Sommarkampanj 2026",
      "content": "Få 20% rabatt på alla solglasögon!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": "Carousel",
      "order": 1,
      "height": "Medium",
      "orientation": "Horizontal"
    },
  ],
  "suggestions": [
    {
      "text": "Se utbud",
      "type": "OpenUrlAction",
      "order": 0,
      "url": "https://site.se/shop",
      "postbackData": "shop_click"
    },
    {
      "text": "Ring butik",
      "type": "DialAction",
      "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.”
fallback policyType of SMS fallback policy (NoFallback, FallbackOnNoCapability, FallbackOnFailure, FallbackAfterTimeout, CustomerControlledFallback).No (Default is NoFallback)string”FallbackOnNoCapability,FallbackOnFailure, FallbackAfterTimeout”
fallback messageSpecific message that is sent out as a fallbackYes, when using Carousel. Cards or content are automatically generated if nothing is specified.string”This is a fallback message”
fallbackTimeoutSecondsTime in seconds before the fallback policy activates (If FallbackAfterTimeOut is selected)Yes, if the FallBackAfterTimout option is selected.Integer500
typeMessage in conversation typeYesstring”Carousel”
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.”
typeType of card (Carousel for Rich Card in carousel).No, it is not.Integer”Carousel”
orderOrder in which cards are shownNo, it is not.Integer1
HeightThe height of the cardNo, it is not.String (enum)”Medium”
widthThe width of the cardNo, it is not.String (enum(”Medium”
orientationLocation of the cardNo, it is not.String (enum)”Horizontal”
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”
typeType of action (”OpenUrlAction”= URL, ”ShareLocationAction”= Share Location, ”ViewLocationAction”= View Location, ”DialAction”= Call), ”CreateCalendarEventAction” = Create calendar event.YesInteger”OpenUrlAction”
orderDetermines the order suggestions are displayed.No, it is not.Integer2
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 the ShareLocationAction and ViewLocationAction typesstring”Our Store”
DescriptionEvent description.Required when creating a CreateCalendarEventActionstring”Welcome for a haircut!”
Start Time
The start time for a calendar event.
Required when creating a CreateCalendarEventActionstring”2026-07-01T14:30”
EndTime
The end time for a calendar event.
Required when creating a CreateCalendarEventActionstring”2026-07-01T15:30”
LatitudeLatitude to display a location on a map.Required when using the ViewLocationAction typestring”58.3944347”
LongitudeThe longitude to display a location on a map.Required when using the ViewLocationAction typestring”13.8601547,18”
PhoneNumberThe phone number being dialed when the button is pressedRequired for the DialAction typestring”46101606060”

Responsibility #

Returns the first message in the created conversation.

Example of response data #

📋
Response data (JSON)
Copy
{
  "id": "65eb3d14f1234567890abcdef",
  "conversationId": "65e15d14f1234547890ghijkl",
  "owner": "ip1-xxxx",
  "brand": "min-butik-ab",
  "agent": "kundservice"
  "recipient": "46700123456",
  "direction": "MT",
  "type": "Carousell",
  "content": "Hej! Hur kan vi hjälpa dig idag?",
  "modified": "2026-03-09T08:00:05Z",
  "fallback": {
    "fallbackPolicy": "FallbackOnNoCapability,FallbackOnFailure",
    "fallbackMessage": "Detta är ett fallback-meddelande",
    "fallbackStatus": "Unknown"
  },
  "statuses": [
      {
      "code": 101,
      "duration": 0,
      "created": "2026-10-02T11:20:21.4129735Z"
      }
    ]
}

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”
ownerThe account that started the conversationstring”ip1-xxxx”
recipientRecipient's numberObject”46700123456”: { ”name”: ”Kalle” }
directionIf the message in the conversation is an incoming (MO) or outgoing (MT).string”MT”
contentThe first message in the conversation's content (If the linked content is linked to a card)string”Hi! How can we help you today?”
typeThe first message in the conversation typestring”Carousell”
fallbackAn object to collect information about Fallback.ObjectSee the table below for details.
modifiedTimestamp of last modification (status update, response, etc.)DateTime”2026-03-09T08:00:05Z”
uniqueIdUnique ID to avoid duplicates.string”conversation-12345-id”

Response data for the fallback object #

Field nameDescription of the projectTypeExample
fallback policyType of SMS fallback policy (NoFallback, FallbackOnNoCapability, FallbackOnFailure, FallbackAfterTimeout, CustomerControlledFallback).

Part of the Falback object.
string”FallbackOnFailure, FallbackOnNoCapability”
fallback messageSpecific message sent out when fallback is activatedstring”This is a fallback message”
fallback statusStatus for fallback (Unknown,
Pending,
Late,
Completed,
Failed,)
String (enum)”Pending”
fallback timeoutShows how long it takes before the fallback policy takes effect. Occurs at the ”FallbackAfterTimeout” policy”Time00:05:00
fallback reasonA reason for the fallback was triggered.string”FallbackOnNoCapability”
fallbackMessageIdID for the fallback message itselfstring”65eg3d14s1234667890obcdhf”

Continue conversation #

Used to send additional messages in an ongoing conversation.

Quick start #

💻
Quick start (cURL)
Copy
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: POST

Example of call data #

🔷
Call (URL)
Copy
{
  "fallbackPolicy": "FallbackOnNoCapability,FallbackOnFailure,FallbackAfterTimeout",
  "fallbackMessage": "Detta är ett fallbackmeddelande",
  "fallbackTimeOutSeconds": 300,
  "type": "Carousel",
  "carousel": [
    {
      "title": "Sommarkampanj 2026",
      "content": "Få 20% rabatt på alla solglasögon!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": "Carousel",
      "order": 0,
      "height": "Medium",
      "orientation":
    },
    {
      "title": "Sommarkampanj 2026",
      "content": "Få 20% rabatt på alla solglasögon!",
      "mediaUrl": "https://cdn.site.se/promo-sun.jpg",
      "type": "Carousel",
      "order": 1,
      "height": "Medium",
      "orientation": "Horizontal"
    },
  ],
  "suggestions": [
    {
      "text": "Se utbud",
      "type": "OpenUrlAction",
      "order": 0,
      "url": "https://site.se/shop",
      "postbackData": "shop_click"
    },
    {
      "text": "Ring butik",
      "type": "DialAction",
      "order": 1,
      "phoneNumber": "468123456",
      "postbackData": "call_click"
    }
  ]
}

Call fields #

See table for Start a conversation


Responsibility #

Returns details about the new message in the conversation.

Example of response data #

See the response data to start a new conversation