Developer documentationAPI v1

Reference

contacts · API

Endpoints, parameters, request bodies and response schemas for contacts in Squario API v1.

contacts

16 documented operations

Contract descriptions and schemas are kept in English, exactly as generated by the API.

GET/v1/contacts

List contacts

Operation list_contacts

Authentication · Workspace API key

Parameters

Parameters
ParameterLocationContract
pageOptionalquery

1-based page number, for pages within the first 10,000 records (the last is floor(10000 / page_size) + 1). Deeper, walk with cursor. Not combinable with cursor.

View JSON schema
{
  "type": "integer",
  "minimum": 1,
  "maximum": 10000,
  "default": 1
}
cursorOptionalquery

Keyset pagination: start begins a walk, then send each response's meta.next_cursor verbatim until it is null. Reaches any depth; keep the same sort, order, search and filters throughout. Not combinable with page.

View JSON schema
{
  "type": "string"
}
page_sizeOptionalquery

Records per page.

View JSON schema
{
  "type": "integer",
  "minimum": 1,
  "maximum": 100,
  "default": 25
}
sortOptionalquery

A sortable field key (GET /v1/resources/{resource} lists sort_keys). Default: newest first.

View JSON schema
{
  "type": "string"
}
orderOptionalquery

Sort direction.

View JSON schema
{
  "type": "string",
  "enum": [
    "asc",
    "desc"
  ],
  "default": "desc"
}
searchOptionalquery

Free-text search.

View JSON schema
{
  "type": "string"
}
include_archivedOptionalquery

Include archived records.

View JSON schema
{
  "type": "boolean",
  "default": false
}
filterOptionalquery

A URL-encoded JSON array of filters.

application/json · View JSON schema
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/Filter"
  }
}
joinOptionalquery

How filters combine.

View JSON schema
{
  "type": "string",
  "enum": [
    "and",
    "or"
  ],
  "default": "and"
}
fieldsOptionalquery

Comma-separated top-level properties to return (id is always kept); a name the record does not have is skipped. Omit for every property.

View JSON schema
{
  "type": "string"
}

Responses

200 One page of records.

application/json

{
  "type": "object",
  "required": [
    "data",
    "meta"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/contacts_record"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/ListMeta"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
422 The workspace refused the values (unknown field, required field, rule), or the Idempotency-Key was already used for a different request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
POST/v1/contacts

Create one of contacts

Operation create_contacts

Authentication · Workspace API key

Parameters

Parameters
ParameterLocationContract
Idempotency-KeyOptionalheader

Makes the write safe to retry: a repeat of the same request with the same key within 24 hours returns the first successful response (with Idempotent-Replayed: true) instead of writing again. The same key on a different request is refused (422 idempotency_key_reused); while the first is still running, 409 idempotency_key_in_use. A failed request releases its key. Up to 255 printable ASCII characters; use a UUID.

View JSON schema
{
  "type": "string",
  "minLength": 1,
  "maxLength": 255
}

Request body

Required

application/json · View JSON schema
{
  "type": "object",
  "additionalProperties": true,
  "description": "Field values keyed by field key; only the fields to set. Custom fields as cf__<key> fields or as one `custom_fields` object (not both). An unknown field is refused (422). data_model_records take `model_id` here or as a query parameter. GET /v1/resources/{resource} lists the writable fields."
}

Responses

201 The created record.

application/json

{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/contacts_record"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
  • Location The created record's URL.
  • Idempotent-Replayed true when this is the stored response to an earlier request with the same Idempotency-Key.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
405 The method is not allowed here (e.g. a write on a read-only resource).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Allow
409 The write conflicts with an existing record, or a request with the same Idempotency-Key is still running.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
413 The body is over 1 MiB.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
422 The workspace refused the values (unknown field, required field, rule), or the Idempotency-Key was already used for a different request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
POST/v1/contacts/query

List contacts, parameters in the body

Operation query_contacts

The list endpoint with its parameters as JSON (filters as a real array). Counts as a read.

Authentication · Workspace API key

Parameters

This operation has no parameters.

Request body

Optional

application/json · View JSON schema
{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "page": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10000,
      "default": 1,
      "description": "1-based page number, for pages within the first 10,000 records (the last is floor(10000 / page_size) + 1). Deeper, walk with `cursor`. Not combinable with `cursor`."
    },
    "cursor": {
      "type": "string",
      "description": "Keyset pagination: `start` begins a walk, then send each response's `meta.next_cursor` verbatim until it is null. Reaches any depth; keep the same sort, order, search and filters throughout. Not combinable with `page`."
    },
    "page_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25
    },
    "sort": {
      "type": "string"
    },
    "order": {
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "search": {
      "type": "string",
      "description": "Free text; full-text-indexed resources only."
    },
    "include_archived": {
      "type": "boolean",
      "default": false
    },
    "filters": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Filter"
      }
    },
    "join": {
      "type": "string",
      "enum": [
        "and",
        "or"
      ],
      "default": "and"
    },
    "model_id": {
      "type": "string",
      "format": "uuid",
      "description": "Required for data_model_records only."
    },
    "fields": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 100,
      "description": "Top-level properties to return (`id` is always kept); a name the record does not have is skipped."
    }
  }
}

Responses

200 One page of records.

application/json

{
  "type": "object",
  "required": [
    "data",
    "meta"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/contacts_record"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/ListMeta"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
413 The body is over 1 MiB.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
422 The workspace refused the values (unknown field, required field, rule), or the Idempotency-Key was already used for a different request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
GET/v1/contacts/{id}

Get one of contacts

Operation get_contacts

Authentication · Workspace API key

Parameters

Parameters
ParameterLocationContract
idRequiredpath

The record's UUID.

View JSON schema
{
  "type": "string",
  "format": "uuid"
}
fieldsOptionalquery

Comma-separated top-level properties to return (id is always kept); a name the record does not have is skipped. Omit for every property.

View JSON schema
{
  "type": "string"
}

Responses

200 The record.

application/json

{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/contacts_record"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
  • Idempotent-Replayed true when this is the stored response to an earlier request with the same Idempotency-Key.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
PATCH/v1/contacts/{id}

Update one of contacts

Operation update_contacts

Authentication · Workspace API key

Parameters

Parameters
ParameterLocationContract
idRequiredpath

The record's UUID.

View JSON schema
{
  "type": "string",
  "format": "uuid"
}
Idempotency-KeyOptionalheader

Makes the write safe to retry: a repeat of the same request with the same key within 24 hours returns the first successful response (with Idempotent-Replayed: true) instead of writing again. The same key on a different request is refused (422 idempotency_key_reused); while the first is still running, 409 idempotency_key_in_use. A failed request releases its key. Up to 255 printable ASCII characters; use a UUID.

View JSON schema
{
  "type": "string",
  "minLength": 1,
  "maxLength": 255
}

Request body

Required

application/json · View JSON schema
{
  "type": "object",
  "additionalProperties": true,
  "description": "Field values keyed by field key; only the fields to set. Custom fields as cf__<key> fields or as one `custom_fields` object (not both). An unknown field is refused (422). data_model_records take `model_id` here or as a query parameter. GET /v1/resources/{resource} lists the writable fields."
}

Responses

200 The record.

application/json

{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/contacts_record"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
  • Idempotent-Replayed true when this is the stored response to an earlier request with the same Idempotency-Key.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
405 The method is not allowed here (e.g. a write on a read-only resource).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Allow
409 The write conflicts with an existing record, or a request with the same Idempotency-Key is still running.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
413 The body is over 1 MiB.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
422 The workspace refused the values (unknown field, required field, rule), or the Idempotency-Key was already used for a different request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
DELETE/v1/contacts/{id}

Archive one of contacts

Operation archive_contacts

A soft delete: the record is archived and can be restored.

Authentication · Workspace API key

Parameters

Parameters
ParameterLocationContract
idRequiredpath

The record's UUID.

View JSON schema
{
  "type": "string",
  "format": "uuid"
}
Idempotency-KeyOptionalheader

Makes the write safe to retry: a repeat of the same request with the same key within 24 hours returns the first successful response (with Idempotent-Replayed: true) instead of writing again. The same key on a different request is refused (422 idempotency_key_reused); while the first is still running, 409 idempotency_key_in_use. A failed request releases its key. Up to 255 printable ASCII characters; use a UUID.

View JSON schema
{
  "type": "string",
  "minLength": 1,
  "maxLength": 255
}

Request body

Optional

application/json · View JSON schema
{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "reason": {
      "type": "string",
      "maxLength": 1000
    }
  }
}

Responses

200 The record.

application/json

{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/contacts_record"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
  • Idempotent-Replayed true when this is the stored response to an earlier request with the same Idempotency-Key.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
405 The method is not allowed here (e.g. a write on a read-only resource).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Allow
409 The write conflicts with an existing record, or a request with the same Idempotency-Key is still running.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
413 The body is over 1 MiB.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
422 The workspace refused the values (unknown field, required field, rule), or the Idempotency-Key was already used for a different request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
POST/v1/contacts/{id}/restore

Restore an archived one of contacts

Operation restore_contacts

Authentication · Workspace API key

Parameters

Parameters
ParameterLocationContract
idRequiredpath

The record's UUID.

View JSON schema
{
  "type": "string",
  "format": "uuid"
}
Idempotency-KeyOptionalheader

Makes the write safe to retry: a repeat of the same request with the same key within 24 hours returns the first successful response (with Idempotent-Replayed: true) instead of writing again. The same key on a different request is refused (422 idempotency_key_reused); while the first is still running, 409 idempotency_key_in_use. A failed request releases its key. Up to 255 printable ASCII characters; use a UUID.

View JSON schema
{
  "type": "string",
  "minLength": 1,
  "maxLength": 255
}

Responses

200 The record.

application/json

{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/contacts_record"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
  • Idempotent-Replayed true when this is the stored response to an earlier request with the same Idempotency-Key.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
405 The method is not allowed here (e.g. a write on a read-only resource).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Allow
409 The write conflicts with an existing record, or a request with the same Idempotency-Key is still running.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
413 The body is over 1 MiB.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
422 The workspace refused the values (unknown field, required field, rule), or the Idempotency-Key was already used for a different request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
GET/v1/contacts/{id}/companies

List the companies linked to one of contacts

Operation list_contacts_companies

A contact's current employment at a company. Removing it ends the employment (ended_at is set to today and is_primary cleared) rather than deleting it, as the app does; ended employments are not listed. A key with a resource list must cover companies as well as contacts.

Authentication · Workspace API key

Parameters

Parameters
ParameterLocationContract
idRequiredpath

The record's UUID.

View JSON schema
{
  "type": "string",
  "format": "uuid"
}
pageOptionalquery

1-based page of links.

View JSON schema
{
  "type": "integer",
  "minimum": 1,
  "maximum": 10000,
  "default": 1
}
page_sizeOptionalquery

Links per page.

View JSON schema
{
  "type": "integer",
  "minimum": 1,
  "maximum": 100,
  "default": 100
}

Responses

200 One page of links, oldest first.

application/json

{
  "type": "object",
  "required": [
    "data",
    "meta"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/company_contacts_link"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/LinkListMeta"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
GET/v1/contacts/{id}/deals

List the deals linked to one of contacts

Operation list_contacts_deals

A contact involved in a deal, with their role on it. A key with a resource list must cover deals as well as contacts.

Authentication · Workspace API key

Parameters

Parameters
ParameterLocationContract
idRequiredpath

The record's UUID.

View JSON schema
{
  "type": "string",
  "format": "uuid"
}
pageOptionalquery

1-based page of links.

View JSON schema
{
  "type": "integer",
  "minimum": 1,
  "maximum": 10000,
  "default": 1
}
page_sizeOptionalquery

Links per page.

View JSON schema
{
  "type": "integer",
  "minimum": 1,
  "maximum": 100,
  "default": 100
}

Responses

200 One page of links, oldest first.

application/json

{
  "type": "object",
  "required": [
    "data",
    "meta"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/deal_contacts_link"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/LinkListMeta"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
GET/v1/contacts/{id}/tags

List the tags linked to one of contacts

Operation list_contacts_tags

A tag on one of contacts. The tag must be active in the workspace. A key with a resource list must cover tags as well as contacts.

Authentication · Workspace API key

Parameters

Parameters
ParameterLocationContract
idRequiredpath

The record's UUID.

View JSON schema
{
  "type": "string",
  "format": "uuid"
}
pageOptionalquery

1-based page of links.

View JSON schema
{
  "type": "integer",
  "minimum": 1,
  "maximum": 10000,
  "default": 1
}
page_sizeOptionalquery

Links per page.

View JSON schema
{
  "type": "integer",
  "minimum": 1,
  "maximum": 100,
  "default": 100
}

Responses

200 One page of links, oldest first.

application/json

{
  "type": "object",
  "required": [
    "data",
    "meta"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/contact_tags_link"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/LinkListMeta"
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • X-RateLimit-Limit Requests allowed in the window of the tightest rate limit (absent when none applies).
  • X-RateLimit-Remaining Requests left in that window.
  • X-RateLimit-Reset Seconds until that window resets.
  • X-Quota-Limit The workspace's monthly request quota (absent when uncapped).
  • X-Quota-Remaining Requests left this month (absent when uncapped).
  • X-Quota-Reset When the monthly quota resets.
400 Malformed parameters or body (invalid_request).

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
401 Missing, unknown, revoked or expired API key.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • WWW-Authenticate
403 The key or its owner may not make this request.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
404 No such route, resource or record.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
429 Rate limited, or the monthly quota is used up.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
  • Retry-After Seconds to wait before retrying.
  • X-RateLimit-Reset Seconds until that window resets.
500 Unexpected failure.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.
503 Temporarily unable to check the key or reach the data.

application/json

{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}

Response headers

  • X-Request-Id This request's id; quote it when reporting a problem.

Schema definitions

Filter
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "field",
    "op"
  ],
  "properties": {
    "field": {
      "type": "string",
      "description": "A field key; a custom field's `filter_key` (cfv:<id>) from GET /v1/resources/{resource}; or rel:<fk_column>.<column> for a related record's column."
    },
    "op": {
      "type": "string",
      "enum": [
        "eq",
        "ne",
        "gt",
        "gte",
        "lt",
        "lte",
        "iLike",
        "notILike",
        "inArray",
        "notInArray",
        "isBetween",
        "isEmpty",
        "isNotEmpty"
      ]
    },
    "value": {
      "description": "A scalar for most operators; an array for inArray/notInArray; a [low, high] pair for isBetween; omitted for isEmpty/isNotEmpty. Dates are ISO 8601."
    }
  }
}
contacts_record
{
  "type": "object",
  "title": "Contact",
  "description": "A Contact record as the key's owner may read it. Built-in fields are listed; custom fields and anything else the workspace adds arrive as further properties. GET /v1/resources/contacts describes this workspace's fields.",
  "additionalProperties": true,
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "prefix": {
      "title": "Prefix",
      "x-squario-kind": "text"
    },
    "first_name": {
      "title": "First Name",
      "x-squario-kind": "text"
    },
    "last_name": {
      "title": "Last Name",
      "x-squario-kind": "text"
    },
    "middle_name": {
      "title": "Middle Name",
      "x-squario-kind": "text"
    },
    "suffix": {
      "title": "Suffix",
      "x-squario-kind": "text"
    },
    "nickname": {
      "title": "Nickname",
      "x-squario-kind": "text"
    },
    "avatar_url": {
      "title": "Avatar",
      "x-squario-kind": "media"
    },
    "name": {
      "title": "Name",
      "x-squario-kind": "text"
    },
    "primary_company_id": {
      "title": "Company",
      "x-squario-kind": "relation"
    },
    "primary_email": {
      "title": "Email",
      "x-squario-kind": "text"
    },
    "email_state": {
      "title": "Email state",
      "x-squario-kind": "enum"
    },
    "primary_phone": {
      "title": "Phone",
      "x-squario-kind": "text"
    },
    "country_code": {
      "title": "Country",
      "x-squario-kind": "relation"
    },
    "locale_code": {
      "title": "Locale",
      "x-squario-kind": "relation"
    },
    "timezone_id": {
      "title": "Timezone",
      "x-squario-kind": "relation"
    },
    "preferred_language": {
      "title": "Preferred Language",
      "x-squario-kind": "text"
    },
    "preferred_channel": {
      "title": "Preferred Channel",
      "x-squario-kind": "enum"
    },
    "preferred_contact_time": {
      "title": "Preferred Contact Time",
      "x-squario-kind": "text"
    },
    "do_not_call": {
      "title": "Do Not Call",
      "x-squario-kind": "boolean",
      "type": [
        "boolean",
        "null"
      ]
    },
    "do_not_email": {
      "title": "Do Not Email",
      "x-squario-kind": "boolean",
      "type": [
        "boolean",
        "null"
      ]
    },
    "do_not_sms": {
      "title": "Do Not SMS",
      "x-squario-kind": "boolean",
      "type": [
        "boolean",
        "null"
      ]
    },
    "do_not_mail": {
      "title": "Do Not Mail",
      "x-squario-kind": "boolean",
      "type": [
        "boolean",
        "null"
      ]
    },
    "do_not_contact": {
      "title": "Do Not Contact",
      "x-squario-kind": "boolean",
      "type": [
        "boolean",
        "null"
      ]
    },
    "do_not_contact_reason": {
      "title": "Do Not Contact Reason",
      "x-squario-kind": "text"
    },
    "lifecycle": {
      "title": "Lifecycle",
      "x-squario-kind": "enum"
    },
    "source": {
      "title": "Source",
      "x-squario-kind": "enum"
    },
    "source_detail": {
      "title": "Source Detail",
      "x-squario-kind": "text"
    },
    "marketing_consent": {
      "title": "Marketing Consent",
      "x-squario-kind": "boolean",
      "type": [
        "boolean",
        "null"
      ]
    },
    "marketing_consent_source": {
      "title": "Consent Source",
      "x-squario-kind": "text"
    },
    "utm_source": {
      "title": "UTM Source",
      "x-squario-kind": "text"
    },
    "utm_medium": {
      "title": "UTM Medium",
      "x-squario-kind": "text"
    },
    "utm_campaign": {
      "title": "UTM Campaign",
      "x-squario-kind": "text"
    },
    "utm_term": {
      "title": "UTM Term",
      "x-squario-kind": "text"
    },
    "utm_content": {
      "title": "UTM Content",
      "x-squario-kind": "text"
    },
    "referred_by_company_id": {
      "title": "Referred By Company",
      "x-squario-kind": "relation"
    },
    "referred_by_contact_id": {
      "title": "Referred By Contact",
      "x-squario-kind": "relation"
    },
    "owner_member_id": {
      "title": "Owner",
      "x-squario-kind": "relation"
    },
    "notes": {
      "title": "Notes",
      "x-squario-kind": "text"
    },
    "internal_notes": {
      "title": "Internal Notes",
      "x-squario-kind": "text"
    },
    "full_name": {
      "title": "Full name",
      "x-squario-kind": "text"
    },
    "job_title": {
      "title": "Job title",
      "x-squario-kind": "text"
    },
    "last_activity_type": {
      "title": "Last activity type",
      "x-squario-kind": "enum"
    },
    "last_activity_at": {
      "title": "Last activity at",
      "x-squario-kind": "date",
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "next_activity_type": {
      "title": "Next activity type",
      "x-squario-kind": "enum"
    },
    "next_activity_at": {
      "title": "Next activity at",
      "x-squario-kind": "date",
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "inactivity_days": {
      "title": "Inactivity",
      "x-squario-kind": "text"
    },
    "created_at": {
      "title": "Created",
      "x-squario-kind": "date",
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "tag_ids": {
      "title": "Labels",
      "x-squario-kind": "relation"
    }
  }
}
ListMeta
{
  "type": "object",
  "description": "Page mode carries `page`; cursor mode carries `next_cursor` and `cursor_supported` instead, and `has_more` is `next_cursor !== null`.",
  "required": [
    "page_size",
    "total",
    "has_more"
  ],
  "properties": {
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "Page mode only."
    },
    "next_cursor": {
      "type": [
        "string",
        "null"
      ],
      "description": "Cursor mode only: send it as `cursor` for the next page; null on the last one."
    },
    "cursor_supported": {
      "type": "boolean",
      "description": "Cursor mode only. False when this sort cannot be walked (search relevance): the response is then a plain first page with no `next_cursor`."
    },
    "page_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "total": {
      "type": "integer",
      "minimum": 0
    },
    "total_is_capped": {
      "type": "boolean",
      "description": "Present when the count stopped at its cap: `total` is then a lower bound."
    },
    "has_more": {
      "type": "boolean"
    }
  }
}
Error
{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "type",
        "code",
        "message",
        "request_id"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "invalid_request_error",
            "authentication_error",
            "permission_error",
            "not_found_error",
            "conflict_error",
            "validation_error",
            "rate_limit_error",
            "api_error"
          ]
        },
        "code": {
          "type": "string",
          "enum": [
            "invalid_request",
            "invalid_api_key",
            "expired_api_key",
            "key_assurance_stale",
            "ip_not_allowed",
            "permission_denied",
            "plan_upgrade_required",
            "insufficient_scope",
            "feature_unavailable",
            "forbidden",
            "not_found",
            "unknown_resource",
            "route_not_found",
            "method_not_allowed",
            "conflict",
            "idempotency_key_in_use",
            "payload_too_large",
            "validation_failed",
            "idempotency_key_reused",
            "rate_limited",
            "quota_exceeded",
            "internal_error",
            "service_unavailable"
          ]
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "object",
          "additionalProperties": true
        },
        "request_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  }
}
RecordWrite
{
  "type": "object",
  "additionalProperties": true,
  "description": "Field values keyed by field key; only the fields to set. Custom fields as cf__<key> fields or as one `custom_fields` object (not both). An unknown field is refused (422). data_model_records take `model_id` here or as a query parameter. GET /v1/resources/{resource} lists the writable fields."
}
QueryRequest
{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "page": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10000,
      "default": 1,
      "description": "1-based page number, for pages within the first 10,000 records (the last is floor(10000 / page_size) + 1). Deeper, walk with `cursor`. Not combinable with `cursor`."
    },
    "cursor": {
      "type": "string",
      "description": "Keyset pagination: `start` begins a walk, then send each response's `meta.next_cursor` verbatim until it is null. Reaches any depth; keep the same sort, order, search and filters throughout. Not combinable with `page`."
    },
    "page_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25
    },
    "sort": {
      "type": "string"
    },
    "order": {
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "search": {
      "type": "string",
      "description": "Free text; full-text-indexed resources only."
    },
    "include_archived": {
      "type": "boolean",
      "default": false
    },
    "filters": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Filter"
      }
    },
    "join": {
      "type": "string",
      "enum": [
        "and",
        "or"
      ],
      "default": "and"
    },
    "model_id": {
      "type": "string",
      "format": "uuid",
      "description": "Required for data_model_records only."
    },
    "fields": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 100,
      "description": "Top-level properties to return (`id` is always kept); a name the record does not have is skipped."
    }
  }
}
ArchiveRequest
{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "reason": {
      "type": "string",
      "maxLength": 1000
    }
  }
}
LinkListMeta
{
  "type": "object",
  "required": [
    "page",
    "page_size",
    "has_more"
  ],
  "properties": {
    "page": {
      "type": "integer",
      "minimum": 1
    },
    "page_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "has_more": {
      "type": "boolean"
    }
  }
}