Contact Channels

Reachable channels for a contact.

4 actions. Each is callable by the agent as a tool, over HTTP via /api/invoke, and (usually) from a UI page.

contact_channels.list

GET

List a contact's addressable channels (emails, phones, social handles).

  • AI tool: contact_channels_list
  • API: GET /api/invoke/contact_channels.list

Input

Field Type Required Description
contactId string yes
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "contactId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "contactId"
  ]
}

contact_channels.create

POST · mutating

Add an addressable channel to a contact.

  • AI tool: contact_channels_create
  • API: POST /api/invoke/contact_channels.create

Input

Field Type Required Description
contactId string yes
kind "email" | "phone" | "social" | "website" | "other" yes
value string yes
platform string
url string
verified boolean
followers integer
isPrimary boolean
label string
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "contactId": {
      "type": "string",
      "minLength": 1
    },
    "kind": {
      "type": "string",
      "enum": [
        "email",
        "phone",
        "social",
        "website",
        "other"
      ]
    },
    "value": {
      "type": "string",
      "minLength": 1
    },
    "platform": {
      "type": "string"
    },
    "url": {
      "type": "string"
    },
    "verified": {
      "type": "boolean"
    },
    "followers": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "isPrimary": {
      "type": "boolean"
    },
    "label": {
      "type": "string"
    }
  },
  "required": [
    "contactId",
    "kind",
    "value"
  ]
}

contact_channels.update

PATCH · mutating

Update a contact channel.

  • AI tool: contact_channels_update
  • API: PATCH /api/invoke/contact_channels.update

Input

Field Type Required Description
id string yes
patch object yes
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1
    },
    "patch": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "minLength": 1
        },
        "contactId": {
          "type": "string",
          "minLength": 1
        },
        "kind": {
          "type": "string",
          "enum": [
            "email",
            "phone",
            "social",
            "website",
            "other"
          ]
        },
        "platform": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "minLength": 1
        },
        "url": {
          "type": "string",
          "format": "uri"
        },
        "verified": {
          "default": false,
          "type": "boolean"
        },
        "followers": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "isPrimary": {
          "default": false,
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "createdAt": {}
      }
    }
  },
  "required": [
    "id",
    "patch"
  ]
}

contact_channels.delete

DELETE · mutating

Delete a contact channel.

  • AI tool: contact_channels_delete
  • API: DELETE /api/invoke/contact_channels.delete

Input

Field Type Required Description
id string yes
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "id"
  ]
}