Skip to content
Download OpenAPI description
Languages
Servers
https://api.kanbert.com/api/v1
Operations
Operations
Operations
Operations
Webhooks
Operations
Webhooks
Operations

Request

Required scopes: contact-data:read

Security
http or oauth2
Query
sortstring

Available sorts are first_name, last_name, created_at, custom_fields.<alias>.
You can sort by multiple options by separating them with a comma. To sort in descending order, use - sign in front of the sort, for example: -title.

Example: sort=sort=-created_at,title
includestring

Available includes are companies. You can include multiple options by separating them with a comma.

page[size]integer

The number of results that will be returned per page.

Default 30
page[cursor]string

The cursor to start the pagination from.

filterstring

Allowed filter fields (with allowed operators):

FieldTypeOperators
archivedenum: with, only, withouteq
first_namestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
last_namestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
birthdaydateeq, ne, neq, lt, lte, le, gt, gte, ge, in, nin, notin, isnull, isnotnull, notnull
emailstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
email_privatestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
mobilestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
mobile_privatestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
telephonestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
telephone_privatestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
faxstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
address_streetstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
address_street2stringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
address_housestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
address_zipstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
address_statestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
address_townstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
address_country.namestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
owner.idideq, ne, neq, in, nin, notin, isnull, isnotnull, notnull
owner.emailstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
owner.external_idstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
owner.external_originstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
client.idideq, ne, neq, in, nin, notin, isnull, isnotnull, notnull
client.namestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
client.shortcodestringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
client.external_idstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
client.external_originstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
created_atdateeq, ne, neq, lt, lte, le, gt, gte, ge, in, nin, notin, isnull, isnotnull, notnull
updated_atdateeq, ne, neq, lt, lte, le, gt, gte, ge, in, nin, notin, isnull, isnotnull, notnull
external_originstringin, nin, notin, eq, ne, neq, contains, like, startswith, endswith, isnull, isnotnull, notnull
companiesRelation
- id (id)
- external_id (string)
- company_name (string)
- external_origin (string)
- tax_uid (string)
- iban (string)
- bic (string)
- phone (string)
- fax (string)
- email (string)
- email_general (string)
- homepage (string)
any, none, count, all
custom_fields.* — see Custom fields belowcustomeq, ne, neq, lt, lte, le, gt, gte, ge, in, nin, notin, contains, like, startswith, endswith, isnull, isnotnull, notnull

Filtering expression. Accepts either JSON (array/tree of conditions) or a readable string DSL.

You can check the full syntax at Docs Filtering section.

Special values:

  • me.id — current authenticated user id (usable on fields of type id). Example: id eq me.id
  • now — current date-time. Example: dueOn lt now
  • sow/eow — start/end of week. Examples: dueOn gt sow, dueOn lt eow
  • som/eom — start/end of month. Examples: dueOn gt som, dueOn lt eom
  • today — special date for today; with eq it expands to the whole day range. Example: dueOn eq today
  • today±Nd — relative day offset. Examples: today-30d, today+5d.

Custom fields: when enabled, you can filter by custom_fields.<slug>. Example: custom_fields.my_flag eq 'yes' or custom_fields.score gte 10. Supported ops depend on the custom field type (eq, ne, in, nin, contains, startswith, endswith, isnull, isnotnull, and comparisons for numeric/date types).

Example: filter=title contains "Acme" and (created_at >= "2024-01-01" or client.name contains "Corp")
curl -i -X GET \
  'https://api.kanbert.com/api/v1/contacts?sort=sort%3D-created_at%2Ctitle&include=string&page%5Bsize%5D=30&page%5Bcursor%5D=string&filter=title+contains+%22Acme%22+and+%28created_at+%3E%3D+%222024-01-01%22+or+client.name+contains+%22Corp%22%29' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

The cursor paginated collection of ContactData

Bodyapplication/json
dataArray of objects(ContactData)required

The list of items

data[].​idstringrequired
data[].​external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

data[].​external_originstring or nullrequired

If originated from external system origin is added

data[].​genderstring or nullrequired
data[].​first_namestring or nullrequired
data[].​last_namestring or nullrequired
data[].​titlestring or nullrequired
data[].​title_suffixstring or nullrequired
data[].​positionstring or nullrequired
data[].​localestring or nullrequired
data[].​birthdaystring or null(date)required
data[].​faxstring or nullrequired
data[].​telephonestring or nullrequired
data[].​telephone_privatestring or nullrequired
data[].​mobilestring or nullrequired
data[].​mobile_privatestring or nullrequired
data[].​emailstring or null(email)required
data[].​email_privatestring or null(email)required
data[].​address_streetstring or nullrequired
data[].​address_housestring or nullrequired
data[].​address_street2string or nullrequired
data[].​address_zipstring or nullrequired
data[].​address_statestring or nullrequired
data[].​address_townstring or nullrequired
data[].​address_countryCountryData (object) or nullrequired
Any of:
data[].​address_country.​idstringrequired
data[].​address_country.​namestringrequired
data[].​address_country.​codestring(ISO 3166-1 alpha-2)required
data[].​ownerUserData (object) or nullrequired
Any of:
data[].​owner.​idstringrequired
data[].​owner.​first_namestringrequired
data[].​owner.​last_namestringrequired
data[].​owner.​emailstringrequired
data[].​owner.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
data[].​owner.​spaceobject(SpaceData)required
data[].​owner.​space.​idstringrequired
data[].​owner.​space.​namestringrequired
data[].​clientClientData (object) or nullrequired
Any of:
data[].​client.​idstringrequired
data[].​client.​external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

data[].​client.​external_originstring or nullrequired

If originated from external system origin is added

data[].​client.​namestringrequired
data[].​client.​shortcodestring or nullrequired
data[].​client.​primary_contactUserData (object) or nullrequired
Any of:
data[].​client.​primary_contact.​idstringrequired
data[].​client.​primary_contact.​first_namestringrequired
data[].​client.​primary_contact.​last_namestringrequired
data[].​client.​primary_contact.​emailstringrequired
data[].​client.​primary_contact.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
data[].​client.​primary_contact.​spaceobject(SpaceData)required
data[].​client.​primary_contact.​space.​idstringrequired
data[].​client.​primary_contact.​space.​namestringrequired
data[].​client.​origin_spaceSpaceData (object) or nullrequired
Any of:

Shared space which the client is shared from, if null client is not shared

data[].​client.​origin_space.​idstringrequired
data[].​client.​origin_space.​namestringrequired
data[].​companiesArray of objects(CompanyData)
data[].​custom_fieldsobjectrequired

The key is the field name for your custom field, value type depends on the field type

data[].​custom_fields.​property name*string or boolean or integer or nulladditional property
Any of:
string
data[].​created_atstring(date-time)required
data[].​updated_atstring or null(date-time)required
data[].​deleted_atstring or null(date-time)required
data[].​contact_companyobject(ContactCompanyPivotData)

Added included via relationship (contact -> companies or company -> contacts)

linksArray of stringsrequired
metaobjectrequired
meta.​pathstring or nullrequired

Base path for paginator generated URLs.

meta.​per_pageintegerrequired

Number of items shown per page.

meta.​next_cursorstring or nullrequired
meta.​next_cursor_urlstring or nullrequired
meta.​prev_cursorstring or nullrequired
meta.​prev_cursor_urlstring or nullrequired
Response
application/json
{ "data": [ { … } ], "links": [ "string" ], "meta": { "path": "string", "per_page": 0, "next_cursor": "string", "next_cursor_url": "string", "prev_cursor": "string", "prev_cursor_url": "string" } }

Request

Required scopes: contact-data:write

Security
http or oauth2
Bodyapplication/json
external_idstring or null<= 255 characters

Can be used to add an identifier from an external system, must be unique within integration (integration's slug)

external_originstring<= 255 characters

If not set, integration's slug will be used as default

genderstring or null
Enum"f""m""x"
first_namestring or null<= 255 characters
last_namestring or null<= 255 characters
birthdaystring or null(date-time)
titlestring or null<= 255 characters
title_suffixstring or null<= 255 characters
positionstring or null<= 255 characters
localestring or null<= 255 characters
faxstring or null<= 255 characters
telephonestring or null<= 255 characters
telephone_privatestring or null<= 255 characters
mobilestring or null<= 255 characters
mobile_privatestring or null<= 255 characters
emailstring or null(email)<= 255 characters
email_privatestring or null(email)<= 255 characters
address_streetstring or null<= 255 characters
address_street2string or null<= 255 characters
address_housestring or null<= 255 characters
address_zipstring or null<= 255 characters
address_statestring or null<= 255 characters
address_townstring or null<= 255 characters
address_countrystring

Format: ISO 3166-1 alpha-2 / ISO 3166-1 alpha-3 / ISO-3166-1 numeric / Name

You can use this field to associate a contact with a specific country. We try to find the corresponding country based on the provided value. If country code/name is valid but not created yet, it will be created. If country is not valid, the space's default country will be used.

Will be ignored if address_country_id is set.

address_country_idstring or null(CountryData)

You can use this field to associate a contact with a specific country already present in the system.

client_idstring or null(ClientData)
owner_idstring or null(UserData)
custom_fieldsArray of strings
Example: "{<slug>: <value>}"
curl -i -X POST \
  https://api.kanbert.com/api/v1/contacts \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "external_id": "string",
    "external_origin": "string",
    "gender": "f",
    "first_name": "string",
    "last_name": "string",
    "birthday": "2019-08-24T14:15:22Z",
    "title": "string",
    "title_suffix": "string",
    "position": "string",
    "locale": "string",
    "fax": "string",
    "telephone": "string",
    "telephone_private": "string",
    "mobile": "string",
    "mobile_private": "string",
    "email": "user@example.com",
    "email_private": "user@example.com",
    "address_street": "string",
    "address_street2": "string",
    "address_house": "string",
    "address_zip": "string",
    "address_state": "string",
    "address_town": "string",
    "address_country": "string",
    "address_country_id": "string",
    "client_id": "string",
    "owner_id": "string",
    "custom_fields": "{<slug>: <value>}"
  }'

Responses

ContactData

Bodyapplication/json
idstringrequired
external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

external_originstring or nullrequired

If originated from external system origin is added

genderstring or nullrequired
first_namestring or nullrequired
last_namestring or nullrequired
titlestring or nullrequired
title_suffixstring or nullrequired
positionstring or nullrequired
localestring or nullrequired
birthdaystring or null(date)required
faxstring or nullrequired
telephonestring or nullrequired
telephone_privatestring or nullrequired
mobilestring or nullrequired
mobile_privatestring or nullrequired
emailstring or null(email)required
email_privatestring or null(email)required
address_streetstring or nullrequired
address_housestring or nullrequired
address_street2string or nullrequired
address_zipstring or nullrequired
address_statestring or nullrequired
address_townstring or nullrequired
address_countryCountryData (object) or nullrequired
Any of:
address_country.​idstringrequired
address_country.​namestringrequired
address_country.​codestring(ISO 3166-1 alpha-2)required
ownerUserData (object) or nullrequired
Any of:
owner.​idstringrequired
owner.​first_namestringrequired
owner.​last_namestringrequired
owner.​emailstringrequired
owner.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
owner.​spaceobject(SpaceData)required
owner.​space.​idstringrequired
owner.​space.​namestringrequired
clientClientData (object) or nullrequired
Any of:
client.​idstringrequired
client.​external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

client.​external_originstring or nullrequired

If originated from external system origin is added

client.​namestringrequired
client.​shortcodestring or nullrequired
client.​primary_contactUserData (object) or nullrequired
Any of:
client.​primary_contact.​idstringrequired
client.​primary_contact.​first_namestringrequired
client.​primary_contact.​last_namestringrequired
client.​primary_contact.​emailstringrequired
client.​primary_contact.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
client.​primary_contact.​spaceobject(SpaceData)required
client.​primary_contact.​space.​idstringrequired
client.​primary_contact.​space.​namestringrequired
client.​origin_spaceSpaceData (object) or nullrequired
Any of:

Shared space which the client is shared from, if null client is not shared

client.​origin_space.​idstringrequired
client.​origin_space.​namestringrequired
companiesArray of objects(CompanyData)
custom_fieldsobjectrequired

The key is the field name for your custom field, value type depends on the field type

custom_fields.​property name*string or boolean or integer or nulladditional property
Any of:
string
created_atstring(date-time)required
updated_atstring or null(date-time)required
deleted_atstring or null(date-time)required
contact_companyobject(ContactCompanyPivotData)

Added included via relationship (contact -> companies or company -> contacts)

Response
application/json
{ "id": "string", "external_id": "string", "external_origin": "string", "gender": "string", "first_name": "string", "last_name": "string", "title": "string", "title_suffix": "string", "position": "string", "locale": "string", "birthday": "2019-08-24", "fax": "string", "telephone": "string", "telephone_private": "string", "mobile": "string", "mobile_private": "string", "email": "user@example.com", "email_private": "user@example.com", "address_street": "string", "address_house": "string", "address_street2": "string", "address_zip": "string", "address_state": "string", "address_town": "string", "address_country": { "id": "string", "name": "string", "code": "string" }, "owner": { "id": "string", "first_name": "string", "last_name": "string", "email": "string", "type": "user", "space": { … } }, "client": { "id": "string", "external_id": "string", "external_origin": "string", "name": "string", "shortcode": "string", "primary_contact": { … }, "origin_space": { … } }, "companies": [ { … } ], "custom_fields": "['custom_field_1' => 'value', 'custom_field_2' => true]", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "deleted_at": "2019-08-24T14:15:22Z", "contact_company": { "position": "string" } }

Request

Required scopes: contact-data:read

Security
http or oauth2
Path
idstringrequired
Query
find_bystring

The field to search by

Default "id"
Enum"id""external_id"
originstring

Used if find_by=external_id by default it will use the integration slug

includestring

Available includes are companies. You can include multiple options by separating them with a comma.

curl -i -X GET \
  'https://api.kanbert.com/api/v1/contacts/{id}?find_by=id&origin=string&include=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

ContactData

Bodyapplication/json
idstringrequired
external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

external_originstring or nullrequired

If originated from external system origin is added

genderstring or nullrequired
first_namestring or nullrequired
last_namestring or nullrequired
titlestring or nullrequired
title_suffixstring or nullrequired
positionstring or nullrequired
localestring or nullrequired
birthdaystring or null(date)required
faxstring or nullrequired
telephonestring or nullrequired
telephone_privatestring or nullrequired
mobilestring or nullrequired
mobile_privatestring or nullrequired
emailstring or null(email)required
email_privatestring or null(email)required
address_streetstring or nullrequired
address_housestring or nullrequired
address_street2string or nullrequired
address_zipstring or nullrequired
address_statestring or nullrequired
address_townstring or nullrequired
address_countryCountryData (object) or nullrequired
Any of:
address_country.​idstringrequired
address_country.​namestringrequired
address_country.​codestring(ISO 3166-1 alpha-2)required
ownerUserData (object) or nullrequired
Any of:
owner.​idstringrequired
owner.​first_namestringrequired
owner.​last_namestringrequired
owner.​emailstringrequired
owner.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
owner.​spaceobject(SpaceData)required
owner.​space.​idstringrequired
owner.​space.​namestringrequired
clientClientData (object) or nullrequired
Any of:
client.​idstringrequired
client.​external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

client.​external_originstring or nullrequired

If originated from external system origin is added

client.​namestringrequired
client.​shortcodestring or nullrequired
client.​primary_contactUserData (object) or nullrequired
Any of:
client.​primary_contact.​idstringrequired
client.​primary_contact.​first_namestringrequired
client.​primary_contact.​last_namestringrequired
client.​primary_contact.​emailstringrequired
client.​primary_contact.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
client.​primary_contact.​spaceobject(SpaceData)required
client.​primary_contact.​space.​idstringrequired
client.​primary_contact.​space.​namestringrequired
client.​origin_spaceSpaceData (object) or nullrequired
Any of:

Shared space which the client is shared from, if null client is not shared

client.​origin_space.​idstringrequired
client.​origin_space.​namestringrequired
companiesArray of objects(CompanyData)
custom_fieldsobjectrequired

The key is the field name for your custom field, value type depends on the field type

custom_fields.​property name*string or boolean or integer or nulladditional property
Any of:
string
created_atstring(date-time)required
updated_atstring or null(date-time)required
deleted_atstring or null(date-time)required
contact_companyobject(ContactCompanyPivotData)

Added included via relationship (contact -> companies or company -> contacts)

Response
application/json
{ "id": "string", "external_id": "string", "external_origin": "string", "gender": "string", "first_name": "string", "last_name": "string", "title": "string", "title_suffix": "string", "position": "string", "locale": "string", "birthday": "2019-08-24", "fax": "string", "telephone": "string", "telephone_private": "string", "mobile": "string", "mobile_private": "string", "email": "user@example.com", "email_private": "user@example.com", "address_street": "string", "address_house": "string", "address_street2": "string", "address_zip": "string", "address_state": "string", "address_town": "string", "address_country": { "id": "string", "name": "string", "code": "string" }, "owner": { "id": "string", "first_name": "string", "last_name": "string", "email": "string", "type": "user", "space": { … } }, "client": { "id": "string", "external_id": "string", "external_origin": "string", "name": "string", "shortcode": "string", "primary_contact": { … }, "origin_space": { … } }, "companies": [ { … } ], "custom_fields": "['custom_field_1' => 'value', 'custom_field_2' => true]", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "deleted_at": "2019-08-24T14:15:22Z", "contact_company": { "position": "string" } }

Request

Required scopes: contact-data:write

To update external_id jump to Endpoint /contacts/{id}/external-identifier

Security
http or oauth2
Path
idstringrequired
Query
find_bystring

The field to search by

Default "id"
Enum"id""external_id"
originstring

Used if find_by=external_id by default it will use the integration slug

Bodyapplication/json
genderstring or null
Enum"f""m""x"
first_namestring or null<= 255 characters
last_namestring or null<= 255 characters
birthdaystring or null(date-time)
titlestring or null<= 255 characters
title_suffixstring or null<= 255 characters
positionstring or null<= 255 characters
localestring or null<= 255 characters
faxstring or null<= 255 characters
telephonestring or null<= 255 characters
telephone_privatestring or null<= 255 characters
mobilestring or null<= 255 characters
mobile_privatestring or null<= 255 characters
emailstring or null(email)<= 255 characters
email_privatestring or null(email)<= 255 characters
address_streetstring or null<= 255 characters
address_street2string or null<= 255 characters
address_housestring or null<= 255 characters
address_zipstring or null<= 255 characters
address_statestring or null<= 255 characters
address_townstring or null<= 255 characters
address_countrystring

Format: ISO 3166-1 alpha-2 / ISO 3166-1 alpha-3 / ISO-3166-1 numeric / Name

You can use this field to associate a contact with a specific country. We try to find the corresponding country based on the provided value. If country code/name is valid but not created yet, it will be created. If country is not valid, the space's default country will be used.

Will be ignored if address_country_id is set.

address_country_idstring or null(CountryData)

You can use this field to associate a contact with a specific country already present in the system.

client_idstring or null(ClientData)
owner_idstring or null(UserData)
curl -i -X PATCH \
  'https://api.kanbert.com/api/v1/contacts/{id}?find_by=id&origin=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "gender": "f",
    "first_name": "string",
    "last_name": "string",
    "birthday": "2019-08-24T14:15:22Z",
    "title": "string",
    "title_suffix": "string",
    "position": "string",
    "locale": "string",
    "fax": "string",
    "telephone": "string",
    "telephone_private": "string",
    "mobile": "string",
    "mobile_private": "string",
    "email": "user@example.com",
    "email_private": "user@example.com",
    "address_street": "string",
    "address_street2": "string",
    "address_house": "string",
    "address_zip": "string",
    "address_state": "string",
    "address_town": "string",
    "address_country": "string",
    "address_country_id": "string",
    "client_id": "string",
    "owner_id": "string"
  }'

Responses

ContactData

Bodyapplication/json
idstringrequired
external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

external_originstring or nullrequired

If originated from external system origin is added

genderstring or nullrequired
first_namestring or nullrequired
last_namestring or nullrequired
titlestring or nullrequired
title_suffixstring or nullrequired
positionstring or nullrequired
localestring or nullrequired
birthdaystring or null(date)required
faxstring or nullrequired
telephonestring or nullrequired
telephone_privatestring or nullrequired
mobilestring or nullrequired
mobile_privatestring or nullrequired
emailstring or null(email)required
email_privatestring or null(email)required
address_streetstring or nullrequired
address_housestring or nullrequired
address_street2string or nullrequired
address_zipstring or nullrequired
address_statestring or nullrequired
address_townstring or nullrequired
address_countryCountryData (object) or nullrequired
Any of:
address_country.​idstringrequired
address_country.​namestringrequired
address_country.​codestring(ISO 3166-1 alpha-2)required
ownerUserData (object) or nullrequired
Any of:
owner.​idstringrequired
owner.​first_namestringrequired
owner.​last_namestringrequired
owner.​emailstringrequired
owner.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
owner.​spaceobject(SpaceData)required
owner.​space.​idstringrequired
owner.​space.​namestringrequired
clientClientData (object) or nullrequired
Any of:
client.​idstringrequired
client.​external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

client.​external_originstring or nullrequired

If originated from external system origin is added

client.​namestringrequired
client.​shortcodestring or nullrequired
client.​primary_contactUserData (object) or nullrequired
Any of:
client.​primary_contact.​idstringrequired
client.​primary_contact.​first_namestringrequired
client.​primary_contact.​last_namestringrequired
client.​primary_contact.​emailstringrequired
client.​primary_contact.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
client.​primary_contact.​spaceobject(SpaceData)required
client.​primary_contact.​space.​idstringrequired
client.​primary_contact.​space.​namestringrequired
client.​origin_spaceSpaceData (object) or nullrequired
Any of:

Shared space which the client is shared from, if null client is not shared

client.​origin_space.​idstringrequired
client.​origin_space.​namestringrequired
companiesArray of objects(CompanyData)
custom_fieldsobjectrequired

The key is the field name for your custom field, value type depends on the field type

custom_fields.​property name*string or boolean or integer or nulladditional property
Any of:
string
created_atstring(date-time)required
updated_atstring or null(date-time)required
deleted_atstring or null(date-time)required
contact_companyobject(ContactCompanyPivotData)

Added included via relationship (contact -> companies or company -> contacts)

Response
application/json
{ "id": "string", "external_id": "string", "external_origin": "string", "gender": "string", "first_name": "string", "last_name": "string", "title": "string", "title_suffix": "string", "position": "string", "locale": "string", "birthday": "2019-08-24", "fax": "string", "telephone": "string", "telephone_private": "string", "mobile": "string", "mobile_private": "string", "email": "user@example.com", "email_private": "user@example.com", "address_street": "string", "address_house": "string", "address_street2": "string", "address_zip": "string", "address_state": "string", "address_town": "string", "address_country": { "id": "string", "name": "string", "code": "string" }, "owner": { "id": "string", "first_name": "string", "last_name": "string", "email": "string", "type": "user", "space": { … } }, "client": { "id": "string", "external_id": "string", "external_origin": "string", "name": "string", "shortcode": "string", "primary_contact": { … }, "origin_space": { … } }, "companies": [ { … } ], "custom_fields": "['custom_field_1' => 'value', 'custom_field_2' => true]", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "deleted_at": "2019-08-24T14:15:22Z", "contact_company": { "position": "string" } }

Request

Required scopes: contact-data:write

Security
http or oauth2
Path
idstringrequired
Query
find_bystring

The field to search by

Default "id"
Enum"id""external_id"
originstring

Used if find_by=external_id by default it will use the integration slug

curl -i -X DELETE \
  'https://api.kanbert.com/api/v1/contacts/{id}?find_by=id&origin=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
messagestringrequired
Value"Contact deleted successfully"
Response
application/json
{ "message": "Contact deleted successfully" }

Update a contacts external identifier

Request

Required scopes: contact-data:write

Can be used to force overwrite external_id

Security
http or oauth2
Path
idstringrequired
Query
find_bystring

The field to search by

Default "id"
Enum"id""external_id"
originstring

Used if find_by=external_id by default it will use the integration slug

Bodyapplication/json
external_idstring or null<= 255 characters

Can be used to add an identifier to the client from an external system, must be unique within integration (integration slug)

external_originstring<= 255 characters

If not set, integration's slug will be used as default

curl -i -X PUT \
  'https://api.kanbert.com/api/v1/contacts/{id}/external-identifier?find_by=id&origin=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "external_id": "string",
    "external_origin": "string"
  }'

Responses

ContactData

Bodyapplication/json
idstringrequired
external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

external_originstring or nullrequired

If originated from external system origin is added

genderstring or nullrequired
first_namestring or nullrequired
last_namestring or nullrequired
titlestring or nullrequired
title_suffixstring or nullrequired
positionstring or nullrequired
localestring or nullrequired
birthdaystring or null(date)required
faxstring or nullrequired
telephonestring or nullrequired
telephone_privatestring or nullrequired
mobilestring or nullrequired
mobile_privatestring or nullrequired
emailstring or null(email)required
email_privatestring or null(email)required
address_streetstring or nullrequired
address_housestring or nullrequired
address_street2string or nullrequired
address_zipstring or nullrequired
address_statestring or nullrequired
address_townstring or nullrequired
address_countryCountryData (object) or nullrequired
Any of:
address_country.​idstringrequired
address_country.​namestringrequired
address_country.​codestring(ISO 3166-1 alpha-2)required
ownerUserData (object) or nullrequired
Any of:
owner.​idstringrequired
owner.​first_namestringrequired
owner.​last_namestringrequired
owner.​emailstringrequired
owner.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
owner.​spaceobject(SpaceData)required
owner.​space.​idstringrequired
owner.​space.​namestringrequired
clientClientData (object) or nullrequired
Any of:
client.​idstringrequired
client.​external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

client.​external_originstring or nullrequired

If originated from external system origin is added

client.​namestringrequired
client.​shortcodestring or nullrequired
client.​primary_contactUserData (object) or nullrequired
Any of:
client.​primary_contact.​idstringrequired
client.​primary_contact.​first_namestringrequired
client.​primary_contact.​last_namestringrequired
client.​primary_contact.​emailstringrequired
client.​primary_contact.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
client.​primary_contact.​spaceobject(SpaceData)required
client.​primary_contact.​space.​idstringrequired
client.​primary_contact.​space.​namestringrequired
client.​origin_spaceSpaceData (object) or nullrequired
Any of:

Shared space which the client is shared from, if null client is not shared

client.​origin_space.​idstringrequired
client.​origin_space.​namestringrequired
companiesArray of objects(CompanyData)
custom_fieldsobjectrequired

The key is the field name for your custom field, value type depends on the field type

custom_fields.​property name*string or boolean or integer or nulladditional property
Any of:
string
created_atstring(date-time)required
updated_atstring or null(date-time)required
deleted_atstring or null(date-time)required
contact_companyobject(ContactCompanyPivotData)

Added included via relationship (contact -> companies or company -> contacts)

Response
application/json
{ "id": "string", "external_id": "string", "external_origin": "string", "gender": "string", "first_name": "string", "last_name": "string", "title": "string", "title_suffix": "string", "position": "string", "locale": "string", "birthday": "2019-08-24", "fax": "string", "telephone": "string", "telephone_private": "string", "mobile": "string", "mobile_private": "string", "email": "user@example.com", "email_private": "user@example.com", "address_street": "string", "address_house": "string", "address_street2": "string", "address_zip": "string", "address_state": "string", "address_town": "string", "address_country": { "id": "string", "name": "string", "code": "string" }, "owner": { "id": "string", "first_name": "string", "last_name": "string", "email": "string", "type": "user", "space": { … } }, "client": { "id": "string", "external_id": "string", "external_origin": "string", "name": "string", "shortcode": "string", "primary_contact": { … }, "origin_space": { … } }, "companies": [ { … } ], "custom_fields": "['custom_field_1' => 'value', 'custom_field_2' => true]", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "deleted_at": "2019-08-24T14:15:22Z", "contact_company": { "position": "string" } }

Request

Required scopes: contact-data:write

Security
http or oauth2
Path
idstringrequired
Query
find_bystring

The field to search by

Default "id"
Enum"id""external_id"
originstring

Used if find_by=external_id by default it will use the integration slug

Bodyapplication/jsonrequired
company_idstring(CompanyData)required
positionstring

Position the contact holds in the company

curl -i -X PUT \
  'https://api.kanbert.com/api/v1/contacts/{id}/company/attach?find_by=id&origin=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "company_id": "string",
    "position": "string"
  }'

Responses

Bodyapplication/json
messagestringrequired
Value"Contact successfully associated with company"
Response
application/json
{ "message": "Contact successfully associated with company" }

Request

Required scopes: contact-data:write

Security
http or oauth2
Path
idstringrequired
Query
find_bystring

The field to search by

Default "id"
Enum"id""external_id"
originstring

Used if find_by=external_id by default it will use the integration slug

Bodyapplication/jsonrequired
company_idstring(CompanyData)required
curl -i -X PUT \
  'https://api.kanbert.com/api/v1/contacts/{id}/company/detach?find_by=id&origin=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "company_id": "string"
  }'

Responses

Bodyapplication/json
messagestringrequired
Value"Contact successfully detached from company"
Response
application/json
{ "message": "Contact successfully detached from company" }

Request

Required scopes: contact-data:write

Security
http or oauth2
Path
idstringrequired
Query
find_bystring

The field to search by

Default "id"
Enum"id""external_id"
originstring

Used if find_by=external_id by default it will use the integration slug

curl -i -X POST \
  'https://api.kanbert.com/api/v1/contacts/{id}/restore?find_by=id&origin=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

ContactData

Bodyapplication/json
idstringrequired
external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

external_originstring or nullrequired

If originated from external system origin is added

genderstring or nullrequired
first_namestring or nullrequired
last_namestring or nullrequired
titlestring or nullrequired
title_suffixstring or nullrequired
positionstring or nullrequired
localestring or nullrequired
birthdaystring or null(date)required
faxstring or nullrequired
telephonestring or nullrequired
telephone_privatestring or nullrequired
mobilestring or nullrequired
mobile_privatestring or nullrequired
emailstring or null(email)required
email_privatestring or null(email)required
address_streetstring or nullrequired
address_housestring or nullrequired
address_street2string or nullrequired
address_zipstring or nullrequired
address_statestring or nullrequired
address_townstring or nullrequired
address_countryCountryData (object) or nullrequired
Any of:
address_country.​idstringrequired
address_country.​namestringrequired
address_country.​codestring(ISO 3166-1 alpha-2)required
ownerUserData (object) or nullrequired
Any of:
owner.​idstringrequired
owner.​first_namestringrequired
owner.​last_namestringrequired
owner.​emailstringrequired
owner.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
owner.​spaceobject(SpaceData)required
owner.​space.​idstringrequired
owner.​space.​namestringrequired
clientClientData (object) or nullrequired
Any of:
client.​idstringrequired
client.​external_idstring or nullrequired

Can be used to add an identifier to the client from an external system, must be unique

client.​external_originstring or nullrequired

If originated from external system origin is added

client.​namestringrequired
client.​shortcodestring or nullrequired
client.​primary_contactUserData (object) or nullrequired
Any of:
client.​primary_contact.​idstringrequired
client.​primary_contact.​first_namestringrequired
client.​primary_contact.​last_namestringrequired
client.​primary_contact.​emailstringrequired
client.​primary_contact.​typestring(UserType)required
Enum"user""guest""tax_advisor""integration"
client.​primary_contact.​spaceobject(SpaceData)required
client.​primary_contact.​space.​idstringrequired
client.​primary_contact.​space.​namestringrequired
client.​origin_spaceSpaceData (object) or nullrequired
Any of:

Shared space which the client is shared from, if null client is not shared

client.​origin_space.​idstringrequired
client.​origin_space.​namestringrequired
companiesArray of objects(CompanyData)
custom_fieldsobjectrequired

The key is the field name for your custom field, value type depends on the field type

custom_fields.​property name*string or boolean or integer or nulladditional property
Any of:
string
created_atstring(date-time)required
updated_atstring or null(date-time)required
deleted_atstring or null(date-time)required
contact_companyobject(ContactCompanyPivotData)

Added included via relationship (contact -> companies or company -> contacts)

Response
application/json
{ "id": "string", "external_id": "string", "external_origin": "string", "gender": "string", "first_name": "string", "last_name": "string", "title": "string", "title_suffix": "string", "position": "string", "locale": "string", "birthday": "2019-08-24", "fax": "string", "telephone": "string", "telephone_private": "string", "mobile": "string", "mobile_private": "string", "email": "user@example.com", "email_private": "user@example.com", "address_street": "string", "address_house": "string", "address_street2": "string", "address_zip": "string", "address_state": "string", "address_town": "string", "address_country": { "id": "string", "name": "string", "code": "string" }, "owner": { "id": "string", "first_name": "string", "last_name": "string", "email": "string", "type": "user", "space": { … } }, "client": { "id": "string", "external_id": "string", "external_origin": "string", "name": "string", "shortcode": "string", "primary_contact": { … }, "origin_space": { … } }, "companies": [ { … } ], "custom_fields": "['custom_field_1' => 'value', 'custom_field_2' => true]", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "deleted_at": "2019-08-24T14:15:22Z", "contact_company": { "position": "string" } }

Request

contact:create - Fired when a new contact was created

Security
http or oauth2
Bodyapplication/json
eventstring

the event identifier

Example: "contact:create"
resourceobject
triggered_byobject(UserData)
dataobject(ContactData)
application/json
{ "event": "contact:create", "resource": { "type": "contact", "id": "string" }, "triggered_by": { "id": "string", "first_name": "string", "last_name": "string", "email": "string", "type": "user", "space": { … } }, "data": { "id": "string", "external_id": "string", "external_origin": "string", "gender": "string", "first_name": "string", "last_name": "string", "title": "string", "title_suffix": "string", "position": "string", "locale": "string", "birthday": "2019-08-24", "fax": "string", "telephone": "string", "telephone_private": "string", "mobile": "string", "mobile_private": "string", "email": "user@example.com", "email_private": "user@example.com", "address_street": "string", "address_house": "string", "address_street2": "string", "address_zip": "string", "address_state": "string", "address_town": "string", "address_country": { … }, "owner": { … }, "client": { … }, "companies": [ … ], "custom_fields": "['custom_field_1' => 'value', 'custom_field_2' => true]", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "deleted_at": "2019-08-24T14:15:22Z", "contact_company": { … } } }

Request

contact:update - Fired when a contact was updated

Security
http or oauth2
Bodyapplication/json
eventstring

the event identifier

Example: "contact:update"
resourceobject
triggered_byobject(UserData)
dataobject(ContactData)
application/json
{ "event": "contact:update", "resource": { "type": "contact", "id": "string" }, "triggered_by": { "id": "string", "first_name": "string", "last_name": "string", "email": "string", "type": "user", "space": { … } }, "data": { "id": "string", "external_id": "string", "external_origin": "string", "gender": "string", "first_name": "string", "last_name": "string", "title": "string", "title_suffix": "string", "position": "string", "locale": "string", "birthday": "2019-08-24", "fax": "string", "telephone": "string", "telephone_private": "string", "mobile": "string", "mobile_private": "string", "email": "user@example.com", "email_private": "user@example.com", "address_street": "string", "address_house": "string", "address_street2": "string", "address_zip": "string", "address_state": "string", "address_town": "string", "address_country": { … }, "owner": { … }, "client": { … }, "companies": [ … ], "custom_fields": "['custom_field_1' => 'value', 'custom_field_2' => true]", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "deleted_at": "2019-08-24T14:15:22Z", "contact_company": { … } } }

Responses

Return a 200 within 10 seconds to indicate a that the data was received successfully. Otherwise it will try 2 more times.

Request

contact:delete - A contact was deleted

Security
http or oauth2
Bodyapplication/json
eventstring

the event identifier

Example: "contact:delete"
resourceobject
triggered_byobject(UserData)
dataobject(ContactData)
application/json
{ "event": "contact:delete", "resource": { "type": "contact", "id": "string" }, "triggered_by": { "id": "string", "first_name": "string", "last_name": "string", "email": "string", "type": "user", "space": { … } }, "data": { "id": "string", "external_id": "string", "external_origin": "string", "gender": "string", "first_name": "string", "last_name": "string", "title": "string", "title_suffix": "string", "position": "string", "locale": "string", "birthday": "2019-08-24", "fax": "string", "telephone": "string", "telephone_private": "string", "mobile": "string", "mobile_private": "string", "email": "user@example.com", "email_private": "user@example.com", "address_street": "string", "address_house": "string", "address_street2": "string", "address_zip": "string", "address_state": "string", "address_town": "string", "address_country": { … }, "owner": { … }, "client": { … }, "companies": [ … ], "custom_fields": "['custom_field_1' => 'value', 'custom_field_2' => true]", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "deleted_at": "2019-08-24T14:15:22Z", "contact_company": { … } } }

Responses

Return a 200 within 10 seconds to indicate a that the data was received successfully. Otherwise it will try 2 more times.

Operations
Webhooks
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Schemas