Naar de inhoud
Menu

Zoeken op de site

Typ om te zoeken in handleidingen, blog, API en product.

↑ ↓ om te bewegen · Enter om te openen · Esc om te sluiten

API-referentie

API

Activiteiten

Beheer gesprekken en interacties met contacten

Bekijken als Markdown

Activiteiten zijn de gesprekken tussen je agent en contacten. Elke activiteit volgt een gesprek over een of meer kanalen, met status, labels en toewijzing.

MethodePadBeschrijving
GET/v1/activitiesActiviteiten opvragen
GET/v1/activities/:idDetails van een activiteit
PATCH/v1/activities/:idActiviteit bijwerken
POST/v1/activities/:id/tagsLabels aan een activiteit toevoegen
DELETE/v1/activities/:id/tags?tag_id=XLabel van een activiteit verwijderen

Het lijst-endpoint ondersteunt deze queryparameters:

ParameterTypeBeschrijving
limitnumberResultaten per pagina (standaard: 20, max: 100)
offsetnumberAantal resultaten om over te slaan (standaard: 0)
statusstringFilter op status: open, closed, pending
tagstringFilter op label-ID
searchstringZoek op naam of telefoonnummer van het contact

Activiteiten opvragen

GET/v1/activities
curl "https://rest-api.tbit.app/v1/activities?limit=20&offset=0&status=open" \
  -H "X-API-Key: $TBIT_API_KEY"
const response = await fetch('https://rest-api.tbit.app/v1/activities?limit=20&offset=0&status=open', {
  headers: {
    'X-API-Key': process.env.TBIT_API_KEY,
  },
});
const data = await response.json();
import axios from 'axios';

const { data } = await axios.get(
  'https://rest-api.tbit.app/v1/activities?limit=20&offset=0&status=open',
  {
    headers: {
      'X-API-Key': process.env.TBIT_API_KEY,
    },
  },
);
import os
import requests

response = requests.get(
    'https://rest-api.tbit.app/v1/activities?limit=20&offset=0&status=open',
    headers={'X-API-Key': os.environ['TBIT_API_KEY']},
)
data = response.json()
<?php
$ch = curl_init('https://rest-api.tbit.app/v1/activities?limit=20&offset=0&status=open');
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'X-API-Key: ' . getenv('TBIT_API_KEY'),
    ],
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
GET/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1
curl "https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1" \
  -H "X-API-Key: $TBIT_API_KEY"
const response = await fetch('https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1', {
  headers: {
    'X-API-Key': process.env.TBIT_API_KEY,
  },
});
const data = await response.json();
import axios from 'axios';

const { data } = await axios.get(
  'https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1',
  {
    headers: {
      'X-API-Key': process.env.TBIT_API_KEY,
    },
  },
);
import os
import requests

response = requests.get(
    'https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1',
    headers={'X-API-Key': os.environ['TBIT_API_KEY']},
)
data = response.json()
<?php
$ch = curl_init('https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1');
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'X-API-Key: ' . getenv('TBIT_API_KEY'),
    ],
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);

Activiteit bijwerken

PATCH/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1
curl -X PATCH "https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1" \
  -H "X-API-Key: $TBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "status": "closed",
    "assigned_to": "agent_user_id",
    "profile_name": "John Doe"
  }'
const response = await fetch('https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1', {
  method: 'PATCH',
  headers: {
    'X-API-Key': process.env.TBIT_API_KEY,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    status: 'closed',
    assigned_to: 'agent_user_id',
    profile_name: 'John Doe',
  }),
});
const data = await response.json();
import axios from 'axios';

const { data } = await axios.patch(
  'https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1',
  {
    status: 'closed',
    assigned_to: 'agent_user_id',
    profile_name: 'John Doe',
  },
  {
    headers: {
      'X-API-Key': process.env.TBIT_API_KEY,
    },
  },
);
import os
import requests

response = requests.patch(
    'https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1',
    headers={'X-API-Key': os.environ['TBIT_API_KEY']},
    json={
        'status': 'closed',
        'assigned_to': 'agent_user_id',
        'profile_name': 'John Doe',
    },
)
data = response.json()
<?php
$ch = curl_init('https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'PATCH',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'X-API-Key: ' . getenv('TBIT_API_KEY'),
        'Content-Type: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'status' => 'closed',
        'assigned_to' => 'agent_user_id',
        'profile_name' => 'John Doe',
    ]),
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);

Labels toevoegen

POST/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags
curl -X POST "https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags" \
  -H "X-API-Key: $TBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "tag_ids": [
      "tag_id_1",
      "tag_id_2"
    ]
  }'
const response = await fetch('https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags', {
  method: 'POST',
  headers: {
    'X-API-Key': process.env.TBIT_API_KEY,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    tag_ids: [
      'tag_id_1',
      'tag_id_2',
    ],
  }),
});
const data = await response.json();
import axios from 'axios';

const { data } = await axios.post(
  'https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags',
  {
    tag_ids: [
      'tag_id_1',
      'tag_id_2',
    ],
  },
  {
    headers: {
      'X-API-Key': process.env.TBIT_API_KEY,
    },
  },
);
import os
import requests

response = requests.post(
    'https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags',
    headers={'X-API-Key': os.environ['TBIT_API_KEY']},
    json={
        'tag_ids': [
            'tag_id_1',
            'tag_id_2',
        ],
    },
)
data = response.json()
<?php
$ch = curl_init('https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'X-API-Key: ' . getenv('TBIT_API_KEY'),
        'Content-Type: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'tag_ids' => [
            'tag_id_1',
            'tag_id_2',
        ],
    ]),
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);

Label verwijderen

DELETE/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags
curl -X DELETE "https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags?tag_id=tag_id_1" \
  -H "X-API-Key: $TBIT_API_KEY"
const response = await fetch('https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags?tag_id=tag_id_1', {
  method: 'DELETE',
  headers: {
    'X-API-Key': process.env.TBIT_API_KEY,
  },
});
const data = await response.json();
import axios from 'axios';

const { data } = await axios.delete(
  'https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags?tag_id=tag_id_1',
  {
    headers: {
      'X-API-Key': process.env.TBIT_API_KEY,
    },
  },
);
import os
import requests

response = requests.delete(
    'https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags?tag_id=tag_id_1',
    headers={'X-API-Key': os.environ['TBIT_API_KEY']},
)
data = response.json()
<?php
$ch = curl_init('https://rest-api.tbit.app/v1/activities/64f1a2b3c4d5e6f7a8b9c0d1/tags?tag_id=tag_id_1');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'DELETE',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'X-API-Key: ' . getenv('TBIT_API_KEY'),
    ],
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);

Lijst-endpoints geven gepagineerde resultaten terug:

json
{
  "data": [
    {
      "id": "64f1a2b3c4d5e6f7a8b9c0d1",
      "status": "open",
      "profile_name": "John Doe",
      "channel_identifiers": ["573001234567"],
      "tags": [
        { "id": "tag_1", "name": "VIP", "color": "#ef4444" }
      ],
      "assigned_to": null,
      "created_at": "2024-09-01T12:00:00Z",
      "updated_at": "2024-09-01T14:30:00Z"
    }
  ],
  "pagination": {
    "total": 100,
    "limit": 20,
    "offset": 0,
    "has_more": true
  }
}