Org contacts

Add a contact record

Track a person. Pass `contact_id` to overlay a corpus contact (idempotent — returns 200 with the existing record rather than duplicating it), or a `name` plus parent entity for someone Bellwork has never seen. There is no bulk import by design: a record means somebody took an interest.

POST
/org-contacts

Track a person. Pass contact_id to overlay a corpus contact (idempotent — returns 200 with the existing record rather than duplicating it), or a name plus parent entity for someone Bellwork has never seen. There is no bulk import by design: a record means somebody took an interest.

AuthorizationBearer <token>

API key (sk_live_... prefix). Generate keys in the UI under Settings > API Keys, then send it as Authorization: Bearer sk_live_...

In: header

Request Body

application/json

contact_id?string
Formatuuid
name?string

For a person not in the corpus

district_id?string
Formatuuid
school_id?string
Formatuuid
added_via?string
Value in"reveal" | "search" | "brief" | "manual"
promoted_from_brief_id?string
Formatuuid
promoted_person_key?string

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://loading/api/v1/org-contacts" \  -H "Content-Type: application/json" \  -d '{}'
{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b",
    "contact_id": "f245e2a3-e141-4d41-912c-b1c1f5bd5598",
    "name": "string",
    "district_id": "880bc4ee-477a-4e12-a0f0-c89f020ba05d",
    "school_id": "c1317ebe-519d-4c8a-9ab1-7bfd15017c1c",
    "notes": "string",
    "tags": [
      "string"
    ],
    "added_at": "string",
    "added_via": "reveal",
    "added_by": "6f5851d8-8a63-4597-95ec-4f964b8e7696",
    "overrides": {
      "property1": "string",
      "property2": "string"
    },
    "overridden_at": {
      "property1": "string",
      "property2": "string"
    },
    "promoted_from_brief_id": "7d555af3-e03f-40b9-9ba9-f70a244e4343",
    "promoted_person_key": "string"
  }
}
{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "org_id": "a40f5d1f-d889-42e9-94ea-b9b33585fc6b",
    "contact_id": "f245e2a3-e141-4d41-912c-b1c1f5bd5598",
    "name": "string",
    "district_id": "880bc4ee-477a-4e12-a0f0-c89f020ba05d",
    "school_id": "c1317ebe-519d-4c8a-9ab1-7bfd15017c1c",
    "notes": "string",
    "tags": [
      "string"
    ],
    "added_at": "string",
    "added_via": "reveal",
    "added_by": "6f5851d8-8a63-4597-95ec-4f964b8e7696",
    "overrides": {
      "property1": "string",
      "property2": "string"
    },
    "overridden_at": {
      "property1": "string",
      "property2": "string"
    },
    "promoted_from_brief_id": "7d555af3-e03f-40b9-9ba9-f70a244e4343",
    "promoted_person_key": "string"
  }
}
{
  "error": "string",
  "message": "string",
  "statusCode": -9007199254740991
}
{
  "error": "string",
  "message": "string",
  "statusCode": -9007199254740991
}