{"info":{"title":"CRM Public API","version":"1.0.0"},"servers":[{"url":"https://api.crmchat.ai/v1"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API key (sk_...) as Bearer token"}}},"webhooks":{"contact.created":{"post":{"tags":["Contacts"],"summary":"Contact created","description":"Sent when a new contact is created in a watched workspace","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","description":"Unique event identifier (format: `evt_{firestoreEventId}_{webhookId}`)"},"eventType":{"const":"contact.created","type":"string"},"eventDate":{"type":"string","format":"date-time","description":"ISO 8601 timestamp of when the event was dispatched"},"workspaceId":{"type":"string","description":"Workspace the contact belongs to"},"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"ownerId":{"type":"string"},"type":{"enum":["contact","group"],"type":"string"},"fullName":{"type":"string"},"description":{"type":"string"},"avatarUrl":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"url":{"type":"string"},"amount":{"type":"number"},"telegram":{"type":"object","properties":{"id":{"type":"number"},"username":{"type":"string"},"folders":{"type":"array","items":{"type":"string"},"readOnly":true},"inviteLink":{"type":"string"}}},"custom":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"id":{"type":"string","readOnly":true}},"required":["createdAt","updatedAt","workspaceId","ownerId","fullName","id"]}},"required":["eventId","eventType","eventDate","workspaceId","data"]}}}},"parameters":[{"name":"X-Webhook-Signature","in":"header","description":"HMAC-SHA256 hex digest of the raw request body, signed with the webhook signing secret","schema":{"type":"string"},"required":true},{"name":"X-Webhook-Event","in":"header","description":"The event type (e.g. `contact.created`, `contact.updated`, `contact.deleted`)","schema":{"type":"string"},"required":true},{"name":"X-Webhook-Id","in":"header","description":"Unique event ID for idempotency","schema":{"type":"string"},"required":true},{"name":"User-Agent","in":"header","description":"Always `CRMChat-Webhooks/1.0`","schema":{"type":"string"}}],"responses":{"200":{"description":"Webhook received successfully"}}}},"contact.updated":{"post":{"tags":["Contacts"],"summary":"Contact updated","description":"Sent when a contact is updated in a watched workspace","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","description":"Unique event identifier (format: `evt_{firestoreEventId}_{webhookId}`)"},"eventType":{"const":"contact.updated","type":"string"},"eventDate":{"type":"string","format":"date-time","description":"ISO 8601 timestamp of when the event was dispatched"},"workspaceId":{"type":"string","description":"Workspace the contact belongs to"},"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"ownerId":{"type":"string"},"type":{"enum":["contact","group"],"type":"string"},"fullName":{"type":"string"},"description":{"type":"string"},"avatarUrl":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"url":{"type":"string"},"amount":{"type":"number"},"telegram":{"type":"object","properties":{"id":{"type":"number"},"username":{"type":"string"},"folders":{"type":"array","items":{"type":"string"},"readOnly":true},"inviteLink":{"type":"string"}}},"custom":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"id":{"type":"string","readOnly":true}},"required":["createdAt","updatedAt","workspaceId","ownerId","fullName","id"]},"previousData":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"ownerId":{"type":"string"},"type":{"enum":["contact","group"],"type":"string"},"fullName":{"type":"string"},"description":{"type":"string"},"avatarUrl":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"url":{"type":"string"},"amount":{"type":"number"},"telegram":{"type":"object","properties":{"id":{"type":"number"},"username":{"type":"string"},"folders":{"type":"array","items":{"type":"string"},"readOnly":true},"inviteLink":{"type":"string"}}},"custom":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"id":{"type":"string","readOnly":true}},"required":["createdAt","updatedAt","workspaceId","ownerId","fullName","id"],"description":"Contact snapshot immediately before the update"}},"required":["eventId","eventType","eventDate","workspaceId","data","previousData"]}}}},"parameters":[{"name":"X-Webhook-Signature","in":"header","description":"HMAC-SHA256 hex digest of the raw request body, signed with the webhook signing secret","schema":{"type":"string"},"required":true},{"name":"X-Webhook-Event","in":"header","description":"The event type (e.g. `contact.created`, `contact.updated`, `contact.deleted`)","schema":{"type":"string"},"required":true},{"name":"X-Webhook-Id","in":"header","description":"Unique event ID for idempotency","schema":{"type":"string"},"required":true},{"name":"User-Agent","in":"header","description":"Always `CRMChat-Webhooks/1.0`","schema":{"type":"string"}}],"responses":{"200":{"description":"Webhook received successfully"}}}},"contact.deleted":{"post":{"tags":["Contacts"],"summary":"Contact deleted","description":"Sent when a contact is deleted from a watched workspace. `data` contains the full contact snapshot before deletion.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","description":"Unique event identifier (format: `evt_{firestoreEventId}_{webhookId}`)"},"eventType":{"const":"contact.deleted","type":"string"},"eventDate":{"type":"string","format":"date-time","description":"ISO 8601 timestamp of when the event was dispatched"},"workspaceId":{"type":"string","description":"Workspace the contact belongs to"},"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"ownerId":{"type":"string"},"type":{"enum":["contact","group"],"type":"string"},"fullName":{"type":"string"},"description":{"type":"string"},"avatarUrl":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"url":{"type":"string"},"amount":{"type":"number"},"telegram":{"type":"object","properties":{"id":{"type":"number"},"username":{"type":"string"},"folders":{"type":"array","items":{"type":"string"},"readOnly":true},"inviteLink":{"type":"string"}}},"custom":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"id":{"type":"string","readOnly":true}},"required":["createdAt","updatedAt","workspaceId","ownerId","fullName","id"]}},"required":["eventId","eventType","eventDate","workspaceId","data"]}}}},"parameters":[{"name":"X-Webhook-Signature","in":"header","description":"HMAC-SHA256 hex digest of the raw request body, signed with the webhook signing secret","schema":{"type":"string"},"required":true},{"name":"X-Webhook-Event","in":"header","description":"The event type (e.g. `contact.created`, `contact.updated`, `contact.deleted`)","schema":{"type":"string"},"required":true},{"name":"X-Webhook-Id","in":"header","description":"Unique event ID for idempotency","schema":{"type":"string"},"required":true},{"name":"User-Agent","in":"header","description":"Always `CRMChat-Webhooks/1.0`","schema":{"type":"string"}}],"responses":{"200":{"description":"Webhook received successfully"}}}}},"openapi":"3.1.1","paths":{"/organizations":{"get":{"operationId":"organizations.list","summary":"List organizations","description":"Returns organizations accessible by the authenticated user.","tags":["Organizations"],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"Maximum number of items to return."},"allowEmptyValue":true,"allowReserved":true},{"name":"startingAfter","in":"query","schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.next` in a previous response."},"allowEmptyValue":true,"allowReserved":true},{"name":"endingBefore","in":"query","schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.previous` in a previous response."},"allowEmptyValue":true,"allowReserved":true}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"name":{"type":"string"},"id":{"type":"string"}},"required":["createdAt","updatedAt","id"]}},"hasMore":{"type":"boolean"},"cursors":{"type":"object","properties":{"next":{"anyOf":[{"type":"string"},{"type":"null"}]},"previous":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["next","previous"]}},"required":["data","hasMore","cursors"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/organizations/{organizationId}":{"get":{"operationId":"organizations.get","summary":"Get organization","description":"Returns a single organization by its ID.","tags":["Organizations"],"parameters":[{"name":"organizationId","in":"path","required":true,"schema":{"type":"string","description":"The unique identifier of the organization"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"name":{"type":"string"},"id":{"type":"string"}},"required":["createdAt","updatedAt","id"]}},"required":["data"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this organization"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Organization not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"patch":{"operationId":"organizations.patch","summary":"Update organization","description":"Partially updates an organization using [JSON Merge Patch](/docs/patching-resources).","tags":["Organizations"],"parameters":[{"name":"organizationId","in":"path","required":true,"schema":{"type":"string","description":"The unique identifier of the organization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}]}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"name":{"type":"string"},"id":{"type":"string"}},"required":["createdAt","updatedAt","id"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Patch would create an invalid document state"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this organization"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Organization not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces":{"get":{"operationId":"workspaces.list","summary":"List workspaces","description":"Returns workspaces accessible by the authenticated user within an organization.","tags":["Workspaces"],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"Maximum number of items to return."},"allowEmptyValue":true,"allowReserved":true},{"name":"startingAfter","in":"query","required":false,"schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.next` in a previous response."},"allowEmptyValue":true,"allowReserved":true},{"name":"endingBefore","in":"query","required":false,"schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.previous` in a previous response."},"allowEmptyValue":true,"allowReserved":true},{"name":"organizationId","in":"query","required":true,"schema":{"type":"string","description":"The organization ID to list workspaces for"},"allowEmptyValue":true,"allowReserved":true}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"organizationId":{"type":"string","readOnly":true},"name":{"type":"string"},"members":{"type":"array","items":{"type":"string"},"readOnly":true},"id":{"type":"string"}},"required":["createdAt","updatedAt","organizationId","name","id"]}},"hasMore":{"type":"boolean"},"cursors":{"type":"object","properties":{"next":{"anyOf":[{"type":"string"},{"type":"null"}]},"previous":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["next","previous"]}},"required":["data","hasMore","cursors"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this organization"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"post":{"operationId":"workspaces.create","summary":"Create workspace","tags":["Workspaces"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organizationId":{"type":"string","minLength":1},"name":{"type":"string","minLength":1}},"required":["name"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"organizationId":{"type":"string","readOnly":true},"name":{"type":"string"},"members":{"type":"array","items":{"type":"string"},"readOnly":true},"id":{"type":"string"}},"required":["createdAt","updatedAt","organizationId","name","id"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Workspace could not be created"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You don't have access to this organization"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}":{"get":{"operationId":"workspaces.get","summary":"Get workspace","description":"Returns a single workspace by its ID.","tags":["Workspaces"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","description":"The unique identifier of the workspace"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"organizationId":{"type":"string","readOnly":true},"name":{"type":"string"},"members":{"type":"array","items":{"type":"string"},"readOnly":true},"id":{"type":"string"}},"required":["createdAt","updatedAt","organizationId","name","id"]}},"required":["data"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Workspace not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"patch":{"operationId":"workspaces.patch","summary":"Update workspace","description":"Partially updates a workspace using [JSON Merge Patch](/docs/patching-resources).","tags":["Workspaces"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","description":"The unique identifier of the workspace"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"organizationId":{"type":"string","readOnly":true},"name":{"type":"string"},"members":{"type":"array","items":{"type":"string"},"readOnly":true},"id":{"type":"string"}},"required":["createdAt","updatedAt","organizationId","name","id"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Patch would create an invalid document state"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Workspace not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/members":{"get":{"operationId":"workspaces.getMembers","summary":"Get workspace members","description":"Returns all members of a workspace.","tags":["Workspaces"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","description":"The unique identifier of the workspace"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"userId":{"type":"string"},"role":{"enum":["admin","member","chatter"],"type":"string"},"user":{"type":"object","properties":{"name":{"type":"string"},"avatarUrl":{"type":"string"},"timezone":{"type":"string"},"telegramUsername":{"type":"string"}},"required":["name"]}},"required":["userId","role","user"]}}},"required":["data"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/invites":{"post":{"operationId":"workspaces.invites.create","summary":"Invite workspace member","tags":["Workspaces"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string","minLength":1}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"role":{"enum":["admin","member","chatter"],"type":"string"},"telegramUsername":{"type":"string","minLength":1}},"required":["role","telegramUsername"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean"}},"required":["success"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Workspace invite could not be created"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You must be a workspace admin to perform this action"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/properties/{objectType}":{"get":{"operationId":"properties.list","summary":"List properties","description":"Returns all property definitions for a workspace object type.","tags":["Custom Properties"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"objectType","in":"path","required":true,"schema":{"enum":["contacts"],"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"text","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TextProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"single-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"},"defaultValue":{"type":"string"}},"required":["key","type","name","options"],"title":"SingleSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"multi-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"}},"required":["key","type","name","options"],"title":"MultiSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"user-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"UserSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"textarea","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TextareaProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"url","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"UrlProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"email","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"EmailProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"amount","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"displayedInList":{"type":"boolean"}},"required":["key","type","name"],"title":"AmountProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"tel","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TelProperty"}]}}},"required":["data"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Workspace not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"post":{"operationId":"properties.create","summary":"Create property","description":"Creates a new custom property definition.","tags":["Custom Properties"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"objectType","in":"path","required":true,"schema":{"enum":["contacts"],"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"text","type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false}},"required":["key","type","name"],"title":"TextProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"single-select","type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"},"defaultValue":{"type":"string"}},"required":["key","type","name","options"],"title":"SingleSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"multi-select","type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"}},"required":["key","type","name","options"],"title":"MultiSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"user-select","type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false}},"required":["key","type","name"],"title":"UserSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"textarea","type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false}},"required":["key","type","name"],"title":"TextareaProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"url","type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false}},"required":["key","type","name"],"title":"UrlProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"email","type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false}},"required":["key","type","name"],"title":"EmailProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"amount","type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"displayedInList":{"type":"boolean"}},"required":["key","type","name"],"title":"AmountProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"tel","type":"string"},"name":{"type":"string","minLength":1},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false}},"required":["key","type","name"],"title":"TelProperty"}]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"anyOf":[{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"text","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TextProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"single-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"},"defaultValue":{"type":"string"}},"required":["key","type","name","options"],"title":"SingleSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"multi-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"}},"required":["key","type","name","options"],"title":"MultiSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"user-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"UserSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"textarea","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TextareaProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"url","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"UrlProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"email","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"EmailProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"amount","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"displayedInList":{"type":"boolean"}},"required":["key","type","name"],"title":"AmountProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"tel","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TelProperty"}]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Invalid property"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Workspace not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"409":{"description":"409","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"CONFLICT"},"status":{"const":409},"message":{"type":"string","default":"A property with this key already exists"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/properties/{objectType}/{propertyKey}":{"get":{"operationId":"properties.get","summary":"Get property","description":"Returns a single property definition by key.","tags":["Custom Properties"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"objectType","in":"path","required":true,"schema":{"enum":["contacts"],"type":"string"}},{"name":"propertyKey","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"anyOf":[{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"text","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TextProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"single-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"},"defaultValue":{"type":"string"}},"required":["key","type","name","options"],"title":"SingleSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"multi-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"}},"required":["key","type","name","options"],"title":"MultiSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"user-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"UserSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"textarea","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TextareaProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"url","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"UrlProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"email","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"EmailProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"amount","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"displayedInList":{"type":"boolean"}},"required":["key","type","name"],"title":"AmountProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"tel","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TelProperty"}]}},"required":["data"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Property not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"patch":{"operationId":"properties.patch","summary":"Update property","description":"Partially updates a property definition using [JSON Merge Patch](/docs/patching-resources).","tags":["Custom Properties"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"objectType","in":"path","required":true,"schema":{"enum":["contacts"],"type":"string"}},{"name":"propertyKey","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"placeholder":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":{"type":"boolean"},"type":{"const":"text","type":"string"}},"required":["type"],"title":"TextProperty"},{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"placeholder":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":{"type":"boolean"},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean"},"displayedInList":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"defaultValue":{"anyOf":[{"type":"string"},{"type":"null"}]},"type":{"const":"single-select","type":"string"}},"required":["type"],"title":"SingleSelectProperty"},{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"placeholder":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":{"type":"boolean"},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean"},"displayedInList":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"type":{"const":"multi-select","type":"string"}},"required":["type"],"title":"MultiSelectProperty"},{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"placeholder":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":{"type":"boolean"},"type":{"const":"user-select","type":"string"}},"required":["type"],"title":"UserSelectProperty"},{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"placeholder":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":{"type":"boolean"},"type":{"const":"textarea","type":"string"}},"required":["type"],"title":"TextareaProperty"},{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"placeholder":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":{"type":"boolean"},"type":{"const":"url","type":"string"}},"required":["type"],"title":"UrlProperty"},{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"placeholder":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":{"type":"boolean"},"type":{"const":"email","type":"string"}},"required":["type"],"title":"EmailProperty"},{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"placeholder":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":{"type":"boolean"},"displayedInList":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"type":{"const":"amount","type":"string"}},"required":["type"],"title":"AmountProperty"},{"type":"object","properties":{"name":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"placeholder":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":{"type":"boolean"},"type":{"const":"tel","type":"string"}},"required":["type"],"title":"TelProperty"}]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"anyOf":[{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"text","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TextProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"single-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"},"defaultValue":{"type":"string"}},"required":["key","type","name","options"],"title":"SingleSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"multi-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"options":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"color":{"enum":["gray","brown","orange","yellow","green","blue","purple","pink","red"],"type":"string"},"daysUntilStale":{"type":"number"}},"required":["label","value"],"title":"SelectOption"}},"customizable":{"type":"boolean","default":true},"displayedInList":{"type":"boolean"}},"required":["key","type","name","options"],"title":"MultiSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"user-select","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"UserSelectProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"textarea","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TextareaProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"url","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"UrlProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"email","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"EmailProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"amount","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true},"displayedInList":{"type":"boolean"}},"required":["key","type","name"],"title":"AmountProperty"},{"type":"object","properties":{"key":{"type":"string"},"type":{"const":"tel","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"placeholder":{"type":"string"},"required":{"type":"boolean","default":false},"readonly":{"type":"boolean","readOnly":true}},"required":["key","type","name"],"title":"TelProperty"}]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Patch would create an invalid document state"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Property not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"delete":{"operationId":"properties.delete","summary":"Delete property","description":"Deletes a custom property definition.","tags":["Custom Properties"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"objectType","in":"path","required":true,"schema":{"enum":["contacts"],"type":"string"}},{"name":"propertyKey","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"required":[]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"anyOf":[{"not":{}},{"not":{}}]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Cannot delete this property"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Property not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/contacts":{"get":{"operationId":"contacts.list","summary":"List contacts","description":"Returns a paginated list of contacts in a workspace.","tags":["Contacts"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"Maximum number of items to return."},"allowEmptyValue":true,"allowReserved":true},{"name":"startingAfter","in":"query","required":false,"schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.next` in a previous response."},"allowEmptyValue":true,"allowReserved":true},{"name":"endingBefore","in":"query","required":false,"schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.previous` in a previous response."},"allowEmptyValue":true,"allowReserved":true},{"name":"filter","in":"query","required":false,"schema":{"type":"object","properties":{"telegram.username":{"type":"string","description":"Filter by Telegram username"},"telegram.id":{"type":"number","description":"Filter by Telegram user ID"}}},"style":"deepObject","explode":true,"allowEmptyValue":true,"allowReserved":true}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"ownerId":{"type":"string"},"type":{"enum":["contact","group"],"type":"string"},"fullName":{"type":"string"},"description":{"type":"string"},"avatarUrl":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"url":{"type":"string"},"amount":{"type":"number"},"telegram":{"type":"object","properties":{"id":{"type":"number"},"username":{"type":"string"},"folders":{"type":"array","items":{"type":"string"},"readOnly":true},"inviteLink":{"type":"string"}}},"custom":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"id":{"type":"string","readOnly":true},"_meta":{"type":"object","properties":{"properties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"type":{"const":"single-select","type":"string"},"name":{"type":"string"},"selected":{"anyOf":[{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"}},"required":["label","value"]},{"type":"null"}]}},"required":["type","name","selected"],"title":"SingleSelectMeta"},{"type":"object","properties":{"type":{"const":"multi-select","type":"string"},"name":{"type":"string"},"selected":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"}},"required":["label","value"]}}},"required":["type","name","selected"],"title":"MultiSelectMeta"},{"type":"object","properties":{"type":{"const":"user-select","type":"string"},"name":{"type":"string"},"selected":{"anyOf":[{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"avatarUrl":{"type":"string"}},"required":["label","value"]},{"type":"null"}]}},"required":["type","name","selected"],"title":"UserSelectMeta"},{"type":"object","properties":{"type":{"enum":["text","textarea","url","email","tel","amount"],"type":"string"},"name":{"type":"string"}},"required":["type","name"],"title":"OtherMeta"}]}}},"required":["properties"]}},"required":["createdAt","updatedAt","workspaceId","ownerId","fullName","id","_meta"]}},"hasMore":{"type":"boolean"},"cursors":{"type":"object","properties":{"next":{"anyOf":[{"type":"string"},{"type":"null"}]},"previous":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["next","previous"]}},"required":["data","hasMore","cursors"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Workspace not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"post":{"operationId":"contacts.create","summary":"Create contact","description":"Creates a new contact in a workspace.","tags":["Contacts"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"ownerId":{"type":"string","minLength":1,"description":"Contact owner. Defaults to the authenticated user."},"type":{"enum":["contact","group"],"type":"string"},"fullName":{"type":"string","minLength":1},"description":{"type":"string"},"avatarUrl":{"type":"string"},"email":{"type":"string","format":"email"},"phone":{"type":"string"},"url":{"type":"string","format":"uri"},"amount":{"type":"number"},"telegram":{"type":"object","properties":{"id":{"type":"number"},"username":{"type":"string"},"inviteLink":{"type":"string","format":"uri"}}},"custom":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}}},"required":["fullName"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"ownerId":{"type":"string"},"type":{"enum":["contact","group"],"type":"string"},"fullName":{"type":"string"},"description":{"type":"string"},"avatarUrl":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"url":{"type":"string"},"amount":{"type":"number"},"telegram":{"type":"object","properties":{"id":{"type":"number"},"username":{"type":"string"},"folders":{"type":"array","items":{"type":"string"},"readOnly":true},"inviteLink":{"type":"string"}}},"custom":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"id":{"type":"string","readOnly":true},"_meta":{"type":"object","properties":{"properties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"type":{"const":"single-select","type":"string"},"name":{"type":"string"},"selected":{"anyOf":[{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"}},"required":["label","value"]},{"type":"null"}]}},"required":["type","name","selected"],"title":"SingleSelectMeta"},{"type":"object","properties":{"type":{"const":"multi-select","type":"string"},"name":{"type":"string"},"selected":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"}},"required":["label","value"]}}},"required":["type","name","selected"],"title":"MultiSelectMeta"},{"type":"object","properties":{"type":{"const":"user-select","type":"string"},"name":{"type":"string"},"selected":{"anyOf":[{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"avatarUrl":{"type":"string"}},"required":["label","value"]},{"type":"null"}]}},"required":["type","name","selected"],"title":"UserSelectMeta"},{"type":"object","properties":{"type":{"enum":["text","textarea","url","email","tel","amount"],"type":"string"},"name":{"type":"string"}},"required":["type","name"],"title":"OtherMeta"}]}}},"required":["properties"]}},"required":["createdAt","updatedAt","workspaceId","ownerId","fullName","id","_meta"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Invalid property value"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Workspace not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/contacts/{contactId}":{"get":{"operationId":"contacts.get","summary":"Get contact","description":"Returns a single contact by its ID.","tags":["Contacts"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"contactId","in":"path","required":true,"schema":{"type":"string","description":"The unique identifier of the contact"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"ownerId":{"type":"string"},"type":{"enum":["contact","group"],"type":"string"},"fullName":{"type":"string"},"description":{"type":"string"},"avatarUrl":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"url":{"type":"string"},"amount":{"type":"number"},"telegram":{"type":"object","properties":{"id":{"type":"number"},"username":{"type":"string"},"folders":{"type":"array","items":{"type":"string"},"readOnly":true},"inviteLink":{"type":"string"}}},"custom":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"id":{"type":"string","readOnly":true},"_meta":{"type":"object","properties":{"properties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"type":{"const":"single-select","type":"string"},"name":{"type":"string"},"selected":{"anyOf":[{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"}},"required":["label","value"]},{"type":"null"}]}},"required":["type","name","selected"],"title":"SingleSelectMeta"},{"type":"object","properties":{"type":{"const":"multi-select","type":"string"},"name":{"type":"string"},"selected":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"}},"required":["label","value"]}}},"required":["type","name","selected"],"title":"MultiSelectMeta"},{"type":"object","properties":{"type":{"const":"user-select","type":"string"},"name":{"type":"string"},"selected":{"anyOf":[{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"avatarUrl":{"type":"string"}},"required":["label","value"]},{"type":"null"}]}},"required":["type","name","selected"],"title":"UserSelectMeta"},{"type":"object","properties":{"type":{"enum":["text","textarea","url","email","tel","amount"],"type":"string"},"name":{"type":"string"}},"required":["type","name"],"title":"OtherMeta"}]}}},"required":["properties"]}},"required":["createdAt","updatedAt","workspaceId","ownerId","fullName","id","_meta"]}},"required":["data"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"patch":{"operationId":"contacts.patch","summary":"Update contact","description":"Partially updates a contact using [JSON Merge Patch](/docs/patching-resources).","tags":["Contacts"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"contactId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"ownerId":{"type":"string","minLength":1},"type":{"anyOf":[{"enum":["contact","group"],"type":"string"},{"type":"null"}]},"fullName":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"avatarUrl":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"anyOf":[{"type":"string","format":"email"},{"type":"null"}]},"phone":{"anyOf":[{"type":"string"},{"type":"null"}]},"url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]},"amount":{"anyOf":[{"type":"number"},{"type":"null"}]},"telegram":{"anyOf":[{"type":"object","properties":{"id":{"anyOf":[{"type":"number"},{"type":"null"}]},"username":{"anyOf":[{"type":"string"},{"type":"null"}]},"inviteLink":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]}}},{"type":"null"}]},"custom":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},{"type":"null"}]}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"ownerId":{"type":"string"},"type":{"enum":["contact","group"],"type":"string"},"fullName":{"type":"string"},"description":{"type":"string"},"avatarUrl":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"url":{"type":"string"},"amount":{"type":"number"},"telegram":{"type":"object","properties":{"id":{"type":"number"},"username":{"type":"string"},"folders":{"type":"array","items":{"type":"string"},"readOnly":true},"inviteLink":{"type":"string"}}},"custom":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"id":{"type":"string","readOnly":true},"_meta":{"type":"object","properties":{"properties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"type":{"const":"single-select","type":"string"},"name":{"type":"string"},"selected":{"anyOf":[{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"}},"required":["label","value"]},{"type":"null"}]}},"required":["type","name","selected"],"title":"SingleSelectMeta"},{"type":"object","properties":{"type":{"const":"multi-select","type":"string"},"name":{"type":"string"},"selected":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"}},"required":["label","value"]}}},"required":["type","name","selected"],"title":"MultiSelectMeta"},{"type":"object","properties":{"type":{"const":"user-select","type":"string"},"name":{"type":"string"},"selected":{"anyOf":[{"type":"object","properties":{"label":{"type":"string"},"value":{"type":"string"},"avatarUrl":{"type":"string"}},"required":["label","value"]},{"type":"null"}]}},"required":["type","name","selected"],"title":"UserSelectMeta"},{"type":"object","properties":{"type":{"enum":["text","textarea","url","email","tel","amount"],"type":"string"},"name":{"type":"string"}},"required":["type","name"],"title":"OtherMeta"}]}}},"required":["properties"]}},"required":["createdAt","updatedAt","workspaceId","ownerId","fullName","id","_meta"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Patch would create an invalid document state"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"delete":{"operationId":"contacts.delete","summary":"Delete contact","description":"Deletes a contact and all its associated activities.","tags":["Contacts"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"contactId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"required":[]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"anyOf":[{"not":{}},{"not":{}}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/dialogs/find":{"post":{"operationId":"dialogs.find","summary":"Find dialogs","description":"Finds dialogs across Telegram accounts accessible to the authenticated user. Matches by peer ID, username, or either value when both are provided, and returns the most recently updated dialogs first.","tags":["Dialogs"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"peerId":{"type":"number","description":"Telegram peer ID to match"},"username":{"type":"string","description":"Telegram username to match, with or without @"},"limit":{"type":"integer","minimum":1,"maximum":20,"default":20,"description":"Maximum number of dialogs to return"}},"required":[]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"workspaceId":{"type":"string"},"accountId":{"type":"string"},"peerId":{"type":"number"},"updatedAt":{"type":"string","format":"date-time","x-native-type":"date"},"usernames":{"type":"array","items":{"type":"string"}},"usernamesNormalized":{"type":"array","items":{"type":"string"}},"unread":{"type":"boolean"},"unreadCount":{"type":"number"},"lastMessageDate":{"anyOf":[{"type":"string","format":"date-time","x-native-type":"date"},{"type":"null"}]},"firstName":{"anyOf":[{"type":"string"},{"type":"null"}]},"lastName":{"anyOf":[{"type":"string"},{"type":"null"}]},"hasPhoto":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"lastSeenStatus":{"anyOf":[{"enum":["online","offline","recently","within_week","within_month","long_time_ago","bot"],"type":"string"},{"type":"null"}]},"lastSeenAt":{"anyOf":[{"type":"string","format":"date-time","x-native-type":"date"},{"type":"null"}]}},"required":["workspaceId","accountId","peerId","updatedAt","usernames","usernamesNormalized","unread","unreadCount","lastMessageDate","firstName","lastName","hasPhoto","lastSeenStatus","lastSeenAt"]}}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/telegram-accounts":{"get":{"operationId":"telegramAccounts.list","summary":"List Telegram accounts","description":"Returns a paginated list of Telegram accounts in a workspace.","tags":["Telegram accounts"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"Maximum number of items to return."},"allowEmptyValue":true,"allowReserved":true},{"name":"startingAfter","in":"query","required":false,"schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.next` in a previous response."},"allowEmptyValue":true,"allowReserved":true},{"name":"endingBefore","in":"query","required":false,"schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.previous` in a previous response."},"allowEmptyValue":true,"allowReserved":true}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"accessScope":{"enum":["workspace","users"],"type":"string"},"accessUserIds":{"type":"array","items":{"type":"string"}},"status":{"enum":["active","banned","frozen","unauthorized","offline"],"type":"string","readOnly":true},"telegram":{"type":"object","properties":{"id":{"type":"number","readOnly":true},"username":{"anyOf":[{"type":"string","readOnly":true},{"type":"null"}]},"phone":{"anyOf":[{"type":"string","readOnly":true},{"type":"null"}]},"fullName":{"anyOf":[{"type":"string","readOnly":true},{"type":"null"}]},"hasPremium":{"type":"boolean","readOnly":true}},"required":["id","phone","hasPremium"]},"contactCreationBehaviour":{"enum":["disabled","message-received"],"type":"string"},"newLeadsDailyLimit":{"type":"number"},"warmup":{"type":"object","properties":{"enabled":{"type":"boolean","readOnly":true},"stage":{"enum":["initial","engagement","maintenance"],"type":"string","readOnly":true}},"required":["enabled","stage"]},"spamRestriction":{"type":"object","properties":{"type":{"enum":["peer_flood","temporary","permanent","user_block"],"type":"string","readOnly":true},"until":{"not":{},"readOnly":true},"detectedAt":{"type":"string","format":"date-time","readOnly":true},"lastCheckedAt":{"not":{},"readOnly":true},"rawMessage":{"type":"string","readOnly":true}},"required":["type","detectedAt","rawMessage"]},"id":{"type":"string","readOnly":true}},"required":["createdAt","updatedAt","workspaceId","accessScope","accessUserIds","status","telegram","newLeadsDailyLimit","id"]}},"hasMore":{"type":"boolean"},"cursors":{"type":"object","properties":{"next":{"anyOf":[{"type":"string"},{"type":"null"}]},"previous":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["next","previous"]}},"required":["data","hasMore","cursors"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/telegram-accounts/{accountId}":{"get":{"operationId":"telegramAccounts.get","summary":"Get Telegram account","description":"Returns a single Telegram account by its ID.","tags":["Telegram accounts"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"accountId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"accessScope":{"enum":["workspace","users"],"type":"string"},"accessUserIds":{"type":"array","items":{"type":"string"}},"status":{"enum":["active","banned","frozen","unauthorized","offline"],"type":"string","readOnly":true},"telegram":{"type":"object","properties":{"id":{"type":"number","readOnly":true},"username":{"anyOf":[{"type":"string","readOnly":true},{"type":"null"}]},"phone":{"anyOf":[{"type":"string","readOnly":true},{"type":"null"}]},"fullName":{"anyOf":[{"type":"string","readOnly":true},{"type":"null"}]},"hasPremium":{"type":"boolean","readOnly":true}},"required":["id","phone","hasPremium"]},"contactCreationBehaviour":{"enum":["disabled","message-received"],"type":"string"},"newLeadsDailyLimit":{"type":"number"},"warmup":{"type":"object","properties":{"enabled":{"type":"boolean","readOnly":true},"stage":{"enum":["initial","engagement","maintenance"],"type":"string","readOnly":true}},"required":["enabled","stage"]},"spamRestriction":{"type":"object","properties":{"type":{"enum":["peer_flood","temporary","permanent","user_block"],"type":"string","readOnly":true},"until":{"not":{},"readOnly":true},"detectedAt":{"type":"string","format":"date-time","readOnly":true},"lastCheckedAt":{"not":{},"readOnly":true},"rawMessage":{"type":"string","readOnly":true}},"required":["type","detectedAt","rawMessage"]},"id":{"type":"string","readOnly":true}},"required":["createdAt","updatedAt","workspaceId","accessScope","accessUserIds","status","telegram","newLeadsDailyLimit","id"]}},"required":["data"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Telegram account not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"patch":{"operationId":"telegramAccounts.patch","summary":"Update Telegram account","description":"Partially updates a Telegram account using [JSON Merge Patch](/docs/patching-resources).","tags":["Telegram accounts"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"accountId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"accessScope":{"enum":["workspace","users"],"type":"string"},"accessUserIds":{"type":"array","items":{"type":"string"}},"contactCreationBehaviour":{"anyOf":[{"enum":["disabled","message-received"],"type":"string"},{"type":"null"}]},"newLeadsDailyLimit":{"type":"integer","minimum":0,"maximum":500}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"accessScope":{"enum":["workspace","users"],"type":"string"},"accessUserIds":{"type":"array","items":{"type":"string"}},"status":{"enum":["active","banned","frozen","unauthorized","offline"],"type":"string","readOnly":true},"telegram":{"type":"object","properties":{"id":{"type":"number","readOnly":true},"username":{"anyOf":[{"type":"string","readOnly":true},{"type":"null"}]},"phone":{"anyOf":[{"type":"string","readOnly":true},{"type":"null"}]},"fullName":{"anyOf":[{"type":"string","readOnly":true},{"type":"null"}]},"hasPremium":{"type":"boolean","readOnly":true}},"required":["id","phone","hasPremium"]},"contactCreationBehaviour":{"enum":["disabled","message-received"],"type":"string"},"newLeadsDailyLimit":{"type":"number"},"warmup":{"type":"object","properties":{"enabled":{"type":"boolean","readOnly":true},"stage":{"enum":["initial","engagement","maintenance"],"type":"string","readOnly":true}},"required":["enabled","stage"]},"spamRestriction":{"type":"object","properties":{"type":{"enum":["peer_flood","temporary","permanent","user_block"],"type":"string","readOnly":true},"until":{"not":{},"readOnly":true},"detectedAt":{"type":"string","format":"date-time","readOnly":true},"lastCheckedAt":{"not":{},"readOnly":true},"rawMessage":{"type":"string","readOnly":true}},"required":["type","detectedAt","rawMessage"]},"id":{"type":"string","readOnly":true}},"required":["createdAt","updatedAt","workspaceId","accessScope","accessUserIds","status","telegram","newLeadsDailyLimit","id"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Patch would create an invalid document state"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Telegram account not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"delete":{"operationId":"telegramAccounts.delete","summary":"Disconnect Telegram account","description":"Disconnects a Telegram account from the workspace.","tags":["Telegram accounts"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"accountId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"required":[]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"anyOf":[{"not":{}},{"not":{}}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Telegram account not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/outreach/lists/upload":{"post":{"operationId":"outreach.lists.uploadCsvList","summary":"Upload CSV list","description":"Uploads a CSV or TSV file and creates a list. Columns are automatically inferred from the file header.","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"anyOf":[{"type":"string","contentMediaType":"text/csv"},{"type":"string","contentMediaType":"text/tab-separated-values"}]},"usernameColumn":{"type":"string"},"phoneColumn":{"type":"string"}},"required":["file"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"createdBy":{"type":"string","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"name":{"type":"string"},"source":{"anyOf":[{"type":"object","properties":{"fileUrl":{"type":"string","readOnly":true},"fileName":{"type":"string","readOnly":true},"usernameColumn":{"type":"string","readOnly":true},"phoneColumn":{"type":"string","readOnly":true},"columns":{"type":"array","items":{"type":"string"},"readOnly":true},"type":{"const":"csvFile","type":"string"}},"required":["fileUrl","fileName","columns","type"]},{"type":"object","properties":{"dynamic":{"type":"boolean","readOnly":true},"filters":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"array","items":{"type":"string"}},"readOnly":true},"type":{"const":"crm","type":"string"}},"required":["dynamic","filters","type"]},{"type":"object","properties":{"dynamic":{"type":"boolean","readOnly":true},"filters":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"array","items":{"type":"string"}},"readOnly":true},"type":{"const":"crmGroups","type":"string"}},"required":["dynamic","filters","type"]}]},"status":{"enum":["pending","processing","completed","failed"],"type":"string","readOnly":true},"totalSize":{"type":"number","readOnly":true},"importStats":{"type":"object","properties":{"imported":{"type":"number","readOnly":true},"skippedMissingIdentifier":{"type":"number","readOnly":true},"skippedInvalidPhone":{"type":"number","readOnly":true},"skippedDuplicate":{"type":"number","readOnly":true}},"required":["imported","skippedMissingIdentifier","skippedInvalidPhone","skippedDuplicate"]},"id":{"type":"string","readOnly":true}},"required":["createdAt","createdBy","updatedAt","workspaceId","name","source","status","id"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Invalid CSV file or column configuration"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/outreach/lists":{"post":{"operationId":"outreach.lists.createCrmList","summary":"Create CRM list","description":"Creates a list from CRM contacts or groups with optional filters.","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"contactType":{"enum":["contact","group"],"type":"string"},"name":{"type":"string","minLength":1},"dynamic":{"type":"boolean"},"filters":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"array","items":{"type":"string"}}}},"required":["contactType","name","dynamic","filters"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"createdBy":{"type":"string","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"name":{"type":"string"},"source":{"anyOf":[{"type":"object","properties":{"fileUrl":{"type":"string","readOnly":true},"fileName":{"type":"string","readOnly":true},"usernameColumn":{"type":"string","readOnly":true},"phoneColumn":{"type":"string","readOnly":true},"columns":{"type":"array","items":{"type":"string"},"readOnly":true},"type":{"const":"csvFile","type":"string"}},"required":["fileUrl","fileName","columns","type"]},{"type":"object","properties":{"dynamic":{"type":"boolean","readOnly":true},"filters":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"array","items":{"type":"string"}},"readOnly":true},"type":{"const":"crm","type":"string"}},"required":["dynamic","filters","type"]},{"type":"object","properties":{"dynamic":{"type":"boolean","readOnly":true},"filters":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"array","items":{"type":"string"}},"readOnly":true},"type":{"const":"crmGroups","type":"string"}},"required":["dynamic","filters","type"]}]},"status":{"enum":["pending","processing","completed","failed"],"type":"string","readOnly":true},"totalSize":{"type":"number","readOnly":true},"importStats":{"type":"object","properties":{"imported":{"type":"number","readOnly":true},"skippedMissingIdentifier":{"type":"number","readOnly":true},"skippedInvalidPhone":{"type":"number","readOnly":true},"skippedDuplicate":{"type":"number","readOnly":true}},"required":["imported","skippedMissingIdentifier","skippedInvalidPhone","skippedDuplicate"]},"id":{"type":"string","readOnly":true}},"required":["createdAt","createdBy","updatedAt","workspaceId","name","source","status","id"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Invalid filter configuration"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Workspace not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/outreach/sequences":{"get":{"operationId":"outreach.sequences.list","summary":"List campaigns","description":"Returns a paginated list of outreach campaigns in a workspace.","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"Maximum number of items to return."},"allowEmptyValue":true,"allowReserved":true},{"name":"startingAfter","in":"query","required":false,"schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.next` in a previous response."},"allowEmptyValue":true,"allowReserved":true},{"name":"endingBefore","in":"query","required":false,"schema":{"type":"string","description":"A cursor for pagination. Use the value from `cursors.previous` in a previous response."},"allowEmptyValue":true,"allowReserved":true}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"createdBy":{"type":"string","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"estimatedLastMessageAt":{"not":{},"readOnly":true},"schedulingStatusReason":{"enum":["outside_planning_window","no_messages","no_leads_ready","no_sendable_accounts","sending_schedule_disabled"],"type":"string","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"listId":{"type":"string"},"name":{"type":"string"},"status":{"enum":["draft","active","paused","completed"],"type":"string","readOnly":true},"accounts":{"type":"object","properties":{"mode":{"enum":["all","selected"],"type":"string"},"selected":{"type":"array","items":{"type":"string"}},"conversationStrategy":{"enum":["prefer-existing-dialog","require-no-existing-dialog"],"type":"string"}},"required":["mode"]},"contactOwnerSettings":{"type":"object","properties":{"ownerIds":{"type":"array","items":{"type":"string"},"description":"User IDs to assign as owners of contacts created from this campaign. Multiple IDs enable round-robin assignment."}},"required":["ownerIds"]},"contactCreationTrigger":{"enum":["on-reply","on-first-message-sent"],"type":"string"},"contactDefaults":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"contactUpdatesOnReply":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"messages":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["id","delay","text"],"title":"TextMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"media":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","width","height"]}},"caption":{"type":"string"},"type":{"const":"media","type":"string"}},"required":["id","delay","media","type"],"title":"MediaMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"documents":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileName":{"type":"string"},"fileSize":{"type":"number"}},"required":["url","mimeType","fileName","fileSize"]}},"caption":{"type":"string"},"type":{"const":"document","type":"string"}},"required":["id","delay","documents","type"],"title":"DocumentMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"voice":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","duration"],"default":{"url":"","mimeType":"","fileSize":0,"duration":0}},"type":{"const":"voice","type":"string"}},"required":["id","delay","type"],"title":"VoiceMessage"}]}},"duplicationResolutionNeeded":{"type":"boolean","readOnly":true},"totalLeads":{"type":"number","readOnly":true},"completedLeadsCount":{"type":"number","readOnly":true},"id":{"type":"string","readOnly":true}},"required":["createdAt","createdBy","updatedAt","workspaceId","listId","name","status","messages","id"]}},"hasMore":{"type":"boolean"},"cursors":{"type":"object","properties":{"next":{"anyOf":[{"type":"string"},{"type":"null"}]},"previous":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["next","previous"]}},"required":["data","hasMore","cursors"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"post":{"operationId":"outreach.sequences.create","summary":"Create campaign","description":"Creates an outreach campaign for an existing list and triggers list processing. A list must be created first using the lists endpoints. See [Creating and Starting a Campaign](/docs/api/campaigns#creating-and-starting-a-campaign) for the complete flow.","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"listId":{"type":"string"},"name":{"type":"string"},"accounts":{"type":"object","properties":{"mode":{"enum":["all","selected"],"type":"string"},"selected":{"type":"array","items":{"type":"string"}},"conversationStrategy":{"enum":["prefer-existing-dialog","require-no-existing-dialog"],"type":"string"}},"required":["mode"]},"contactOwnerSettings":{"type":"object","properties":{"ownerIds":{"type":"array","items":{"type":"string"},"description":"User IDs to assign as owners of contacts created from this campaign. Multiple IDs enable round-robin assignment."}},"required":["ownerIds"]},"contactCreationTrigger":{"enum":["on-reply","on-first-message-sent"],"type":"string"},"contactDefaults":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"contactUpdatesOnReply":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"messages":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"text":{"type":"string","minLength":1},"type":{"const":"text","type":"string"}},"required":["id","delay","text"],"title":"TextMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"media":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"mimeType":{"type":"string","minLength":1},"fileSize":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","width","height"]}},"caption":{"type":"string"},"type":{"const":"media","type":"string"}},"required":["id","delay","media","type"],"title":"MediaMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"documents":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"mimeType":{"type":"string","minLength":1},"fileName":{"type":"string"},"fileSize":{"type":"number"}},"required":["url","mimeType","fileName","fileSize"]}},"caption":{"type":"string"},"type":{"const":"document","type":"string"}},"required":["id","delay","documents","type"],"title":"DocumentMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"voice":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"mimeType":{"type":"string","minLength":1},"fileSize":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","duration"],"default":{"url":"","mimeType":"","fileSize":0,"duration":0}},"type":{"const":"voice","type":"string"}},"required":["id","delay","type"],"title":"VoiceMessage"}]}}},"required":["listId","name","messages"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"createdBy":{"type":"string","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"estimatedLastMessageAt":{"not":{},"readOnly":true},"schedulingStatusReason":{"enum":["outside_planning_window","no_messages","no_leads_ready","no_sendable_accounts","sending_schedule_disabled"],"type":"string","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"listId":{"type":"string"},"name":{"type":"string"},"status":{"enum":["draft","active","paused","completed"],"type":"string","readOnly":true},"accounts":{"type":"object","properties":{"mode":{"enum":["all","selected"],"type":"string"},"selected":{"type":"array","items":{"type":"string"}},"conversationStrategy":{"enum":["prefer-existing-dialog","require-no-existing-dialog"],"type":"string"}},"required":["mode"]},"contactOwnerSettings":{"type":"object","properties":{"ownerIds":{"type":"array","items":{"type":"string"},"description":"User IDs to assign as owners of contacts created from this campaign. Multiple IDs enable round-robin assignment."}},"required":["ownerIds"]},"contactCreationTrigger":{"enum":["on-reply","on-first-message-sent"],"type":"string"},"contactDefaults":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"contactUpdatesOnReply":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"messages":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["id","delay","text"],"title":"TextMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"media":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","width","height"]}},"caption":{"type":"string"},"type":{"const":"media","type":"string"}},"required":["id","delay","media","type"],"title":"MediaMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"documents":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileName":{"type":"string"},"fileSize":{"type":"number"}},"required":["url","mimeType","fileName","fileSize"]}},"caption":{"type":"string"},"type":{"const":"document","type":"string"}},"required":["id","delay","documents","type"],"title":"DocumentMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"voice":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","duration"],"default":{"url":"","mimeType":"","fileSize":0,"duration":0}},"type":{"const":"voice","type":"string"}},"required":["id","delay","type"],"title":"VoiceMessage"}]}},"duplicationResolutionNeeded":{"type":"boolean","readOnly":true},"totalLeads":{"type":"number","readOnly":true},"completedLeadsCount":{"type":"number","readOnly":true},"id":{"type":"string","readOnly":true}},"required":["createdAt","createdBy","updatedAt","workspaceId","listId","name","status","messages","id"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Invalid input"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"List not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/outreach/sequences/{sequenceId}":{"get":{"operationId":"outreach.sequences.get","summary":"Get campaign","description":"Returns a single outreach campaign by its ID.","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"sequenceId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"createdBy":{"type":"string","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"estimatedLastMessageAt":{"not":{},"readOnly":true},"schedulingStatusReason":{"enum":["outside_planning_window","no_messages","no_leads_ready","no_sendable_accounts","sending_schedule_disabled"],"type":"string","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"listId":{"type":"string"},"name":{"type":"string"},"status":{"enum":["draft","active","paused","completed"],"type":"string","readOnly":true},"accounts":{"type":"object","properties":{"mode":{"enum":["all","selected"],"type":"string"},"selected":{"type":"array","items":{"type":"string"}},"conversationStrategy":{"enum":["prefer-existing-dialog","require-no-existing-dialog"],"type":"string"}},"required":["mode"]},"contactOwnerSettings":{"type":"object","properties":{"ownerIds":{"type":"array","items":{"type":"string"},"description":"User IDs to assign as owners of contacts created from this campaign. Multiple IDs enable round-robin assignment."}},"required":["ownerIds"]},"contactCreationTrigger":{"enum":["on-reply","on-first-message-sent"],"type":"string"},"contactDefaults":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"contactUpdatesOnReply":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"messages":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["id","delay","text"],"title":"TextMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"media":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","width","height"]}},"caption":{"type":"string"},"type":{"const":"media","type":"string"}},"required":["id","delay","media","type"],"title":"MediaMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"documents":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileName":{"type":"string"},"fileSize":{"type":"number"}},"required":["url","mimeType","fileName","fileSize"]}},"caption":{"type":"string"},"type":{"const":"document","type":"string"}},"required":["id","delay","documents","type"],"title":"DocumentMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"voice":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","duration"],"default":{"url":"","mimeType":"","fileSize":0,"duration":0}},"type":{"const":"voice","type":"string"}},"required":["id","delay","type"],"title":"VoiceMessage"}]}},"duplicationResolutionNeeded":{"type":"boolean","readOnly":true},"totalLeads":{"type":"number","readOnly":true},"completedLeadsCount":{"type":"number","readOnly":true},"id":{"type":"string","readOnly":true}},"required":["createdAt","createdBy","updatedAt","workspaceId","listId","name","status","messages","id"]}},"required":["data"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Campaign not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"patch":{"operationId":"outreach.sequences.patch","summary":"Update campaign","description":"Partially updates a campaign using [JSON Merge Patch](/docs/patching-resources).","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"sequenceId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"accounts":{"anyOf":[{"type":"object","properties":{"mode":{"enum":["all","selected"],"type":"string"},"selected":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"conversationStrategy":{"anyOf":[{"enum":["prefer-existing-dialog","require-no-existing-dialog"],"type":"string"},{"type":"null"}]}}},{"type":"null"}]},"contactOwnerSettings":{"anyOf":[{"type":"object","properties":{"ownerIds":{"type":"array","items":{"type":"string"},"description":"User IDs to assign as owners of contacts created from this campaign. Multiple IDs enable round-robin assignment."}}},{"type":"null"}]},"contactCreationTrigger":{"anyOf":[{"enum":["on-reply","on-first-message-sent"],"type":"string"},{"type":"null"}]},"contactDefaults":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},{"type":"null"}]},"contactUpdatesOnReply":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},{"type":"null"}]},"messages":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"text":{"type":"string","minLength":1},"type":{"const":"text","type":"string"}},"required":["id","text"],"title":"TextMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"media":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"mimeType":{"type":"string","minLength":1},"fileSize":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","width","height"]}},"caption":{"type":"string"},"type":{"const":"media","type":"string"}},"required":["id","type"],"title":"MediaMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"documents":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"mimeType":{"type":"string","minLength":1},"fileName":{"type":"string"},"fileSize":{"type":"number"}},"required":["url","mimeType","fileName","fileSize"]}},"caption":{"type":"string"},"type":{"const":"document","type":"string"}},"required":["id","type"],"title":"DocumentMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"voice":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"mimeType":{"type":"string","minLength":1},"fileSize":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","duration"]},"type":{"const":"voice","type":"string"}},"required":["id","type"],"title":"VoiceMessage"}]}}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"createdBy":{"type":"string","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"estimatedLastMessageAt":{"not":{},"readOnly":true},"schedulingStatusReason":{"enum":["outside_planning_window","no_messages","no_leads_ready","no_sendable_accounts","sending_schedule_disabled"],"type":"string","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"listId":{"type":"string"},"name":{"type":"string"},"status":{"enum":["draft","active","paused","completed"],"type":"string","readOnly":true},"accounts":{"type":"object","properties":{"mode":{"enum":["all","selected"],"type":"string"},"selected":{"type":"array","items":{"type":"string"}},"conversationStrategy":{"enum":["prefer-existing-dialog","require-no-existing-dialog"],"type":"string"}},"required":["mode"]},"contactOwnerSettings":{"type":"object","properties":{"ownerIds":{"type":"array","items":{"type":"string"},"description":"User IDs to assign as owners of contacts created from this campaign. Multiple IDs enable round-robin assignment."}},"required":["ownerIds"]},"contactCreationTrigger":{"enum":["on-reply","on-first-message-sent"],"type":"string"},"contactDefaults":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"contactUpdatesOnReply":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"messages":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["id","delay","text"],"title":"TextMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"media":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","width","height"]}},"caption":{"type":"string"},"type":{"const":"media","type":"string"}},"required":["id","delay","media","type"],"title":"MediaMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"documents":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileName":{"type":"string"},"fileSize":{"type":"number"}},"required":["url","mimeType","fileName","fileSize"]}},"caption":{"type":"string"},"type":{"const":"document","type":"string"}},"required":["id","delay","documents","type"],"title":"DocumentMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"voice":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","duration"],"default":{"url":"","mimeType":"","fileSize":0,"duration":0}},"type":{"const":"voice","type":"string"}},"required":["id","delay","type"],"title":"VoiceMessage"}]}},"duplicationResolutionNeeded":{"type":"boolean","readOnly":true},"totalLeads":{"type":"number","readOnly":true},"completedLeadsCount":{"type":"number","readOnly":true},"id":{"type":"string","readOnly":true}},"required":["createdAt","createdBy","updatedAt","workspaceId","listId","name","status","messages","id"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Patch would create an invalid document state"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Campaign not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}},"delete":{"operationId":"outreach.sequences.delete","summary":"Delete campaign","description":"Deletes a campaign and its associated list, leads, and pending messages. Active campaigns cannot be deleted.","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"sequenceId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{},"required":[]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"anyOf":[{"not":{}},{"not":{}}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Campaign not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"409":{"description":"409","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"CONFLICT"},"status":{"const":409},"message":{"type":"string","default":"Active campaigns cannot be deleted. Pause or complete it first."},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/outreach/sequences/{sequenceId}/leads":{"get":{"operationId":"outreach.sequences.listLeads","summary":"List campaign leads","description":"Returns all campaign leads with their message delivery state and duplicate information in a single response.","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"sequenceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"stopReason","in":"query","required":false,"schema":{"enum":["invalidUsername","phoneUnreachable","usernameAndPhoneUnreachable","replied","removed-by-user","duplicate","chat-deleted","user-deactivated","payment-required","blocked"],"type":"string"},"allowEmptyValue":true,"allowReserved":true}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"lead":{"type":"object","properties":{"id":{"type":"string"},"type":{"enum":["user","group"],"type":"string"},"contactId":{"type":"string"},"username":{"type":"string"},"phone":{"type":"string"},"stopReason":{"enum":["invalidUsername","phoneUnreachable","usernameAndPhoneUnreachable","replied","removed-by-user","duplicate","chat-deleted","user-deactivated","payment-required","blocked"],"type":"string"},"duplicates":{"type":"object","properties":{"lists":{"type":"array","items":{"type":"string"}},"contacts":{"type":"array","items":{"type":"string"}},"accounts":{"type":"array","items":{"type":"string"}}}},"properties":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}}},"required":["id","properties"]},"accountId":{"type":"string"},"messages":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string"},"sequenceMessageId":{"type":"string"},"accountId":{"type":"string"},"status":{"enum":["pending","sending","sent","failed"],"type":"string"},"scheduledAt":{"type":"string","format":"date-time"},"sentAt":{"type":"string","format":"date-time"},"readAt":{"type":"string","format":"date-time"},"repliedAt":{"type":"string","format":"date-time"},"blockedAt":{"type":"string","format":"date-time"},"error":{"type":"string"},"retryAttemptsLeft":{"type":"number"}},"required":["id","sequenceMessageId","accountId","status","scheduledAt"]}}},"required":["lead","messages"]}},"list":{"type":"object","properties":{"id":{"type":"string"},"workspaceId":{"type":"string"},"properties":{"type":"array","items":{"type":"string"}}},"required":["id","workspaceId","properties"]}},"required":["data","list"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Campaign or source list not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}},"x-experimental":true}},"/workspaces/{workspaceId}/outreach/sequences/{sequenceId}/leads/resolve-duplicates":{"post":{"operationId":"outreach.sequences.resolveDuplicates","summary":"Resolve duplicate campaign leads","description":"Keeps or removes selected duplicate leads. The campaign remains blocked until every duplicate is resolved.","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"sequenceId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"resolutions":{"type":"array","minItems":1,"items":{"type":"object","properties":{"leadId":{"type":"string","minLength":1},"action":{"enum":["keep","remove"],"type":"string"}},"required":["leadId","action"]}}},"required":["resolutions"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"createdBy":{"type":"string","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"estimatedLastMessageAt":{"not":{},"readOnly":true},"schedulingStatusReason":{"enum":["outside_planning_window","no_messages","no_leads_ready","no_sendable_accounts","sending_schedule_disabled"],"type":"string","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"listId":{"type":"string"},"name":{"type":"string"},"status":{"enum":["draft","active","paused","completed"],"type":"string","readOnly":true},"accounts":{"type":"object","properties":{"mode":{"enum":["all","selected"],"type":"string"},"selected":{"type":"array","items":{"type":"string"}},"conversationStrategy":{"enum":["prefer-existing-dialog","require-no-existing-dialog"],"type":"string"}},"required":["mode"]},"contactOwnerSettings":{"type":"object","properties":{"ownerIds":{"type":"array","items":{"type":"string"},"description":"User IDs to assign as owners of contacts created from this campaign. Multiple IDs enable round-robin assignment."}},"required":["ownerIds"]},"contactCreationTrigger":{"enum":["on-reply","on-first-message-sent"],"type":"string"},"contactDefaults":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"contactUpdatesOnReply":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"messages":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["id","delay","text"],"title":"TextMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"media":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","width","height"]}},"caption":{"type":"string"},"type":{"const":"media","type":"string"}},"required":["id","delay","media","type"],"title":"MediaMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"documents":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileName":{"type":"string"},"fileSize":{"type":"number"}},"required":["url","mimeType","fileName","fileSize"]}},"caption":{"type":"string"},"type":{"const":"document","type":"string"}},"required":["id","delay","documents","type"],"title":"DocumentMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"voice":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","duration"],"default":{"url":"","mimeType":"","fileSize":0,"duration":0}},"type":{"const":"voice","type":"string"}},"required":["id","delay","type"],"title":"VoiceMessage"}]}},"duplicationResolutionNeeded":{"type":"boolean","readOnly":true},"totalLeads":{"type":"number","readOnly":true},"completedLeadsCount":{"type":"number","readOnly":true},"id":{"type":"string","readOnly":true}},"required":["createdAt","createdBy","updatedAt","workspaceId","listId","name","status","messages","id"]}},"required":["data"]}}}},"400":{"description":"400","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"BAD_REQUEST"},"status":{"const":400},"message":{"type":"string","default":"Invalid duplicate resolution"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Campaign not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}},"/workspaces/{workspaceId}/outreach/sequences/{sequenceId}/status":{"post":{"operationId":"outreach.sequences.updateStatus","summary":"Update campaign status","description":"Starts or pauses a campaign.","tags":["Campaigns"],"parameters":[{"name":"workspaceId","in":"path","required":true,"schema":{"type":"string"}},{"name":"sequenceId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"enum":["active","paused"],"type":"string"}},"required":["status"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"createdAt":{"type":"string","format":"date-time","readOnly":true},"createdBy":{"type":"string","readOnly":true},"updatedAt":{"type":"string","format":"date-time","readOnly":true},"estimatedLastMessageAt":{"not":{},"readOnly":true},"schedulingStatusReason":{"enum":["outside_planning_window","no_messages","no_leads_ready","no_sendable_accounts","sending_schedule_disabled"],"type":"string","readOnly":true},"workspaceId":{"type":"string","readOnly":true},"listId":{"type":"string"},"name":{"type":"string"},"status":{"enum":["draft","active","paused","completed"],"type":"string","readOnly":true},"accounts":{"type":"object","properties":{"mode":{"enum":["all","selected"],"type":"string"},"selected":{"type":"array","items":{"type":"string"}},"conversationStrategy":{"enum":["prefer-existing-dialog","require-no-existing-dialog"],"type":"string"}},"required":["mode"]},"contactOwnerSettings":{"type":"object","properties":{"ownerIds":{"type":"array","items":{"type":"string"},"description":"User IDs to assign as owners of contacts created from this campaign. Multiple IDs enable round-robin assignment."}},"required":["ownerIds"]},"contactCreationTrigger":{"enum":["on-reply","on-first-message-sent"],"type":"string"},"contactDefaults":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"contactUpdatesOnReply":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"messages":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"text":{"type":"string"},"type":{"const":"text","type":"string"}},"required":["id","delay","text"],"title":"TextMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"media":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","width","height"]}},"caption":{"type":"string"},"type":{"const":"media","type":"string"}},"required":["id","delay","media","type"],"title":"MediaMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"documents":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileName":{"type":"string"},"fileSize":{"type":"number"}},"required":["url","mimeType","fileName","fileSize"]}},"caption":{"type":"string"},"type":{"const":"document","type":"string"}},"required":["id","delay","documents","type"],"title":"DocumentMessage"},{"type":"object","properties":{"id":{"type":"string"},"delay":{"type":"object","properties":{"period":{"enum":["minutes","hours","days"],"type":"string"},"value":{"type":"number"}},"required":["period","value"]},"voice":{"type":"object","properties":{"url":{"type":"string"},"mimeType":{"type":"string"},"fileSize":{"type":"number"},"duration":{"type":"number"}},"required":["url","mimeType","fileSize","duration"],"default":{"url":"","mimeType":"","fileSize":0,"duration":0}},"type":{"const":"voice","type":"string"}},"required":["id","delay","type"],"title":"VoiceMessage"}]}},"duplicationResolutionNeeded":{"type":"boolean","readOnly":true},"totalLeads":{"type":"number","readOnly":true},"completedLeadsCount":{"type":"number","readOnly":true},"id":{"type":"string","readOnly":true}},"required":["createdAt","createdBy","updatedAt","workspaceId","listId","name","status","messages","id"]}},"required":["data"]}}}},"401":{"description":"401","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"UNAUTHORIZED"},"status":{"const":401},"message":{"type":"string","default":"Invalid or missing API key"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"403":{"description":"403","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"FORBIDDEN"},"status":{"const":403},"message":{"type":"string","default":"You do not have access to this workspace"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"404":{"description":"404","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"NOT_FOUND"},"status":{"const":404},"message":{"type":"string","default":"Campaign not found"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}},"409":{"description":"409","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"defined":{"const":true},"code":{"const":"CONFLICT"},"status":{"const":409},"message":{"type":"string","default":"Campaign status transition is not allowed"},"data":{}},"required":["defined","code","status","message"]},{"type":"object","properties":{"defined":{"const":false},"code":{"type":"string"},"status":{"type":"number"},"message":{"type":"string"},"data":{}},"required":["defined","code","status","message"]}]}}}}}}}},"tags":[{"name":"Organizations"},{"name":"Workspaces"},{"name":"Custom Properties"},{"name":"Contacts"},{"name":"Dialogs"},{"name":"Telegram accounts"},{"name":"Campaigns"}]}