Belco

Suggest Edits

Authorization

 

Authorization with the Belco API is done using personal access tokens. You can find your personal access token on your profile page in the Belco dashboard.

Use your personal access token simply by providing your access token in the headers of your request.

$ curl \
-s https://api.belco.io/v1/conversations \
-H 'Authorization:Bearer <access_token>' \
-H 'Accept:application/json'
 
Suggest Edits

Verifying requests

 
Suggest Edits

Api information

 
gethttps://api.belco.io/v1/info
curl --request GET \
  --url https://api.belco.io/v1/info
var request = require("request");

var options = { method: 'GET', url: 'https://api.belco.io/v1/info' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/info")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/info");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/info"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Returns api version and documentation url.

versionstring
documentationstring
 
Suggest Edits

Show account details of the authenticated user

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/account
curl --request GET \
  --url https://api.belco.io/v1/account
var request = require("request");

var options = { method: 'GET', url: 'https://api.belco.io/v1/account' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/account")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/account");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/account"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Returns user profile and status information.

_idstring
emailsarray
avatarobject
avatar.urlstring
statusobject
status.availableboolean
status.callingboolean
status.dndboolean
status.onlineboolean
status.invisibleboolean
profileobject
profile.firstNamestring
profile.lastNamestring
profile.languagestring
profile.timezonestring
callForwardingobject
callForwarding.numberstring
callForwarding.enabledboolean
callForwarding.verifyPickupboolean
Suggest Edits

List all shops

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/shops
curl --request GET \
  --url https://api.belco.io/v1/shops
var request = require("request");

var options = { method: 'GET', url: 'https://api.belco.io/v1/shops' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/shops")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/shops");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/shops"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

List of shops

 
Suggest Edits

Create or sync an existing contact

 

Header Auth

 Authentication is required for this endpoint.
posthttps://api.belco.io/v1/shops/shopId/contacts
curl --request POST \
  --url https://api.belco.io/v1/shops/shopId/contacts
var request = require("request");

var options = { method: 'POST',
  url:
   'https://api.belco.io/v1/shops/shopId/contacts' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/shops/shopId/contacts")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.belco.io/v1/shops/shopId/contacts");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/shops/shopId/contacts"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

shopId
string
required

Shop ID

Body Params

id
string
name
string
firstName
string
lastName
string
email
string
phoneNumber
string

Phone numbers are automatically parsed into e164 format (+31612345678). If the country code is ommitted and no country is available we fall back to NL (+31).

country
string
avatar
object
 
avatar.url
string
avatar.color
string
type
string
signedUp
date-time
orderCount
number
totalSpent
number
lastOrder
date-time
cart
object

To empty the shopping cart you can set a NULL value.

 
cart.currency
string
cart.total
number
cart.items
array of objects
id
name
url
price
quantity
company
object
 
company.id
string
company.name
string
company.email
string
company.phoneNumber
string
company.employees
number
company.website
string
company.plan
string
company.revenue
number
company.createdAt
date-time

Response

Returns a newly created or existing contact if found.

idstring
namestring
firstNamestring
lastNamestring
emailstring
phoneNumberstring

Phone numbers are automatically parsed into e164 format (+31612345678). If the country code is ommitted and no country is available we fall back to NL (+31).

countrystring
avatarobject
avatar.urlstring
avatar.colorstring
typestring
signedUpstring
orderCountnumber
totalSpentnumber
lastOrderstring
cartobject

To empty the shopping cart you can set a NULL value.

cart.currencystring
cart.totalnumber
cart.itemsarray
companyobject
company.idstring
company.namestring
company.emailstring
company.phoneNumberstring
company.employeesnumber
company.websitestring
company.planstring
company.revenuenumber
company.createdAtstring

Contact types

We currently support the following contact types.

Customers - Customers are people that have signed up or have placed an order on your website.
Leads - Leads are people that contacted you through live-chat, email, phone, or social media. We automatically create leads and convert them to customers once they sign up or place an order.
Visitors - Visitors are people that haven't interacted with the widget yet.

Create or update customers

Syncing customers requires at least an id or email address. When both id and email address are set, the customer will be matched on id and the email address will be updated with the new value.

var request = require("request");

var data = {
  id: '1337',
  email: 'info@mrrobot.com',
  firstName: 'Elliot',
  lastName: 'Alderson
};

var options = {
  method: 'POST',
  auth: {
    bearer: 'Personal access token'
  },
  url: 'https://api.belco.io/v1/shops/abcdf/contacts',
  json: true,
  body: data
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Adding company data

var request = require("request");

var data = {
  id: '1337',
  email: 'info@mrrobot.com',
  firstName: 'Elliot',
  lastName: 'Alderson,
  company: {
    id: '1',
    name: 'Mr Robot'
  }
};

var options = {
  method: 'POST',
  auth: {
    bearer: 'Personal access token'
  },
  url: 'https://api.belco.io/v1/shops/abcdf/contacts',
  json: true,
  body: data
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
Suggest Edits

Retrieve a contact

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/shops/shopId/contacts/contactId
curl --request GET \
  --url https://api.belco.io/v1/shops/shopId/contacts/contactId
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.belco.io/v1/shops/shopId/contacts/contactId' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/shops/shopId/contacts/contactId")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/shops/shopId/contacts/contactId");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/shops/shopId/contacts/contactId"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

shopId
string
required

Shop ID

contactId
string
required

Contact ID

Response

Returns a contact if found.

idstring
namestring
firstNamestring
lastNamestring
emailstring
phoneNumberstring

Phone numbers are automatically parsed into e164 format (+31612345678). If the country code is ommitted and no country is available we fall back to NL (+31).

countrystring
avatarobject
avatar.urlstring
avatar.colorstring
typestring
signedUpstring
orderCountnumber
totalSpentnumber
lastOrderstring
cartobject

To empty the shopping cart you can set a NULL value.

cart.currencystring
cart.totalnumber
cart.itemsarray
companyobject
company.idstring
company.namestring
company.emailstring
company.phoneNumberstring
company.employeesnumber
company.websitestring
company.planstring
company.revenuenumber
company.createdAtstring
Suggest Edits

Delete a contact and all related conversation history

 

Header Auth

 Authentication is required for this endpoint.
deletehttps://api.belco.io/v1/shops/shopId/contacts/contactId
curl --request DELETE \
  --url https://api.belco.io/v1/shops/shopId/contacts/contactId
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.belco.io/v1/shops/shopId/contacts/contactId' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/shops/shopId/contacts/contactId")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.belco.io/v1/shops/shopId/contacts/contactId");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/shops/shopId/contacts/contactId"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

shopId
string
required

Shop ID

contactId
string
required

Contact ID

Response

Succesful.

Suggest Edits

Conversations

 
Suggest Edits

List all conversations

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/conversations
curl --request GET \
  --url https://api.belco.io/v1/conversations
var request = require("request");

var options = { method: 'GET', url: 'https://api.belco.io/v1/conversations' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/conversations");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Returns a list of conversations.

Suggest Edits

Create a conversation

 

Header Auth

 Authentication is required for this endpoint.
posthttps://api.belco.io/v1/conversations
curl --request POST \
  --url https://api.belco.io/v1/conversations
var request = require("request");

var options = { method: 'POST', url: 'https://api.belco.io/v1/conversations' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.belco.io/v1/conversations");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

shopId
string
required
channel
string
required

Currently only supports chat, email and phone

type
string
from
object

Only required for inbound messages

 
from.type
string
from._id
string
from.email
string

Only used for email channel

from.firstName
string

Only used for email channel

from.lastName
string

Only used for email channel

to
object

Should contain an _id or email address, only required for auto, outbound messages and follow ups.

 
to.type
string
to._id
string
to.email
string

Only used for email channel

to.firstName
string

Only used for email channel

to.lastName
string

Only used for email channel

to.phoneNumber
string

Only used for phone channel

subject
string
body
string
required

Response

Successful

_idstring
shopIdstring
assignedTostring
teamIdstring
contactIdstring
channelstring
typestring
statusstring
lastMessageobject
lastMessage._idstring
lastMessage.typestring
lastMessage.referenceobject
lastMessage.reference._idstring
lastMessage.reference.typestring
lastMessage.bodystring

Create a follow-up

fetch('https://api.belco.io/v1/conversations', {
  method: 'POST',
  headers: {
    'authorization': 'Bearer <accessToken>',
    'content-type': 'application/json' 
  }
  contentType: 'json',
  body: JSON.stringify({
    "shopId": "QCKysMML2DRfxW37G",
    "channel": "phone",
    "type": "follow-up",
    "to": {
      "type": "customer",
      "phoneNumber": "+316123456789"
    },
    "tags": ["Sales"]
  })
})
Suggest Edits

Send a message

 

Header Auth

 Authentication is required for this endpoint.
posthttps://api.belco.io/v1/conversations/sendMessage
curl --request POST \
  --url https://api.belco.io/v1/conversations/sendMessage
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.belco.io/v1/conversations/sendMessage' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/sendMessage")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.belco.io/v1/conversations/sendMessage");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/sendMessage"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

shopId
string
required
channel
string
required

Currently only supports chat, email and phone

type
string
from
object

Only required for inbound messages

 
from.type
string
from._id
string
from.email
string

Only used for email channel

from.firstName
string

Only used for email channel

from.lastName
string

Only used for email channel

to
object

Should contain an _id or email address, only required for auto, outbound messages and follow ups.

 
to.type
string
to._id
string
to.email
string

Only used for email channel

to.firstName
string

Only used for email channel

to.lastName
string

Only used for email channel

to.phoneNumber
string

Only used for phone channel

subject
string
body
string
required

Response

Successful

_idstring
shopIdstring
assignedTostring
teamIdstring
contactIdstring
channelstring
typestring
statusstring
lastMessageobject
lastMessage._idstring
lastMessage.typestring
lastMessage.referenceobject
lastMessage.reference._idstring
lastMessage.reference.typestring
lastMessage.bodystring

Sending an inbound message on behalf of a customer

fetch('https://api.belco.io/v1/conversations/sendMessage', {
  method: 'POST',
  headers: {
    'authorization': 'Bearer <accessToken>',
    'content-type': 'application/json' 
  }
  contentType: 'json',
  body: JSON.stringify({
    "shopId": "QCKysMML2DRfxW37G",
    "channel": "email",
    "type": "inbound-message",
    "body": "Hi",
    "from": {
      "type": "customer",
      "email": "eelco@belco.io",
  		"firstName": "Eelco",
  		"lastName": "Wiersma"
    },
    "subject": "Question about product x",
    "tags": ["Sales"]
  })
})
Suggest Edits

List all contact conversations

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/shops/shopId/contacts/contactId/conversations
curl --request GET \
  --url https://api.belco.io/v1/shops/shopId/contacts/contactId/conversations
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.belco.io/v1/shops/shopId/contacts/contactId/conversations' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/shops/shopId/contacts/contactId/conversations")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/shops/shopId/contacts/contactId/conversations");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/shops/shopId/contacts/contactId/conversations"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

shopId
string
required

Shop ID

contactId
string
required

Contact ID

Response

Returns a list of conversations from this contact.

Suggest Edits

Retrieve a conversation

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/conversations/conversationId
curl --request GET \
  --url https://api.belco.io/v1/conversations/conversationId
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.belco.io/v1/conversations/conversationId' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/conversations/conversationId");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Response

Returns a conversation

_idstring
shopIdstring
assignedTostring
teamIdstring
contactIdstring
channelstring
typestring
statusstring
lastMessageobject
lastMessage._idstring
lastMessage.typestring
lastMessage.referenceobject
lastMessage.reference._idstring
lastMessage.reference.typestring
lastMessage.bodystring
Suggest Edits

Close a conversation

 

Header Auth

 Authentication is required for this endpoint.
puthttps://api.belco.io/v1/conversations/conversationId/close
curl --request PUT \
  --url https://api.belco.io/v1/conversations/conversationId/close
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.belco.io/v1/conversations/conversationId/close' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId/close")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.belco.io/v1/conversations/conversationId/close");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId/close"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Response

Successful

Suggest Edits

Reopen a conversation

 

Header Auth

 Authentication is required for this endpoint.
puthttps://api.belco.io/v1/conversations/conversationId/open
curl --request PUT \
  --url https://api.belco.io/v1/conversations/conversationId/open
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.belco.io/v1/conversations/conversationId/open' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId/open")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.belco.io/v1/conversations/conversationId/open");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId/open"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Response

Successful

Suggest Edits

Assign a conversation

 

Header Auth

 Authentication is required for this endpoint.
puthttps://api.belco.io/v1/conversations/conversationId/assign
curl --request PUT \
  --url https://api.belco.io/v1/conversations/conversationId/assign
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.belco.io/v1/conversations/conversationId/assign' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId/assign")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.belco.io/v1/conversations/conversationId/assign");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId/assign"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Body Params

userId
string

Response

Successful

Suggest Edits

Unassign a conversation

 

Header Auth

 Authentication is required for this endpoint.
puthttps://api.belco.io/v1/conversations/conversationId/unassign
curl --request PUT \
  --url https://api.belco.io/v1/conversations/conversationId/unassign
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.belco.io/v1/conversations/conversationId/unassign' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId/unassign")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.belco.io/v1/conversations/conversationId/unassign");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId/unassign"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Response

Successful

Suggest Edits

Snooze a conversation

 

Header Auth

 Authentication is required for this endpoint.
puthttps://api.belco.io/v1/conversations/conversationId/snooze
curl --request PUT \
  --url https://api.belco.io/v1/conversations/conversationId/snooze
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.belco.io/v1/conversations/conversationId/snooze' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId/snooze")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.belco.io/v1/conversations/conversationId/snooze");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId/snooze"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Body Params

date
date-time

Response

Successful

Suggest Edits

Reply to a conversation

 

Header Auth

 Authentication is required for this endpoint.
puthttps://api.belco.io/v1/conversations/conversationId/reply
curl --request PUT \
  --url https://api.belco.io/v1/conversations/conversationId/reply
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.belco.io/v1/conversations/conversationId/reply' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId/reply")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.belco.io/v1/conversations/conversationId/reply");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId/reply"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Body Params

body
string

Response

Successful

Suggest Edits

Add a note to a conversation

 

Header Auth

 Authentication is required for this endpoint.
puthttps://api.belco.io/v1/conversations/conversationId/addNote
curl --request PUT \
  --url https://api.belco.io/v1/conversations/conversationId/addNote
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.belco.io/v1/conversations/conversationId/addNote' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId/addNote")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.belco.io/v1/conversations/conversationId/addNote");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId/addNote"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Body Params

body
string

Response

Successful

 
Suggest Edits

List all webhooks

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/webhooks
curl --request GET \
  --url https://api.belco.io/v1/webhooks
var request = require("request");

var options = { method: 'GET', url: 'https://api.belco.io/v1/webhooks' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/webhooks")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/webhooks");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/webhooks"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Array containing webhooks

Suggest Edits

Retrieve a webhook

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/webhooks/webhookId
curl --request GET \
  --url https://api.belco.io/v1/webhooks/webhookId
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.belco.io/v1/webhooks/webhookId' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/webhooks/webhookId")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/webhooks/webhookId");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/webhooks/webhookId"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

webhookId
string
required

Webhook ID

Response

Array containing all users

_idstring
shopIdstring
urlstring
eventsarray
activeboolean
secretstring
createdAtstring
updatedAtstring
Suggest Edits

Activate a webhook

 

Header Auth

 Authentication is required for this endpoint.
puthttps://api.belco.io/v1/webhooks/webhookId/activate
curl --request PUT \
  --url https://api.belco.io/v1/webhooks/webhookId/activate
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.belco.io/v1/webhooks/webhookId/activate' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/webhooks/webhookId/activate")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.belco.io/v1/webhooks/webhookId/activate");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/webhooks/webhookId/activate"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

webhookId
string
required

Webhook ID

Response

Successful

Suggest Edits

Deactive a webhook

 

Header Auth

 Authentication is required for this endpoint.
puthttps://api.belco.io/v1/webhooks/webhookId/deactivate
curl --request PUT \
  --url https://api.belco.io/v1/webhooks/webhookId/deactivate
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.belco.io/v1/webhooks/webhookId/deactivate' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/webhooks/webhookId/deactivate")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.belco.io/v1/webhooks/webhookId/deactivate");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/webhooks/webhookId/deactivate"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

webhookId
string
required

Webhook ID

Response

Successful

Suggest Edits

Conversation

 
Suggest Edits

Delete a conversation

 

Header Auth

 Authentication is required for this endpoint.
deletehttps://api.belco.io/v1/conversations/conversationId
curl --request DELETE \
  --url https://api.belco.io/v1/conversations/conversationId
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.belco.io/v1/conversations/conversationId' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.belco.io/v1/conversations/conversationId");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Response

Succesful.

Suggest Edits

Conversation Items

 
Suggest Edits

Retrieve conversation items

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/conversations/conversationId/items
curl --request GET \
  --url https://api.belco.io/v1/conversations/conversationId/items
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.belco.io/v1/conversations/conversationId/items' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/conversations/conversationId/items")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/conversations/conversationId/items");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/conversations/conversationId/items"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

conversationId
string
required

Conversation ID

Response

Returns a list of conversation items.

Suggest Edits

List all users

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.belco.io/v1/users
curl --request GET \
  --url https://api.belco.io/v1/users
var request = require("request");

var options = { method: 'GET', url: 'https://api.belco.io/v1/users' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.belco.io/v1/users")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.belco.io/v1/users");

xhr.send(data);
import requests

url = "https://api.belco.io/v1/users"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Array containing all users