⚙️
Channel360
HomeSign InSign Up
  • 🏠ChannelMobile Docs
  • Quick Start
    • Channel360 API
    • AgentChat API
    • Channel360 Guide
      • Dashboard
      • Templates
        • Template Creation
        • Template Configuration
      • Groups
        • Deleting Groups
        • Managing Group Details
      • Campaign
        • Campaign Creation
        • Campaign Statistics
      • Subscribers
        • Managing Subscribers
        • Subscriber Profile
  • Whatsapp Business API
    • WABA Prerequisites
    • WhatsApp Account Health
  • Our Products
    • Products
      • AgentChat
      • SMS
      • Broadcasting
      • ChatBot
  • API Usage
    • Using the Channel360 V1.1 API
      • Notifications
      • Templates
        • Create Templates
        • Read / Get Templates
        • Update Templates
        • Delete Templates
      • Webhooks
      • Conversations
        • Send Interactive Messages
        • Send Text Message
        • Send Media Message
          • Send Video Message
          • Send Image Message
          • Send File Message
        • Get Conversation History
  • Reference
    • API Reference
      • AgentChat API
      • Channel360 V1.1 API
  • FAQs
    • General FAQs
    • Channel360 FAQs
      • Templates
      • Notification Status
    • Technical FAQs
Powered by GitBook
On this page

Was this helpful?

Edit on GitHub
  1. Reference
  2. API Reference

Channel360 V1.1 API

This document contains all supported endpoints.

PreviousAgentChat APINextGeneral FAQs

Last updated 4 months ago

Was this helpful?


Notifications

Templates

Organisations

Users

Webhooks

Conversations

Request to List Templates

get

API request to List templates

Path parameters
orgIdstringRequired

Organization ID

Responses
200
Successfully retrieved Template List
application/json
get
GET /v1.1/org/{orgId}/templates/list HTTP/1.1
Host: www.channel360.co.za
Accept: */*
200

Successfully retrieved Template List

{
  "tags": {
    "head": [],
    "body": {
      "index": 1,
      "type": "hard-coded",
      "value": "tag"
    }
  },
  "organization": "659039655cf56a8df0c8908",
  "name": "order_shipped",
  "description": "A Template to test an alert",
  "namespace": "default",
  "language": "en_US",
  "category": "ALERT_UPDATE",
  "components": [],
  "status": "APPROVED",
  "enabled": true,
  "messageTemplateId": "232136887459187",
  "createdAt": "2023-04-05T09:49:51.064Z",
  "updatedAt": "2023-09-13T11:12:53.984Z",
  "version": 121,
  "id": "1443f649u7053539346"
}

Send text request

post

API call to send text

Path parameters
orgIdstringRequired
appUserstringRequired
Body
textstringRequiredExample: Hello World
Responses
200
Successfully Replied.
post
POST /v1.1/org/{orgId}/whatsapp/appuser/:{appUser}/reply HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 22

{
  "text": "Hello World"
}
200

Successfully Replied.

No content

Send video request

post

API request to send a video

Path parameters
orgIdstringRequired
appUserstringRequired
Body
typestringRequiredExample: video
mediaUrlstringRequiredExample: https://videoLink.mp4
altTextstringRequiredExample: Here is an video attached to the message
Responses
200
Successfully Replied.
application/json
post
POST /v1.1/org/{orgId}/whatsapp/appuser/:{appUser}/reply/ HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 104

{
  "type": "video",
  "mediaUrl": "https://videoLink.mp4",
  "altText": "Here is an video attached to the message"
}
200

Successfully Replied.

{
  "conversation": {
    "_id": "7g5a782574s53d87487537642",
    "appMakerLastRead": "8475635121.871",
    "appUserLastRead": "9593289247.783",
    "unreadCount": "3"
  },
  "message": {
    "_id": "662f89b15833c2b5bc9ae96e",
    "role": "appMaker",
    "authorId": "05thfg521jhf505h",
    "type": "video",
    "avatarUrl": "https://www.gravatar.com/avatar/00000000000000000000000000000000.png?s=200&d=mm",
    "mediaUrl": "https://videoLink.mp4",
    "mediaSize": "5190",
    "altText": "Here is a video attached to the message",
    "received": "1714391473.791",
    "mediaType": "video",
    "source": {
      "type": "api"
    }
  }
}

Send file request

post

API request to send a file

Path parameters
appUserstringRequired
Body
typestring · enumRequiredExample: filePossible values:
mediaUrlstringRequiredExample: https://www.w3.org/dummy.pdf
altTextstringRequiredExample: Here is a pdf attached
Responses
200
Successfully Replied.
application/json
post
POST /v1.1/org/orgId/whatsapp/appuser/:{appUser}/reply/ HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 92

{
  "type": "file",
  "mediaUrl": "https://www.w3.org/dummy.pdf",
  "altText": "Here is a pdf attached"
}
200

Successfully Replied.

{
  "conversation": {
    "_id": "5x3v39263cnmvb9537548416",
    "appMakerLastRead": "1714391363",
    "appUserLastRead": "1714390358.894",
    "unreadCount": "2"
  },
  "message": {
    "_id": "edf85dfg2h82d5f2d93s",
    "role": "appMaker",
    "authorId": "2wm6nj7i8d09fg8h45c7",
    "type": "file",
    "avatarUrl": "https://www.gravatar.com/avatar/00000000000000000000000000000000.png?s=200&d=mm",
    "mediaUrl": "https://www.w3.org/dummy.pdf",
    "mediaSize": "15658",
    "altText": "Here is a pdf attached",
    "received": "1714391363",
    "mediaType": "application/pdf",
    "source": {
      "type": "api"
    }
  }
}

Send image request

post

API request to send an image

Path parameters
orgIdstringRequired
appUserstringRequired
Body
typestring · enumRequiredExample: imagePossible values:
mediaUrlstringRequiredExample: https://example.org/test.png
altTextstringRequiredExample: Here is an image attached to the message
Responses
200
Successfully Replied.
application/json
post
POST /v1.1/org/{orgId}/whatsapp/appuser/{appUser}/reply HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 111

{
  "type": "image",
  "mediaUrl": "https://example.org/test.png",
  "altText": "Here is an image attached to the message"
}
200

Successfully Replied.

{
  "conversation": {
    "_id": "7g5a782574s53d87487537642",
    "appMakerLastRead": "8475635121.871",
    "appUserLastRead": "9593289247.783",
    "unreadCount": "3"
  },
  "message": {
    "_id": "662f89b15833c2b5bc9ae96e",
    "role": "appMaker",
    "authorId": "05thfg521jhf505h",
    "type": "image",
    "avatarUrl": "https://www.gravatar.com/avatar/00000000000000000000000000000000.png?s=200&d=mm",
    "mediaUrl": "https://example.org/test.png",
    "mediaSize": "5190",
    "altText": "Here is an image attached to the message",
    "received": "1714391473.791",
    "mediaType": "image/png",
    "source": {
      "type": "api"
    }
  }
}

Request for a list of enabled & configured templates

get

API request to list enabled & configured templates

Authorizations
Query parameters
enabledboolean · enumOptional

Filter templates by enabled status

Example: truePossible values:
filterstringOptional

Filter templates by configuration (configured)

Example: configured
Responses
200
Successfully retrieved template enabled and configured list
application/json
get
GET /v1.1/org/orgId/templates/list HTTP/1.1
Host: www.channel360.co.za
Authorization: Bearer JWT
Accept: */*
200

Successfully retrieved template enabled and configured list

{
  "tags": {
    "head": [],
    "body": {
      "index": 1,
      "type": "hard-coded",
      "value": "tag"
    }
  },
  "organization": "659039655cf56a8df0c8908",
  "name": "order_shipped",
  "description": "A Template to test an alert",
  "namespace": "default",
  "language": "en_US",
  "category": "ALERT_UPDATE",
  "components": [],
  "status": "APPROVED",
  "enabled": true,
  "messageTemplateId": "232136887459187",
  "createdAt": "2023-04-05T09:49:51.064Z",
  "updatedAt": "2023-09-13T11:12:53.984Z",
  "version": 121,
  "id": "1443f649u7053539346"
}

Request a list of templates by their enabled status

get

API request to list enabled templates

Authorizations
Query parameters
enabledboolean · enumOptional

Filter templates by their enabled status

Example: truePossible values:
Responses
200
Successfully retrieved enabled templates
application/json
get
GET /v1.1/org/:orgId/templates/list HTTP/1.1
Host: www.channel360.co.za
Authorization: Bearer JWT
Accept: */*
200

Successfully retrieved enabled templates

{
  "tags": {
    "head": [],
    "body": {
      "index": 1,
      "type": "hard-coded",
      "value": "tag"
    }
  },
  "organization": "659039655cf56a8df0c8908",
  "name": "order_shipped",
  "description": "A Template to test an alert",
  "namespace": "default",
  "language": "en_US",
  "category": "ALERT_UPDATE",
  "components": [],
  "status": "APPROVED",
  "enabled": true,
  "messageTemplateId": "232136887459187",
  "createdAt": "2023-04-05T09:49:51.064Z",
  "updatedAt": "2023-09-13T11:12:53.984Z",
  "version": 121,
  "id": "1443f649u7053539346"
}

Create a Video Template

post

API call to create a Video Template

Body
namestringOptionalExample: example_of_a_video_template
descriptionstringOptionalExample: Channel Mobile video template example
namespacestringOptionalExample: default
languagestringOptionalExample: en_US
enabledbooleanOptionalExample: true
categorystring · enumOptionalExample: MARKETINGPossible values:
Responses
200
Successfully created a Video Template
application/json
post
POST /v1.1/organization/:orgId/whatsapp/templates/ HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 720

{
  "name": "example_of_a_video_template",
  "description": "Channel Mobile video template example",
  "namespace": "default",
  "language": "en_US",
  "enabled": true,
  "category": "MARKETING",
  "components": [
    {
      "type": "HEADER",
      "format": "VIDEO",
      "example": {
        "header_url": [
          "https://channel360-template-tags.s3.af-south-1.amazonaws.com/Zendesk+Overview+Demo.mp4"
        ]
      }
    },
    {
      "type": "BODY",
      "text": "Hi {{1}}, watch this video",
      "example": {
        "body_text": [
          "John"
        ]
      }
    },
    {
      "type": "BUTTONS",
      "buttons": [
        {
          "type": "QUICK_REPLY",
          "text": "Looks Good"
        }
      ]
    }
  ],
  "tags": {
    "head": {
      "index": 1,
      "type": "video",
      "url": "https://channel360-template-tags.s3.af-south-1.amazonaws.com/2024-02-08T14%3A21%3A52.234Z-TEST%20VIDEO.mp4"
    },
    "body": {
      "index": 1,
      "type": "subscriber-field",
      "feilds": "firstName"
    }
  }
}
200

Successfully created a Video Template

{
  "organization": "6159580535681de23490",
  "name": "example_of_a_video_template",
  "description": "Channel Mobile video template example",
  "namespace": "default",
  "language": "en_US",
  "enabled": true,
  "category": "MARKETING",
  "components": [
    {
      "type": "HEADER",
      "format": "VIDEO",
      "example": {
        "header_url": [
          "https://channel360-template-tags.s3.af-south-1.amazonaws.com/Zendesk+Overview+Demo.mp4"
        ]
      }
    },
    {
      "type": "BODY",
      "text": "Hi {{1}}, watch this video",
      "example": {
        "body_text": [
          "John"
        ]
      }
    },
    {
      "type": "BUTTONS",
      "buttons": [
        {
          "type": "QUICK_REPLY",
          "text": "Looks Good"
        }
      ]
    }
  ],
  "tags": {
    "head": {
      "index": 1,
      "type": "video",
      "url": "https://channel360-template-tags.s3.af-south-1.amazonaws.com/2024-02-08T14%3A21%3A52.234Z-TEST%20VIDEO.mp4"
    },
    "body": {
      "index": 1,
      "type": "subscriber-field",
      "feilds": "firstName"
    }
  }
}
  • Notifications
  • POSTSend a Notification
  • Templates
  • GETRequest Template
  • GETRequest Template with image in the header
  • GETRequest to List Templates
  • GETRequest for a list of enabled & configured templates
  • GETRequest a list of templates by their enabled status
  • POSTCreate Template (Without Tags)
  • POSTCreate Template (With image and quick reply buttons)
  • POSTCreate Text Template (with Tags)
  • POSTCreate Image Template (with Tags)
  • POSTCreate Text Template (With Tags and Quick Reply Buttons)
  • POSTCreate Image Template (With Tags and Call To Action Buttons)
  • POSTCreate a Video Template
  • PUTUpdate Template
  • PUTUpdate Template (CSV)
  • POSTUpload Template
  • POSTUpload Image
  • POSTIngest Template
  • DELETEDelete Template
  • Organisations
  • GETRequest for an Organization (by ID)
  • Users
  • GETRequest for Organizations by user
  • Webhooks
  • POSTCreate Webhook
  • GETGet Webhooks
  • DELETEDelete Webhook
  • Conversations
  • POSTSend file request
  • POSTSend image request
  • POSTSend text request
  • POSTSend video request

Request Template

get

API call to get a Template.

Path parameters
orgIdstringRequired

Organization ID

Responses
200
Successfully retrieved Template
application/json
get
200

Successfully retrieved Template

Request Template with image in the header

get

API call to get a Template with image in the header

Path parameters
orgIdstringRequired
templateNamestringRequired
Responses
200
Successfully retrieved Template (with image in the header)
application/json
get
200

Successfully retrieved Template (with image in the header)

Delete Template

delete

API call to Delete a Template

Path parameters
messageTemplateIdstringRequired
Responses
200
Successfully Deleted Template
application/json
Responseobject
delete
200

Successfully Deleted Template

Request for an Organization (by ID)

get

API call to get an organization by ID.

Path parameters
orgIdstringRequired

Organization ID

Responses
200
Successfully retrieved organization by ID
application/json
get
200

Successfully retrieved organization by ID

Request for Organizations by user

get

API call from user to get organizations.

Path parameters
userIdstringRequired

User ID

Responses
200
Successfully retrieved user's organizations
application/json
get
200

Successfully retrieved user's organizations

Get Webhooks

get

API request for Webhooks

Path parameters
orgIdstringRequired
Responses
200
Successfully retrieved Webhooks
application/json
get
200

Successfully retrieved Webhooks

Delete Webhook

delete

API call to Delete a Webhook

Path parameters
orgIdstringRequired
webhook-idstringRequired
Responses
200
Webhook deleted successfully
application/json
Responseobject
delete
200

Webhook deleted successfully

Send a Notification

post

API call to Send a Notification

Path parameters
orgIdstringRequired
Body
destinationstringOptionalExample: +27618982358
Responses
201
Notification sent
application/json
post
POST /v1.1/org/{orgId}/notification HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 168

{
  "destination": "+27618982358",
  "message": {
    "type": "template",
    "template": {
      "name": "none_button_test",
      "language": {
        "policy": "deterministic",
        "code": "en_US"
      },
      "components": []
    }
  }
}
201

Notification sent

{
  "notification": {
    "_id": "143d860c5f45c9674687"
  }
}
GET /v1.1/org/{orgId}/templates/test_template HTTP/1.1
Host: www.channel360.co.za
Accept: */*
{
  "tags": {
    "head": {
      "index": 1,
      "type": "hard-coded",
      "value": "TAG"
    },
    "body": [
      {
        "index": 1,
        "type": "hard-coded",
        "value": "TAG"
      },
      {
        "index": 2,
        "type": "hard-coded",
        "value": "TAG"
      }
    ]
  },
  "organization": "344540b058c0ad640439fd0",
  "name": "test_template",
  "description": "auto-ingested - tag configuration required",
  "namespace": "",
  "language": "en_US",
  "category": "MARKETING",
  "components": [
    {
      "type": "HEADER",
      "format": "TEXT",
      "text": "This is some example {{1}} text",
      "buttons": []
    },
    {
      "type": "BODY",
      "text": "hardcoded: {{1}} subscriber-field: {{2}} appanrently this needs to be longer",
      "buttons": []
    }
  ],
  "status": "REJECTED",
  "enabled": false,
  "messageTemplateId": "3392719194307567",
  "version": 0,
  "id": "3452de4d79ue01d929e001df"
}
GET /v1.1/org/{orgId}/templates/{templateName} HTTP/1.1
Host: www.channel360.co.za
Accept: */*
{
  "tags": {
    "head": [
      {
        "type": "image",
        "url": "https://media.newyorker.com/photos/59095bb86552fa0be682d9d0/master/w_2560%2Cc_limit/Monkey-Selfie.jpg"
      }
    ],
    "body": []
  },
  "organization": "232db54t058c00154d64345",
  "name": "demowithpicture",
  "description": "auto-ingested",
  "namespace": "",
  "language": "en",
  "category": "ALERT_UPDATE",
  "components": [],
  "status": "APPROVED",
  "enabled": true,
  "messageTemplateId": "8975875675876677",
  "createdAt": "2022-11-08T13:31:24.035Z",
  "updatedAt": "2022-11-22T12:32:19.469Z",
  "version": 1,
  "id": "6695706dfs9569659765j709"
}

Create Template (Without Tags)

post

API call to create a new Template (Without Tags)

Path parameters
orgIdstringRequired
Body
namestringOptional

The template name must only contain lower case letters, underscores, and numbers

Example: hello_peter_test
descriptionstringOptionalExample: 1234
namespacestringOptional

Can always be default

Example: default
languagestring · enumOptionalExample: en_USPossible values:
enabledbooleanOptionalExample: true
categorystring · enumOptionalExample: ACCOUNT_UPDATEPossible values:
Responses
200
Successfully Created Template (Without Tags)
application/json
post
POST /v1.1/org/{orgId}/whatsapp/templates HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 257

{
  "name": "hello_peter_test",
  "description": "1234",
  "namespace": "default",
  "language": "en_US",
  "enabled": true,
  "category": "ACCOUNT_UPDATE",
  "components": [
    {
      "type": "HEADER",
      "format": "TEXT",
      "text": "1234"
    },
    {
      "type": "BODY",
      "text": "1234"
    },
    {
      "type": "FOOTER",
      "text": "1234"
    }
  ]
}
200

Successfully Created Template (Without Tags)

{
  "organization": "48760b5487768c785ad67458",
  "name": "hello_peter_test",
  "description": "1234",
  "namespace": "default",
  "language": "en_US",
  "enabled": true,
  "status": "PENDING",
  "category": "ACCOUNT_UPDATE",
  "components": [
    {
      "type": "HEADER",
      "format": "TEXT",
      "text": "1234"
    },
    {
      "type": "BODY",
      "text": "1234"
    },
    {
      "type": "FOOTER",
      "text": "1234"
    }
  ],
  "messageTemplateId": "22361316479243229"
}

Create Template (With image and quick reply buttons)

post

API call to create a new Template (With image and quick reply buttons)

Path parameters
orgIdstringRequired
Body
namestringOptionalExample: est_example_with_image_and_buttons
descriptionstringOptionalExample: this is a internal description
namespacestringOptionalExample: channel_test_template
languagestringOptionalExample: en
enabledbooleanOptionalExample: true
categorystring · enumOptionalExample: ALERT_UPDATEPossible values:
Responses
200
Successfully Created Template (With image and quick reply buttons)
application/json
post
POST /v1.1/org/:{orgId}/whatsapp/templates HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 230

{
  "name": "est_example_with_image_and_buttons",
  "description": "this is a internal description",
  "namespace": "channel_test_template",
  "language": "en",
  "enabled": true,
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": [],
    "body": []
  }
}
200

Successfully Created Template (With image and quick reply buttons)

{
  "organization": "2387db540b058c001aad637",
  "name": "est_example_with_image_and_buttons",
  "description": "this is a internal description",
  "namespace": "channel_test_template",
  "language": "en",
  "enabled": true,
  "status": "PENDING",
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": [],
    "body": []
  },
  "messageTemplateId": "17361379243567"
}

Create Text Template (with Tags)

post

API call to create a new Text Template (with Tags)

Body
namestringOptionalExample: test_text_with_tags_button_api_2
descriptionstringOptionalExample: Test in API
namespacestringOptionalExample: default
languagestringOptionalExample: en
enabledbooleanOptionalExample: true
categorystring · enumOptionalExample: ALERT_UPDATEPossible values:
Responses
200
Successfully Created Text Template (with Tags)
application/json
post
POST /v1.1/org/:orgId/whatsapp/templates HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 195

{
  "name": "test_text_with_tags_button_api_2",
  "description": "Test in API",
  "namespace": "default",
  "language": "en",
  "enabled": true,
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": [],
    "body": []
  }
}
200

Successfully Created Text Template (with Tags)

{
  "organization": "126589003477481y003f934",
  "name": "test_text_with_tags_button_api_2",
  "description": "Test in API",
  "namespace": "default",
  "language": "en",
  "status": "PENDING",
  "enabled": true,
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": [],
    "body": []
  },
  "messageTemplateId": "43890378898700"
}

Create Image Template (with Tags)

post

API call to create a new Image Template (with Tags)

Body
namestringOptionalExample: test_image_with_tags_api_2
descriptionstringOptionalExample: Test in API
namespacestringOptionalExample: default
languagestringOptionalExample: en
enabledbooleanOptionalExample: true
categorystring · enumOptionalExample: ALERT_UPDATEPossible values:
Responses
200
Successfully Created Image Template (with Tags)
application/json
post
POST /v1.1/org/:orgId/whatsapp/templates/ HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 189

{
  "name": "test_image_with_tags_api_2",
  "description": "Test in API",
  "namespace": "default",
  "language": "en",
  "enabled": true,
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": [],
    "body": []
  }
}
200

Successfully Created Image Template (with Tags)

{
  "organization": "266589003477481y003f9ju",
  "name": "test_image_with_tags_api_2",
  "description": "Test in API",
  "namespace": "default",
  "status": "PENDING",
  "language": "en",
  "enabled": true,
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": [],
    "body": []
  },
  "messageTemplateId": "17361379243567"
}

Create Text Template (With Tags and Quick Reply Buttons)

post

API call to create Text Template (With Tags and Quick Reply Buttons)

Path parameters
orgIdstringRequired
Body
namestringOptionalExample: ci_test_text_tags_qr_buttons
descriptionstringOptionalExample: Automated Test Template
namespacestringOptionalExample: default
languagestringOptionalExample: en
enabledbooleanOptionalExample: true
categorystring · enumOptionalExample: ALERT_UPDATEPossible values:
Responses
200
Successfully Created Text Template (With Tags and Quick Reply Buttons)
application/json
post
POST /v1.1/org/{orgId}/whatsapp/templates/ HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 203

{
  "name": "ci_test_text_tags_qr_buttons",
  "description": "Automated Test Template",
  "namespace": "default",
  "language": "en",
  "enabled": true,
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": [],
    "body": []
  }
}
200

Successfully Created Text Template (With Tags and Quick Reply Buttons)

{
  "organization": "3037703477495d09161y127",
  "name": "ci_test_text_tags_qr_buttons",
  "description": "Automated Test Template",
  "namespace": "default",
  "status": "PENDING",
  "language": "en",
  "enabled": true,
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": [],
    "body": []
  },
  "messageTemplateId": "908647665224123"
}

Create Image Template (With Tags and Call To Action Buttons)

post

API call to create Image Template (With Tags and Call To Action Buttons)

Body
namestringOptionalExample: ci_test_image_tags_cta_buttons
descriptionstringOptionalExample: Automated Test Template
namespacestringOptionalExample: default
languagestringOptionalExample: en
enabledbooleanOptionalExample: true
categorystring · enumOptionalExample: ALERT_UPDATEPossible values:
Responses
200
Successfully Created Image Template (With Tags and Call To Action Buttons)
application/json
post
POST /v1.1/org/orgId/whatsapp/templates/ HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 353

{
  "name": "ci_test_image_tags_cta_buttons",
  "description": "Automated Test Template",
  "namespace": "default",
  "language": "en",
  "enabled": true,
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": {
      "type": "image",
      "url": "https://channel360-template-tags.s3.af-south-1.amazonaws.com/2023-01-03T08%3A32%3A22.190Z-MEng-Engineering-Hero-1200x600.jpeg"
    },
    "body": []
  }
}
200

Successfully Created Image Template (With Tags and Call To Action Buttons)

{
  "organization": "3037703477495d09161y127",
  "name": "ci_test_image_tags_cta_buttons",
  "description": "Automated Test Template",
  "namespace": "default",
  "language": "en",
  "enabled": true,
  "category": "ALERT_UPDATE",
  "components": [],
  "tags": {
    "head": {
      "type": "image",
      "url": "https://channel360-template-tags.s3.af-south-1.amazonaws.com/2023-01-03T08%3A32%3A22.190Z-MEng-Engineering-Hero-1200x600.jpeg"
    },
    "body": []
  },
  "messageTemplateId": "908647665224123"
}

Update Template

put

API call to Update Template

Path parameters
templateIdstringRequired
Body
Responses
200
Successfully Updated Template
application/json
put
PUT /v1.1/templates/{templateId} HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 30

{
  "tags": {
    "body": [],
    "head": []
  }
}
200

Successfully Updated Template

{
  "tags": {
    "body": [],
    "head": []
  },
  "organization": "639700347749ed00181de224",
  "name": "test_template",
  "description": "auto-ingested - tag configuration required",
  "namespace": "",
  "language": "en",
  "category": "ALERT_UPDATE",
  "components": [],
  "status": "APPROVED",
  "enabled": true,
  "messageTemplateId": "912537239744385",
  "createdAt": "2022-12-14T08:19:46.423Z",
  "updatedAt": "2022-12-14T09:30:01.029Z",
  "version": 19,
  "id": "131872255634016240345"
}

Update Template (CSV)

put

API call to Update Template (CSV)

Path parameters
templateIdstringRequired
Body
Responses
200
Successfully Updated Template (CSV)
application/json
put
PUT /v1.1/templates/:{templateId} HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 30

{
  "tags": {
    "head": [],
    "body": []
  }
}
200

Successfully Updated Template (CSV)

{
  "tags": {
    "head": [],
    "body": []
  },
  "organization": "3443395cf37r783e2784",
  "name": "order_shipped",
  "description": "A Template to test an alert",
  "namespace": "default",
  "language": "en_US",
  "category": "ALERT_UPDATE",
  "components": [],
  "status": "APPROVED",
  "enabled": true,
  "messageTemplateId": "912537239744385",
  "createdAt": "2022-12-14T08:19:46.423Z",
  "updatedAt": "2022-12-14T09:30:01.029Z",
  "version": 19,
  "id": "131872255634016240345"
}

Upload Template

post

API call to Upload a Template

Body
filestringOptionalExample: CompanyLogo.png
Responses
200
Successfully Uploaded Template
application/json
post
POST /v1.1/templates/upload HTTP/1.1
Host: www.channel360.co.za
Content-Type: multipart/form-data
Accept: */*
Content-Length: 26

{
  "file": "CompanyLogo.png"
}
200

Successfully Uploaded Template

{
  "uploadedFiles": {
    "fieldname": "file",
    "originalname": "CompanyLogo.png",
    "encoding": "7bit",
    "mimetype": "image/png",
    "size": 94234,
    "bucket": "channel360-template-tags",
    "key": "2022-11-14T14:31:35.967Z-CompanyLogo.png",
    "acl": "private",
    "contentType": "application/octet-stream",
    "contentDisposition": "null",
    "contentEncoding": "null",
    "storageClass": "STANDARD",
    "serverSideEncryption": "null",
    "metadata": {
      "fieldName": "file"
    },
    "location": "https://channel360-template-tags.channel360-template-tags.s3.af-south-1.amazonaws.com/2022-11-14T14%3A31%3A35.967Z-CompanyLogo.png",
    "etag": "\"14772585a3432789898f56f26870g97987\""
  }
}

Upload Image

post

API call to Upload an Image

Body
filestringOptionalExample: Monkey-Selfie.webp
Responses
200
Successfully Uploaded Image
application/json
post
POST /v1.1/templates/:upload HTTP/1.1
Host: www.channel360.co.za
Content-Type: multipart/form-data
Accept: */*
Content-Length: 29

{
  "file": "Monkey-Selfie.webp"
}
200

Successfully Uploaded Image

{
  "uploadedFiles": {
    "fieldname": "file",
    "originalname": "Monkey-Selfie.webp",
    "encoding": "7bit",
    "mimetype": "image/webp",
    "size": 94234,
    "bucket": "channel360-template-tags",
    "key": "2022-11-14T14:36:14.607Z-Monkey-Selfie.webp",
    "acl": "private",
    "contentType": "application/octet-stream",
    "contentDisposition": "null",
    "contentEncoding": "null",
    "storageClass": "STANDARD",
    "serverSideEncryption": null,
    "metadata": {
      "fieldName": "file"
    },
    "location": "https://channel360-template-tags.channel360-template-tags.s3.af-south-1.amazonaws.com/2022-11-14T14%3A36%3A14.607Z-Monkey-Selfie.webp",
    "etag": "\"153e7972bea747b4f6d537eb0aa95714\""
  }
}

Ingest Template

post

API call to ingest template

Path parameters
orgIdstringRequired
Body
filestringOptionalExample: test_file
Responses
200
Successfully ingested template
application/json
post
POST /v1.1/org/{orgId}/whatsapp/templates/ingest HTTP/1.1
Host: www.channel360.co.za
Content-Type: multipart/form-data
Accept: */*
Content-Length: 20

{
  "file": "test_file"
}
200

Successfully ingested template

{
  "messageTemplates": {
    "name": "test_file",
    "components": {
      "type": "HEADER",
      "format": "IMAGE",
      "example": []
    },
    "language": "en_US",
    "status": "APPROVED",
    "category": "MARKETING",
    "id": "2907957541046"
  }
}
DELETE /v1.1/templates/{messageTemplateId} HTTP/1.1
Host: www.channel360.co.za
Accept: */*
{}
GET /v1.1/org/{orgId}/organization HTTP/1.1
Host: www.channel360.co.za
Accept: */*
{
  "users": {
    "firstName": "John",
    "lastName": "Doe",
    "mobileNumber": 27789049032,
    "email": "johndoe@hotmail.com",
    "password": "new...johnDoe1234!",
    "createdAt": "2026-11-30T07:58:48.048Z",
    "updatedAT": "2023-03-30T07:58:48.048Z",
    "cognitoId": "e4b66297-5427-4105-a0b1-9e9e06539493",
    "id": "5683253235608f002390f036",
    "version": 0
  },
  "name": "Some Staging",
  "plan": {
    "plan": [],
    "title": "Premiumn",
    "term": "monthly",
    "price": 200,
    "description": "Most popular",
    "createdAt": "2023-03-29T13:56:21.781Z",
    "updatedAt": "2023-03-29T13:56:21.781Z",
    "version": 0,
    "id": "r4h443965cf7adf0ce20b"
  },
  "settings": "7608y068654fg69087535433",
  "createdAt": "2023-03-29T13:56:39.375Z",
  "updatedAt": "2023-11-14T07:14:59.131Z",
  "version": 47,
  "id": "9876df76987d76080ef78986"
}
GET /v1.1/users{userId}/organization HTTP/1.1
Host: www.channel360.co.za
Accept: */*
{
  "users": [],
  "name": "Some Staging",
  "plan": "854769fy765976f76r4d6565",
  "settings": "5987066fgy977g465432543r",
  "createdAt": "2023-03-29T13:56:39.375Z",
  "updatedA": "2023-11-14T07:14:59.131Z",
  "version": 47,
  "id": "7687df908g876372d0sf987g"
}

Create Webhook

post

API call to Create a Webhook

Path parameters
orgIdstringRequired
Body
targetstringOptionalExample: https://41-216-203-43.ngrok-free.app/webhook
triggersobjectOptionalExample: ["notification:delivery:channel","notification:delivery:user","notification:delivery:failure","conversation:read","message:appMaker","message:appUser"]
Responses
200
Webhook created successfully
application/json
Responseobject
post
POST /v1.1/org/{orgId}/webhooks HTTP/1.1
Host: www.channel360.co.za
Content-Type: application/json
Accept: */*
Content-Length: 220

{
  "target": "https://41-216-203-43.ngrok-free.app/webhook",
  "triggers": [
    "notification:delivery:channel",
    "notification:delivery:user",
    "notification:delivery:failure",
    "conversation:read",
    "message:appMaker",
    "message:appUser"
  ]
}
200

Webhook created successfully

{}
GET /v1.1/org/{orgId}/:webhooks HTTP/1.1
Host: www.channel360.co.za
Accept: */*
{
  "conversation": {
    "triggers": [],
    "organization": "421454989fb27b088b1859",
    "target": "https://41-216-203-43.ngrok-free.app/webhook",
    "createdAt": "2023-11-28T09:01:42.786Z",
    "updatedAt": "2023-11-28T09:01:42.786Z",
    "version": 0,
    "id": "69390n980c76ff6d887r7"
  }
}
DELETE /v1.1/org/{orgId}/webhooks/{webhook-id} HTTP/1.1
Host: www.channel360.co.za
Accept: */*
{}