openapi: 3.2.0 info: title: Zoca Tasks Comms API description: 'The Zoca tasks/automation service: AI content queue and planning, FrontDesk (Retell/Twilio) voice + SMS agent onboarding, local-SEO grid scans, WIN conversion triggers, and inbound integration webhooks (Chargebee, Square, Pipedrive, Twilio, Retell, CallHippo, Sybill, Instantly).' version: 3.20.9 contact: {} x-apievangelist-note: Harvested verbatim from https://tasks.zoca.ai/swagger.json. The provider ships the default NestJS Swagger metadata (title "API Documentation", empty servers[]); title/description/servers were set by API Evangelist for identification and the unmodified original is preserved at openapi/_original/zoca-tasks-swagger.json. Every path, operation, summary, parameter and response is exactly as published. servers: - url: https://tasks.zoca.ai description: Production security: - access-token: [] tags: - name: comms paths: /tasks/api/v1/comms/provider-contacts: post: operationId: t_value parameters: [] responses: '201': description: '' summary: Create a new provider contact tags: - comms get: operationId: t_value parameters: [] responses: '200': description: '' summary: Get provider contacts with filters tags: - comms /tasks/api/v1/comms/provider-contacts/by-ids: post: operationId: t_value parameters: [] responses: '201': description: '' summary: Get provider contacts by IDs tags: - comms /tasks/api/v1/comms/sms/send: post: operationId: t_value parameters: [] responses: '201': description: '' summary: Send SMS communication tags: - comms /tasks/api/v1/comms/app-sms/create: post: operationId: t_value parameters: [] responses: '201': description: '' summary: Create app SMS communication tags: - comms /tasks/api/v1/comms/by-entity/{entityId}: get: operationId: t_value parameters: [] responses: '200': description: '' summary: Get communications by entity ID tags: - comms /tasks/api/v1/comms/by-client/{clientId}: get: operationId: t_value parameters: [] responses: '200': description: '' summary: Get communications by client ID tags: - comms /tasks/api/v1/comms/by-contact/{contactId}: get: operationId: t_value parameters: [] responses: '200': description: '' summary: Get communications by contact ID tags: - comms /tasks/api/v1/comms/providers: post: operationId: t_value parameters: [] responses: '201': description: '' summary: Add a new communication provider tags: - comms get: operationId: t_value parameters: [] responses: '200': description: '' summary: Get communication providers tags: - comms /tasks/api/v1/comms/email/send: post: operationId: t_value parameters: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/e' responses: '201': description: '' summary: Send an email communication tags: - comms /tasks/api/v1/comms/email/by-entity/{entityId}: get: operationId: t_value parameters: - name: entityId required: true in: path description: Entity UUID schema: {} responses: '200': description: '' summary: Get email communications by entity ID tags: - comms /tasks/api/v1/comms/email/by-email/{email}: get: operationId: t_value parameters: - name: email required: true in: path description: Email address to search for schema: {} responses: '200': description: '' summary: Get email communications by email address tags: - comms /tasks/api/v1/comms/email/{emailCommId}/status: patch: operationId: t_value parameters: - name: emailCommId required: true in: path description: Email communication UUID schema: {} requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/e' responses: '200': description: '' summary: Update email communication status tags: - comms components: schemas: e: type: object properties: scan: $ref: '#/components/schemas/e' businessLat: type: - number - 'null' businessLng: type: - number - 'null' points: type: array items: $ref: '#/components/schemas/e' heroMetrics: $ref: '#/components/schemas/e' required: - scan - businessLat - businessLng - points - heroMetrics securitySchemes: access-token: scheme: bearer bearerFormat: JWT type: http name: Authorization description: Enter JWT token in the format Bearer in: header