Docs menu

REST API

Labels

Read workspace labels, label status across records, and recommended labels.

GET/v2/workspaces/{slug}/labels

Label list search

List workspace labels and the record count for each label.

Parameters

  • slugRequiredstringpath
    Workspace slug

Request example

curl --request GET \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/labels" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT"

Success responses

Response body

  • itemsRequiredV2LabelWithRecordCount[]
    Items contained in this value.
  • idRequiredinteger
    Label identifier.
  • nameRequiredstring
    Label name.
  • colorRequiredstring
    Label display color.
  • record_countRequiredinteger
    Number of records.

Response example

{
  "items": [
    {
      "id": 1,
      "name": "Example",
      "color": "string",
      "record_count": 1
    }
  ]
}

Errors

StatusError codeDescription
401UNAUTHORIZEDUnauthenticated request
403FORBIDDENInsufficient requester permissions
404WORKSPACE_NOT_FOUNDNot found
422VALIDATION_ERRORUnprocessable content
429RATE_LIMIT_EXCEEDEDRequest limit exceededLearn more
GET/v2/workspaces/{slug}/records/labels/status

Check Label Status of Multiple Records

Retrieve label application status for the specified records.

Parameters

  • slugRequiredstringpath
    Workspace slug
  • record_idsRequiredinteger[]query
    Record IDs whose label status to retrieve.

Request example

curl --request GET \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/records/labels/status?record_ids=1" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT"

Success responses

Response body

  • labelsRequiredV2BulkLabelStatusItem[]
    Labels associated with the resource.
  • idRequiredinteger
    Label identifier.
  • nameRequiredstring
    Label name.
  • colorRequiredstring
    Label display color.
  • statusRequiredV2BulkLabelStatus
    Current status.

Response example

{
  "labels": [
    {
      "id": 1,
      "name": "Example",
      "color": "string",
      "status": "unchecked"
    }
  ]
}

Errors

StatusError codeDescription
401UNAUTHORIZEDUnauthenticated request
403FORBIDDENInsufficient requester permissions
404WORKSPACE_NOT_FOUNDNot found
422VALIDATION_ERRORUnprocessable content
429RATE_LIMIT_EXCEEDEDRequest limit exceededLearn more
POST/v2/workspaces/{slug}/records/labels

Add labels to multiple records

Associate the specified labels with the specified records.

Parameters

  • slugRequiredstringpath
    Workspace slug

Request body

Records and labels to associate.

  • record_idsRequiredinteger[]
    Record identifiers whose label associations will be changed.
  • label_idsRequiredinteger[]
    Label identifiers to associate or remove.

Request example

curl --request POST \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/records/labels" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT" \
  --header "Content-Type: application/json" \
  --data '{
  "record_ids": [
    1
  ],
  "label_ids": [
    1
  ]
}'

Success responses

Errors

StatusError codeDescription
400INVALID_LABEL_SELECTIONInvalid request
401UNAUTHORIZEDUnauthenticated request
403FORBIDDENInsufficient requester permissions
404WORKSPACE_NOT_FOUNDNot found
422VALIDATION_ERRORUnprocessable content
429RATE_LIMIT_EXCEEDEDRequest limit exceededLearn more
DELETE/v2/workspaces/{slug}/records/labels

Remove labels from multiple records

Remove the specified label associations from the specified records.

Parameters

  • slugRequiredstringpath
    Workspace slug

Request body

Records and labels whose associations will be removed.

  • record_idsRequiredinteger[]
    Record identifiers whose label associations will be changed.
  • label_idsRequiredinteger[]
    Label identifiers to associate or remove.

Request example

curl --request DELETE \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/records/labels" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT" \
  --header "Content-Type: application/json" \
  --data '{
  "record_ids": [
    1
  ],
  "label_ids": [
    1
  ]
}'

Success responses

Errors

StatusError codeDescription
400INVALID_LABEL_SELECTIONInvalid request
401UNAUTHORIZEDUnauthenticated request
403FORBIDDENInsufficient requester permissions
404WORKSPACE_NOT_FOUNDNot found
422VALIDATION_ERRORUnprocessable content
429RATE_LIMIT_EXCEEDEDRequest limit exceededLearn more
GET/v2/workspaces/{slug}/records/{record_id}/label-recommendations

List record label recommendations

List label recommendations generated for the record.

Parameters

  • record_idRequiredintegerpath
    Record identifier.
  • slugRequiredstringpath
    Workspace slug

Request example

curl --request GET \
  --url "https://api.callabo.ai/v2/workspaces/your-workspace/records/1/label-recommendations" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer $CALLABO_PAT"

Success responses

Response body

  • record_idRequiredinteger
    Record identifier.
  • recommendationsRequiredV2RecommendedLabel[]
    Recommended labels for the record.
  • label_idRequiredinteger
    Recommended label identifier.
  • label_nameRequiredstring
    Recommended label name.

Response example

{
  "record_id": 1,
  "recommendations": [
    {
      "label_id": 1,
      "label_name": "string"
    }
  ]
}

Errors

StatusError codeDescription
401UNAUTHORIZEDUnauthenticated request
403FORBIDDENInsufficient requester permissions
404RECORD_NOT_FOUNDNot found
422VALIDATION_ERRORUnprocessable content
429RATE_LIMIT_EXCEEDEDRequest limit exceededLearn more
© 2026 Return Zero, Inc.