{ "info": { "_postman_id": "11facb31-1e4e-42eb-9411-7f7aa104b1b0", "name": "Amigo Account Settings API", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "lastUpdatedBy": "35240", "uid": "35240-11facb31-1e4e-42eb-9411-7f7aa104b1b0" }, "item": [ { "name": "v1", "item": [ { "name": "{workspace_id}", "item": [ { "name": "settings", "item": [ { "name": "retention", "item": [ { "name": "Get retention policy", "id": "d12227d2-0dce-47ba-82d8-57858df66fd3", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/retention", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "retention" ], "variable": [ { "id": "7ce781a9-f9b9-4803-a298-148c16a9273d", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Get the workspace retention policy.\n\nReturns HIPAA-compliant defaults (2190 days / 6 years) for any field\nnot explicitly configured. Advisory in v1 \u2014 no automated deletion.\n\nPermissions: authenticated (any role)." }, "response": [ { "id": "2677edb9-a496-42f2-a7ea-88189691a176", "name": "Successful Response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/retention", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "retention" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"call_recordings_days\": \"\",\n \"call_transcripts_days\": \"\",\n \"audit_log_days\": \"\",\n \"world_events_days\": \"\",\n \"phi_data_days\": \"\",\n \"legal_hold\": \"\",\n \"legal_hold_reason\": \"\"\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-2677edb9-a496-42f2-a7ea-88189691a176" }, { "id": "02fe5857-7b2e-49c1-8b88-64ebf67fe6fc", "name": "Rate limited", "originalRequest": { "method": "GET", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/retention", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "retention" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-02fe5857-7b2e-49c1-8b88-64ebf67fe6fc" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-d12227d2-0dce-47ba-82d8-57858df66fd3" }, { "name": "Update retention policy", "id": "6e34e375-2718-4ee4-9766-75c5fc89cc51", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"call_recordings_days\": \"\",\n \"call_transcripts_days\": \"\",\n \"audit_log_days\": \"\",\n \"world_events_days\": \"\",\n \"phi_data_days\": \"\",\n \"legal_hold\": \"\",\n \"legal_hold_reason\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/retention", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "retention" ], "variable": [ { "id": "28c7a3d1-9255-44ff-8e69-5f3df45d837e", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Update the workspace retention policy.\n\nPartial updates supported \u2014 only provided fields are changed.\nAdvisory in v1: policy is stored and displayed but no automated\ndeletion is performed. Legal hold overrides all retention.\n\nPermissions: admin, owner (``Workspace.update``)." }, "response": [ { "id": "619b3543-84b7-4ad2-882b-fabcd193e4a6", "name": "Successful Response", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"call_recordings_days\": \"\",\n \"call_transcripts_days\": \"\",\n \"audit_log_days\": \"\",\n \"world_events_days\": \"\",\n \"phi_data_days\": \"\",\n \"legal_hold\": \"\",\n \"legal_hold_reason\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/retention", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "retention" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"call_recordings_days\": \"\",\n \"call_transcripts_days\": \"\",\n \"audit_log_days\": \"\",\n \"world_events_days\": \"\",\n \"phi_data_days\": \"\",\n \"legal_hold\": \"\",\n \"legal_hold_reason\": \"\"\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-619b3543-84b7-4ad2-882b-fabcd193e4a6" }, { "id": "f754d950-55dc-4669-8dd4-1e3ea73004f9", "name": "Workspace not found", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"call_recordings_days\": \"\",\n \"call_transcripts_days\": \"\",\n \"audit_log_days\": \"\",\n \"world_events_days\": \"\",\n \"phi_data_days\": \"\",\n \"legal_hold\": \"\",\n \"legal_hold_reason\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/retention", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "retention" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Not Found", "code": 404, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-f754d950-55dc-4669-8dd4-1e3ea73004f9" }, { "id": "5413dd58-7ca4-45f9-ab37-e07aa14e6e48", "name": "Validation error", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"call_recordings_days\": \"\",\n \"call_transcripts_days\": \"\",\n \"audit_log_days\": \"\",\n \"world_events_days\": \"\",\n \"phi_data_days\": \"\",\n \"legal_hold\": \"\",\n \"legal_hold_reason\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/retention", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "retention" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Unprocessable Entity (WebDAV) (RFC 4918)", "code": 422, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-5413dd58-7ca4-45f9-ab37-e07aa14e6e48" }, { "id": "2e248b14-288a-4754-8e26-5cf68af61057", "name": "Rate limited", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"call_recordings_days\": \"\",\n \"call_transcripts_days\": \"\",\n \"audit_log_days\": \"\",\n \"world_events_days\": \"\",\n \"phi_data_days\": \"\",\n \"legal_hold\": \"\",\n \"legal_hold_reason\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/retention", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "retention" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-2e248b14-288a-4754-8e26-5cf68af61057" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-6e34e375-2718-4ee4-9766-75c5fc89cc51" } ], "id": "b96a0876-f9cf-42da-8295-64e5d799ea45", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-b96a0876-f9cf-42da-8295-64e5d799ea45" }, { "name": "gap-scanner", "item": [ { "name": "preview", "item": [ { "name": "Preview gap detection (dry run)", "id": "e89ca283-8061-42b2-9157-fabe8d6cda11", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"limit\": 50\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner/preview", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner", "preview" ], "variable": [ { "id": "b86b1ffa-c479-49ea-a1e4-2d26ae84175b", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Dry-run gap detection \u2014 returns entities with missing fields without creating surfaces.\n\nProxies to connector-runner /internal/gap-scanner/preview.\n\nPermissions: admin, owner (enforced via ``Workspace.update``)." }, "response": [ { "id": "3eef8ac8-65f9-4427-92f6-96f4972173a5", "name": "Successful Response", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"limit\": 50\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner/preview", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner", "preview" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"esse_3\": 35413616\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-3eef8ac8-65f9-4427-92f6-96f4972173a5" }, { "id": "0feb9bb2-a291-4a54-8f6e-f8d6e2cf36cb", "name": "Validation Error", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"limit\": 50\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner/preview", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner", "preview" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Unprocessable Entity (WebDAV) (RFC 4918)", "code": 422, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"detail\": [\n {\n \"loc\": [\n \"\",\n \"\"\n ],\n \"msg\": \"\",\n \"type\": \"\",\n \"input\": {\n \"title\": \"Input\"\n },\n \"ctx\": {}\n },\n {\n \"loc\": [\n \"\",\n \"\"\n ],\n \"msg\": \"\",\n \"type\": \"\",\n \"input\": {\n \"title\": \"Input\"\n },\n \"ctx\": {}\n }\n ]\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-0feb9bb2-a291-4a54-8f6e-f8d6e2cf36cb" }, { "id": "ad5414cd-bf58-4ded-b091-4b32ae97beec", "name": "Rate limited", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"limit\": 50\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner/preview", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner", "preview" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-ad5414cd-bf58-4ded-b091-4b32ae97beec" }, { "id": "94637211-68b2-479c-bb22-632ea527140d", "name": "Connector runner unavailable", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"limit\": 50\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner/preview", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner", "preview" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Service Unavailable", "code": 503, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-94637211-68b2-479c-bb22-632ea527140d" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-e89ca283-8061-42b2-9157-fabe8d6cda11" } ], "id": "1a9bdfaa-352c-436f-a1f5-317335fc7818", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-1a9bdfaa-352c-436f-a1f5-317335fc7818" }, { "name": "scan", "item": [ { "name": "Trigger one scan tick", "id": "d7e57371-5111-4337-ba46-f472067924b6", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner/scan", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner", "scan" ], "variable": [ { "id": "2801dbd0-462e-453e-aa4f-f18f56049ffe", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Trigger one scan tick immediately \u2014 creates surfaces for detected gaps.\n\nProxies to connector-runner /internal/gap-scanner/scan.\n\nPermissions: admin, owner (enforced via ``Workspace.update`` \u2014 this\ncreates patient-facing surfaces, so it must not be reachable below\nadmin tier)." }, "response": [ { "id": "88dc0951-ae68-47d2-8e95-b084ef2213aa", "name": "Successful Response", "originalRequest": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner/scan", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner", "scan" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"velit_967\": -21614720\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-88dc0951-ae68-47d2-8e95-b084ef2213aa" }, { "id": "e3faabe3-c43b-4cce-8611-56e84b596565", "name": "Rate limited", "originalRequest": { "method": "POST", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner/scan", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner", "scan" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-e3faabe3-c43b-4cce-8611-56e84b596565" }, { "id": "3c5bf411-0744-4963-bf96-908ca61ed94a", "name": "Connector runner unavailable", "originalRequest": { "method": "POST", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner/scan", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner", "scan" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Service Unavailable", "code": 503, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-3c5bf411-0744-4963-bf96-908ca61ed94a" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-d7e57371-5111-4337-ba46-f472067924b6" } ], "id": "6244e142-2d3b-4277-a09f-86229aadce71", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-6244e142-2d3b-4277-a09f-86229aadce71" }, { "name": "Get gap scanner settings", "id": "1fbbfd71-9f7c-48ad-be06-18b0d780207b", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner" ], "variable": [ { "id": "342c09b1-1575-47b0-bb6c-5a24488f8542", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Get the workspace gap scanner settings.\n\nReturns defaults when not configured. Gap scanner is disabled by default.\n\nPermissions: authenticated (any role)." }, "response": [ { "id": "eb55e171-9069-4c5c-8ff9-5701909dd318", "name": "Successful Response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"enabled\": \"\",\n \"scan_interval_seconds\": \"\",\n \"appointment_lookahead_hours\": \"\",\n \"cooldown_hours\": \"\",\n \"max_surfaces_per_tick\": \"\",\n \"max_pending_surfaces\": \"\",\n \"min_completion_rate\": \"\",\n \"channel_optimization\": \"\",\n \"requirements\": [\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"checkbox\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"email\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n },\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"date\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n }\n ]\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-eb55e171-9069-4c5c-8ff9-5701909dd318" }, { "id": "eb1a8f8c-386b-47b0-9c41-f730b85eafab", "name": "Rate limited", "originalRequest": { "method": "GET", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-eb1a8f8c-386b-47b0-9c41-f730b85eafab" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-1fbbfd71-9f7c-48ad-be06-18b0d780207b" }, { "name": "Update gap scanner settings", "id": "163bd150-c9b9-4f01-935e-c31015d326cf", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"enabled\": \"\",\n \"scan_interval_seconds\": \"\",\n \"appointment_lookahead_hours\": \"\",\n \"cooldown_hours\": \"\",\n \"max_surfaces_per_tick\": \"\",\n \"max_pending_surfaces\": \"\",\n \"min_completion_rate\": \"\",\n \"channel_optimization\": \"\",\n \"requirements\": [\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"email\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n },\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"signature\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner" ], "variable": [ { "id": "6e7e7d01-17ee-4577-99be-582193396e51", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Update the workspace gap scanner settings.\n\nPartial updates supported \u2014 only provided fields are changed.\nRequirements list is replaced entirely when provided (not merged).\n\nPermissions: admin, owner (enforced via ``Workspace.update``, matching\nthe outreach-settings sibling)." }, "response": [ { "id": "4505475d-f87e-45d6-8443-a97df4ffe062", "name": "Successful Response", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"enabled\": \"\",\n \"scan_interval_seconds\": \"\",\n \"appointment_lookahead_hours\": \"\",\n \"cooldown_hours\": \"\",\n \"max_surfaces_per_tick\": \"\",\n \"max_pending_surfaces\": \"\",\n \"min_completion_rate\": \"\",\n \"channel_optimization\": \"\",\n \"requirements\": [\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"email\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n },\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"signature\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"enabled\": \"\",\n \"scan_interval_seconds\": \"\",\n \"appointment_lookahead_hours\": \"\",\n \"cooldown_hours\": \"\",\n \"max_surfaces_per_tick\": \"\",\n \"max_pending_surfaces\": \"\",\n \"min_completion_rate\": \"\",\n \"channel_optimization\": \"\",\n \"requirements\": [\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"checkbox\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"email\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n },\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"date\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n }\n ]\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-4505475d-f87e-45d6-8443-a97df4ffe062" }, { "id": "f254553b-fb71-4a9d-836e-bd23d75615cd", "name": "Workspace not found", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"enabled\": \"\",\n \"scan_interval_seconds\": \"\",\n \"appointment_lookahead_hours\": \"\",\n \"cooldown_hours\": \"\",\n \"max_surfaces_per_tick\": \"\",\n \"max_pending_surfaces\": \"\",\n \"min_completion_rate\": \"\",\n \"channel_optimization\": \"\",\n \"requirements\": [\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"email\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n },\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"signature\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Not Found", "code": 404, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-f254553b-fb71-4a9d-836e-bd23d75615cd" }, { "id": "18f49373-67cf-4b52-8215-a3cc9df05ca6", "name": "Validation error", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"enabled\": \"\",\n \"scan_interval_seconds\": \"\",\n \"appointment_lookahead_hours\": \"\",\n \"cooldown_hours\": \"\",\n \"max_surfaces_per_tick\": \"\",\n \"max_pending_surfaces\": \"\",\n \"min_completion_rate\": \"\",\n \"channel_optimization\": \"\",\n \"requirements\": [\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"email\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n },\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"signature\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Unprocessable Entity (WebDAV) (RFC 4918)", "code": 422, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-18f49373-67cf-4b52-8215-a3cc9df05ca6" }, { "id": "23d09436-52bc-4b6b-8e04-7b2a1f940483", "name": "Rate limited", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"enabled\": \"\",\n \"scan_interval_seconds\": \"\",\n \"appointment_lookahead_hours\": \"\",\n \"cooldown_hours\": \"\",\n \"max_surfaces_per_tick\": \"\",\n \"max_pending_surfaces\": \"\",\n \"min_completion_rate\": \"\",\n \"channel_optimization\": \"\",\n \"requirements\": [\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"email\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n },\n {\n \"name\": \"\",\n \"required_fields\": [\n {\n \"path\": \"\",\n \"label\": \"\",\n \"field_type\": \"signature\",\n \"min_items\": \"\"\n }\n ],\n \"entity_type\": \"person\",\n \"trigger\": \"upcoming_appointment\",\n \"channel\": \"sms\",\n \"priority\": \"normal\",\n \"surface_title\": \"\",\n \"surface_description\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/gap-scanner", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "gap-scanner" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-23d09436-52bc-4b6b-8e04-7b2a1f940483" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-163bd150-c9b9-4f01-935e-c31015d326cf" } ], "id": "6407f8e9-a4cd-4fcf-af77-5a6e33861845", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-6407f8e9-a4cd-4fcf-af77-5a6e33861845" }, { "name": "metrics", "item": [ { "name": "Get metric definitions", "id": "3e18c595-ca24-4aa0-85c5-3ddc7a46c93c", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/metrics", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "metrics" ], "variable": [ { "id": "6ae41bde-bc18-4bb5-bf32-553268876d5c", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Get the workspace metric definitions.\n\nReturns built-in defaults when not configured.\n\nPermissions: authenticated (any role)." }, "response": [ { "id": "20266ca6-2cb5-4e9b-9d74-12e459d70309", "name": "Successful Response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/metrics", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "metrics" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"definitions\": {\n \"items\": {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"format\": \"uuid\",\n \"title\": \"Id\",\n \"default\": \"\"\n },\n \"key\": {\n \"type\": \"string\",\n \"maxLength\": 64,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\",\n \"title\": \"Key\",\n \"description\": \"Lowercase slug used as metric key (e.g. 'voice_quality_score')\"\n },\n \"name\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"minLength\": 1,\n \"default\": \"\"\n },\n \"description\": {\n \"type\": \"string\",\n \"maxLength\": 2000,\n \"default\": \"\"\n },\n \"metric_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"numerical\",\n \"categorical\",\n \"boolean\"\n ],\n \"title\": \"Metric Type\"\n },\n \"latency_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"streaming\",\n \"near_realtime\",\n \"batch\"\n ],\n \"title\": \"Latency Tier\",\n \"description\": \"'streaming' \u2014 seconds-latency via ZeroBus streaming ingestion (continuous pipeline). 'near_realtime' \u2014 minutes-latency via triggered pipeline refresh. 'batch' \u2014 hourly/daily scheduled refresh (default, cheapest).\",\n \"default\": \"batch\"\n },\n \"period_granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"hourly\",\n \"daily\"\n ],\n \"title\": \"Period Granularity\",\n \"description\": \"'hourly' \u2014 one row per workspace per hour. Use for near_realtime metrics where shift-level visibility matters (voice quality, latency). 'daily' \u2014 one row per workspace per day (default, cheapest).\",\n \"default\": \"daily\"\n },\n \"source\": {\n \"type\": \"string\",\n \"enum\": [\n \"call_intelligence\",\n \"world_events\",\n \"surface_events\",\n \"emotion_events\",\n \"connector_events\",\n \"zerobus_events\",\n \"voice_judge_results\",\n \"custom\"\n ],\n \"title\": \"Source\",\n \"description\": \"Source key for the producer that supplies this metric. Built-ins include 'call_intelligence', 'world_events', and 'surface_events'. Use 'custom' with custom_source_key for extension producers.\"\n },\n \"custom_source_key\": {\n \"type\": \"string\",\n \"maxLength\": 128,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\"\n },\n \"event_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100,\n \"minItems\": 1,\n \"title\": \"Event Types\",\n \"description\": \"Event types to scan (e.g. 'call.outcome', 'surface.submitted'). For call_intelligence source, use pseudo-types: 'call_intelligence.row'.\"\n },\n \"source_filter\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"extraction_mode\": {\n \"type\": \"string\",\n \"enum\": [\n \"static\",\n \"ai_classify\",\n \"ai_extract\",\n \"ai_query\",\n \"sql_expr\"\n ],\n \"title\": \"Extraction Mode\",\n \"description\": \"'static' \u2014 JSONB path extraction (fast, free). 'ai_classify' \u2014 AI classification into user-defined labels (free). 'ai_extract' \u2014 AI field extraction from text (free). 'ai_query' \u2014 LLM-powered extraction with custom prompt (uses model_tier). 'sql_expr' \u2014 Raw SQL expression for computed metrics.\",\n \"default\": \"static\"\n },\n \"extract_path\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ai_labels\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 500\n },\n \"ai_schema\": {\n \"additionalProperties\": true,\n \"type\": \"object\",\n \"properties\": {}\n },\n \"ai_query_endpoint\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"default\": \"\"\n },\n \"ai_query_prompt\": {\n \"type\": \"string\",\n \"maxLength\": 8000,\n \"default\": \"\"\n },\n \"sql_expression\": {\n \"type\": \"string\",\n \"maxLength\": 1000,\n \"default\": \"\"\n },\n \"aggregation\": {\n \"type\": \"string\",\n \"enum\": [\n \"count\",\n \"sum\",\n \"avg\",\n \"min\",\n \"max\",\n \"count_distinct\",\n \"ratio\",\n \"rate\"\n ],\n \"title\": \"Aggregation\",\n \"description\": \"How to aggregate extracted values per workspace per period. 'ratio' requires ratio_numerator_event and ratio_denominator_event. 'rate' computes count(true) / count(all) for boolean metrics.\",\n \"default\": \"count\"\n },\n \"ratio_numerator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ratio_denominator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"valid_range_min\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"valid_range_max\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"freshness_sla_minutes\": {\n \"type\": \"integer\",\n \"maximum\": 1440,\n \"minimum\": 5,\n \"title\": \"Freshness Sla Minutes\",\n \"description\": \"Max acceptable staleness in minutes before alerting. Default: 60 (1 hour).\",\n \"default\": 60\n },\n \"unit\": {\n \"type\": \"string\",\n \"maxLength\": 32,\n \"default\": \"\"\n },\n \"categories\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100\n },\n \"model_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"free\",\n \"fast\",\n \"balanced\",\n \"max\",\n \"custom\"\n ],\n \"title\": \"Model Tier\",\n \"description\": \"AI model tier for extraction quality/cost tradeoff. 'free' \u2014 platform managed models (ai_classify, ai_extract). 'fast' \u2014 optimized for simple classification, low latency. 'balanced' \u2014 quality scoring, moderate reasoning. 'max' \u2014 complex analysis, multi-step reasoning. 'custom' \u2014 use ai_query_endpoint directly. When extraction_mode='ai_query' and ai_query_endpoint is not set, platform resolves model_tier to the optimal model automatically.\",\n \"default\": \"free\"\n },\n \"channel_scope\": {\n \"type\": \"string\",\n \"enum\": [\n \"all\",\n \"voice\",\n \"text\",\n \"surface\",\n \"inbound\",\n \"outbound\"\n ],\n \"title\": \"Channel Scope\",\n \"description\": \"Business-logic channel filter. 'voice' \u2014 voice calls only. 'text' \u2014 SMS/text sessions. 'surface' \u2014 form submissions. 'inbound'/'outbound' \u2014 by direction. 'all' \u2014 no channel filter (default). Pipeline translates to appropriate source + event_type filters.\",\n \"default\": \"all\"\n },\n \"applies_to_product_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\"\n },\n \"prompt\": {\n \"type\": \"string\",\n \"maxLength\": 4000,\n \"default\": \"\"\n },\n \"granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"aggregate\",\n \"per_entity\"\n ],\n \"title\": \"Granularity\",\n \"description\": \"'aggregate' groups by (workspace, period) \u2014 one value per time bucket. 'per_entity' keeps entity_id \u2014 one value per entity (call, encounter). Judge metrics are typically per_entity. Computed metrics are typically aggregate.\",\n \"default\": \"aggregate\"\n },\n \"active\": {\n \"type\": \"boolean\",\n \"title\": \"Active\",\n \"default\": true\n },\n \"builtin\": {\n \"type\": \"boolean\",\n \"title\": \"Builtin\",\n \"description\": \"True for platform-provided metrics (read-only key).\",\n \"default\": false\n }\n },\n \"type\": \"object\",\n \"required\": [\n \"key\",\n \"name\",\n \"metric_type\",\n \"source\",\n \"event_types\"\n ],\n \"title\": \"MetricDefinition\",\n \"description\": \"A single metric definition \u2014 what to extract and how.\\n\\nTwo broad modes:\\n- Built-in metrics: extraction is handled by hardcoded pipeline logic\\n (extract_path + aggregation). Shipped with every workspace.\\n- Custom metrics: extraction uses AI functions or static JSONB paths.\\n Defined per-workspace via settings API.\\n\\nFrozen: builtins are process-wide singletons exposed via the\\n``BUILTIN_METRICS`` list. A mutable list field (e.g.\\n``applies_to_product_types``) could otherwise be mutated by one caller\\nand leak into every subsequent call in the same process.\"\n },\n \"type\": \"array\",\n \"title\": \"Definitions\"\n }\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-20266ca6-2cb5-4e9b-9d74-12e459d70309" }, { "id": "4967cbf9-1d8d-4491-ad3e-a2dd22e6eb8d", "name": "Rate limited", "originalRequest": { "method": "GET", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/metrics", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "metrics" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-4967cbf9-1d8d-4491-ad3e-a2dd22e6eb8d" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-3e18c595-ca24-4aa0-85c5-3ddc7a46c93c" }, { "name": "Update metric definitions", "id": "b1d09959-1595-46a0-bd50-5cb752bf0038", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"definitions\": {\n \"items\": {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"format\": \"uuid\",\n \"title\": \"Id\",\n \"default\": \"\"\n },\n \"key\": {\n \"type\": \"string\",\n \"maxLength\": 64,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\",\n \"title\": \"Key\",\n \"description\": \"Lowercase slug used as metric key (e.g. 'voice_quality_score')\"\n },\n \"name\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"minLength\": 1,\n \"default\": \"\"\n },\n \"description\": {\n \"type\": \"string\",\n \"maxLength\": 2000,\n \"default\": \"\"\n },\n \"metric_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"numerical\",\n \"categorical\",\n \"boolean\"\n ],\n \"title\": \"Metric Type\"\n },\n \"latency_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"streaming\",\n \"near_realtime\",\n \"batch\"\n ],\n \"title\": \"Latency Tier\",\n \"description\": \"'streaming' \u2014 seconds-latency via ZeroBus streaming ingestion (continuous pipeline). 'near_realtime' \u2014 minutes-latency via triggered pipeline refresh. 'batch' \u2014 hourly/daily scheduled refresh (default, cheapest).\",\n \"default\": \"batch\"\n },\n \"period_granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"hourly\",\n \"daily\"\n ],\n \"title\": \"Period Granularity\",\n \"description\": \"'hourly' \u2014 one row per workspace per hour. Use for near_realtime metrics where shift-level visibility matters (voice quality, latency). 'daily' \u2014 one row per workspace per day (default, cheapest).\",\n \"default\": \"daily\"\n },\n \"source\": {\n \"type\": \"string\",\n \"enum\": [\n \"call_intelligence\",\n \"world_events\",\n \"surface_events\",\n \"emotion_events\",\n \"connector_events\",\n \"zerobus_events\",\n \"voice_judge_results\",\n \"custom\"\n ],\n \"title\": \"Source\",\n \"description\": \"Source key for the producer that supplies this metric. Built-ins include 'call_intelligence', 'world_events', and 'surface_events'. Use 'custom' with custom_source_key for extension producers.\"\n },\n \"custom_source_key\": {\n \"type\": \"string\",\n \"maxLength\": 128,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\"\n },\n \"event_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100,\n \"minItems\": 1,\n \"title\": \"Event Types\",\n \"description\": \"Event types to scan (e.g. 'call.outcome', 'surface.submitted'). For call_intelligence source, use pseudo-types: 'call_intelligence.row'.\"\n },\n \"source_filter\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"extraction_mode\": {\n \"type\": \"string\",\n \"enum\": [\n \"static\",\n \"ai_classify\",\n \"ai_extract\",\n \"ai_query\",\n \"sql_expr\"\n ],\n \"title\": \"Extraction Mode\",\n \"description\": \"'static' \u2014 JSONB path extraction (fast, free). 'ai_classify' \u2014 AI classification into user-defined labels (free). 'ai_extract' \u2014 AI field extraction from text (free). 'ai_query' \u2014 LLM-powered extraction with custom prompt (uses model_tier). 'sql_expr' \u2014 Raw SQL expression for computed metrics.\",\n \"default\": \"static\"\n },\n \"extract_path\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ai_labels\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 500\n },\n \"ai_schema\": {\n \"additionalProperties\": true,\n \"type\": \"object\",\n \"properties\": {}\n },\n \"ai_query_endpoint\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"default\": \"\"\n },\n \"ai_query_prompt\": {\n \"type\": \"string\",\n \"maxLength\": 8000,\n \"default\": \"\"\n },\n \"sql_expression\": {\n \"type\": \"string\",\n \"maxLength\": 1000,\n \"default\": \"\"\n },\n \"aggregation\": {\n \"type\": \"string\",\n \"enum\": [\n \"count\",\n \"sum\",\n \"avg\",\n \"min\",\n \"max\",\n \"count_distinct\",\n \"ratio\",\n \"rate\"\n ],\n \"title\": \"Aggregation\",\n \"description\": \"How to aggregate extracted values per workspace per period. 'ratio' requires ratio_numerator_event and ratio_denominator_event. 'rate' computes count(true) / count(all) for boolean metrics.\",\n \"default\": \"count\"\n },\n \"ratio_numerator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ratio_denominator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"valid_range_min\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"valid_range_max\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"freshness_sla_minutes\": {\n \"type\": \"integer\",\n \"maximum\": 1440,\n \"minimum\": 5,\n \"title\": \"Freshness Sla Minutes\",\n \"description\": \"Max acceptable staleness in minutes before alerting. Default: 60 (1 hour).\",\n \"default\": 60\n },\n \"unit\": {\n \"type\": \"string\",\n \"maxLength\": 32,\n \"default\": \"\"\n },\n \"categories\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100\n },\n \"model_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"free\",\n \"fast\",\n \"balanced\",\n \"max\",\n \"custom\"\n ],\n \"title\": \"Model Tier\",\n \"description\": \"AI model tier for extraction quality/cost tradeoff. 'free' \u2014 platform managed models (ai_classify, ai_extract). 'fast' \u2014 optimized for simple classification, low latency. 'balanced' \u2014 quality scoring, moderate reasoning. 'max' \u2014 complex analysis, multi-step reasoning. 'custom' \u2014 use ai_query_endpoint directly. When extraction_mode='ai_query' and ai_query_endpoint is not set, platform resolves model_tier to the optimal model automatically.\",\n \"default\": \"free\"\n },\n \"channel_scope\": {\n \"type\": \"string\",\n \"enum\": [\n \"all\",\n \"voice\",\n \"text\",\n \"surface\",\n \"inbound\",\n \"outbound\"\n ],\n \"title\": \"Channel Scope\",\n \"description\": \"Business-logic channel filter. 'voice' \u2014 voice calls only. 'text' \u2014 SMS/text sessions. 'surface' \u2014 form submissions. 'inbound'/'outbound' \u2014 by direction. 'all' \u2014 no channel filter (default). Pipeline translates to appropriate source + event_type filters.\",\n \"default\": \"all\"\n },\n \"applies_to_product_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\"\n },\n \"prompt\": {\n \"type\": \"string\",\n \"maxLength\": 4000,\n \"default\": \"\"\n },\n \"granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"aggregate\",\n \"per_entity\"\n ],\n \"title\": \"Granularity\",\n \"description\": \"'aggregate' groups by (workspace, period) \u2014 one value per time bucket. 'per_entity' keeps entity_id \u2014 one value per entity (call, encounter). Judge metrics are typically per_entity. Computed metrics are typically aggregate.\",\n \"default\": \"aggregate\"\n },\n \"active\": {\n \"type\": \"boolean\",\n \"title\": \"Active\",\n \"default\": true\n },\n \"builtin\": {\n \"type\": \"boolean\",\n \"title\": \"Builtin\",\n \"description\": \"True for platform-provided metrics (read-only key).\",\n \"default\": false\n }\n },\n \"type\": \"object\",\n \"required\": [\n \"key\",\n \"name\",\n \"metric_type\",\n \"source\",\n \"event_types\"\n ],\n \"title\": \"MetricDefinition\",\n \"description\": \"A single metric definition \u2014 what to extract and how.\\n\\nTwo broad modes:\\n- Built-in metrics: extraction is handled by hardcoded pipeline logic\\n (extract_path + aggregation). Shipped with every workspace.\\n- Custom metrics: extraction uses AI functions or static JSONB paths.\\n Defined per-workspace via settings API.\\n\\nFrozen: builtins are process-wide singletons exposed via the\\n``BUILTIN_METRICS`` list. A mutable list field (e.g.\\n``applies_to_product_types``) could otherwise be mutated by one caller\\nand leak into every subsequent call in the same process.\"\n },\n \"type\": \"array\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/metrics", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "metrics" ], "variable": [ { "id": "f1e301f5-16e6-48b5-8dee-1fab750b4c30", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Update the workspace metric definitions.\n\nPartial updates supported \u2014 only provided fields are changed.\nThe definitions list is replaced entirely when provided.\n\nPermissions: admin, owner." }, "response": [ { "id": "cf5a69c4-8ca9-4363-8bbf-27049494155a", "name": "Successful Response", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"definitions\": {\n \"items\": {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"format\": \"uuid\",\n \"title\": \"Id\",\n \"default\": \"\"\n },\n \"key\": {\n \"type\": \"string\",\n \"maxLength\": 64,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\",\n \"title\": \"Key\",\n \"description\": \"Lowercase slug used as metric key (e.g. 'voice_quality_score')\"\n },\n \"name\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"minLength\": 1,\n \"default\": \"\"\n },\n \"description\": {\n \"type\": \"string\",\n \"maxLength\": 2000,\n \"default\": \"\"\n },\n \"metric_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"numerical\",\n \"categorical\",\n \"boolean\"\n ],\n \"title\": \"Metric Type\"\n },\n \"latency_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"streaming\",\n \"near_realtime\",\n \"batch\"\n ],\n \"title\": \"Latency Tier\",\n \"description\": \"'streaming' \u2014 seconds-latency via ZeroBus streaming ingestion (continuous pipeline). 'near_realtime' \u2014 minutes-latency via triggered pipeline refresh. 'batch' \u2014 hourly/daily scheduled refresh (default, cheapest).\",\n \"default\": \"batch\"\n },\n \"period_granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"hourly\",\n \"daily\"\n ],\n \"title\": \"Period Granularity\",\n \"description\": \"'hourly' \u2014 one row per workspace per hour. Use for near_realtime metrics where shift-level visibility matters (voice quality, latency). 'daily' \u2014 one row per workspace per day (default, cheapest).\",\n \"default\": \"daily\"\n },\n \"source\": {\n \"type\": \"string\",\n \"enum\": [\n \"call_intelligence\",\n \"world_events\",\n \"surface_events\",\n \"emotion_events\",\n \"connector_events\",\n \"zerobus_events\",\n \"voice_judge_results\",\n \"custom\"\n ],\n \"title\": \"Source\",\n \"description\": \"Source key for the producer that supplies this metric. Built-ins include 'call_intelligence', 'world_events', and 'surface_events'. Use 'custom' with custom_source_key for extension producers.\"\n },\n \"custom_source_key\": {\n \"type\": \"string\",\n \"maxLength\": 128,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\"\n },\n \"event_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100,\n \"minItems\": 1,\n \"title\": \"Event Types\",\n \"description\": \"Event types to scan (e.g. 'call.outcome', 'surface.submitted'). For call_intelligence source, use pseudo-types: 'call_intelligence.row'.\"\n },\n \"source_filter\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"extraction_mode\": {\n \"type\": \"string\",\n \"enum\": [\n \"static\",\n \"ai_classify\",\n \"ai_extract\",\n \"ai_query\",\n \"sql_expr\"\n ],\n \"title\": \"Extraction Mode\",\n \"description\": \"'static' \u2014 JSONB path extraction (fast, free). 'ai_classify' \u2014 AI classification into user-defined labels (free). 'ai_extract' \u2014 AI field extraction from text (free). 'ai_query' \u2014 LLM-powered extraction with custom prompt (uses model_tier). 'sql_expr' \u2014 Raw SQL expression for computed metrics.\",\n \"default\": \"static\"\n },\n \"extract_path\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ai_labels\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 500\n },\n \"ai_schema\": {\n \"additionalProperties\": true,\n \"type\": \"object\",\n \"properties\": {}\n },\n \"ai_query_endpoint\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"default\": \"\"\n },\n \"ai_query_prompt\": {\n \"type\": \"string\",\n \"maxLength\": 8000,\n \"default\": \"\"\n },\n \"sql_expression\": {\n \"type\": \"string\",\n \"maxLength\": 1000,\n \"default\": \"\"\n },\n \"aggregation\": {\n \"type\": \"string\",\n \"enum\": [\n \"count\",\n \"sum\",\n \"avg\",\n \"min\",\n \"max\",\n \"count_distinct\",\n \"ratio\",\n \"rate\"\n ],\n \"title\": \"Aggregation\",\n \"description\": \"How to aggregate extracted values per workspace per period. 'ratio' requires ratio_numerator_event and ratio_denominator_event. 'rate' computes count(true) / count(all) for boolean metrics.\",\n \"default\": \"count\"\n },\n \"ratio_numerator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ratio_denominator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"valid_range_min\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"valid_range_max\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"freshness_sla_minutes\": {\n \"type\": \"integer\",\n \"maximum\": 1440,\n \"minimum\": 5,\n \"title\": \"Freshness Sla Minutes\",\n \"description\": \"Max acceptable staleness in minutes before alerting. Default: 60 (1 hour).\",\n \"default\": 60\n },\n \"unit\": {\n \"type\": \"string\",\n \"maxLength\": 32,\n \"default\": \"\"\n },\n \"categories\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100\n },\n \"model_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"free\",\n \"fast\",\n \"balanced\",\n \"max\",\n \"custom\"\n ],\n \"title\": \"Model Tier\",\n \"description\": \"AI model tier for extraction quality/cost tradeoff. 'free' \u2014 platform managed models (ai_classify, ai_extract). 'fast' \u2014 optimized for simple classification, low latency. 'balanced' \u2014 quality scoring, moderate reasoning. 'max' \u2014 complex analysis, multi-step reasoning. 'custom' \u2014 use ai_query_endpoint directly. When extraction_mode='ai_query' and ai_query_endpoint is not set, platform resolves model_tier to the optimal model automatically.\",\n \"default\": \"free\"\n },\n \"channel_scope\": {\n \"type\": \"string\",\n \"enum\": [\n \"all\",\n \"voice\",\n \"text\",\n \"surface\",\n \"inbound\",\n \"outbound\"\n ],\n \"title\": \"Channel Scope\",\n \"description\": \"Business-logic channel filter. 'voice' \u2014 voice calls only. 'text' \u2014 SMS/text sessions. 'surface' \u2014 form submissions. 'inbound'/'outbound' \u2014 by direction. 'all' \u2014 no channel filter (default). Pipeline translates to appropriate source + event_type filters.\",\n \"default\": \"all\"\n },\n \"applies_to_product_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\"\n },\n \"prompt\": {\n \"type\": \"string\",\n \"maxLength\": 4000,\n \"default\": \"\"\n },\n \"granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"aggregate\",\n \"per_entity\"\n ],\n \"title\": \"Granularity\",\n \"description\": \"'aggregate' groups by (workspace, period) \u2014 one value per time bucket. 'per_entity' keeps entity_id \u2014 one value per entity (call, encounter). Judge metrics are typically per_entity. Computed metrics are typically aggregate.\",\n \"default\": \"aggregate\"\n },\n \"active\": {\n \"type\": \"boolean\",\n \"title\": \"Active\",\n \"default\": true\n },\n \"builtin\": {\n \"type\": \"boolean\",\n \"title\": \"Builtin\",\n \"description\": \"True for platform-provided metrics (read-only key).\",\n \"default\": false\n }\n },\n \"type\": \"object\",\n \"required\": [\n \"key\",\n \"name\",\n \"metric_type\",\n \"source\",\n \"event_types\"\n ],\n \"title\": \"MetricDefinition\",\n \"description\": \"A single metric definition \u2014 what to extract and how.\\n\\nTwo broad modes:\\n- Built-in metrics: extraction is handled by hardcoded pipeline logic\\n (extract_path + aggregation). Shipped with every workspace.\\n- Custom metrics: extraction uses AI functions or static JSONB paths.\\n Defined per-workspace via settings API.\\n\\nFrozen: builtins are process-wide singletons exposed via the\\n``BUILTIN_METRICS`` list. A mutable list field (e.g.\\n``applies_to_product_types``) could otherwise be mutated by one caller\\nand leak into every subsequent call in the same process.\"\n },\n \"type\": \"array\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/metrics", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "metrics" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"definitions\": {\n \"items\": {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"format\": \"uuid\",\n \"title\": \"Id\",\n \"default\": \"\"\n },\n \"key\": {\n \"type\": \"string\",\n \"maxLength\": 64,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\",\n \"title\": \"Key\",\n \"description\": \"Lowercase slug used as metric key (e.g. 'voice_quality_score')\"\n },\n \"name\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"minLength\": 1,\n \"default\": \"\"\n },\n \"description\": {\n \"type\": \"string\",\n \"maxLength\": 2000,\n \"default\": \"\"\n },\n \"metric_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"numerical\",\n \"categorical\",\n \"boolean\"\n ],\n \"title\": \"Metric Type\"\n },\n \"latency_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"streaming\",\n \"near_realtime\",\n \"batch\"\n ],\n \"title\": \"Latency Tier\",\n \"description\": \"'streaming' \u2014 seconds-latency via ZeroBus streaming ingestion (continuous pipeline). 'near_realtime' \u2014 minutes-latency via triggered pipeline refresh. 'batch' \u2014 hourly/daily scheduled refresh (default, cheapest).\",\n \"default\": \"batch\"\n },\n \"period_granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"hourly\",\n \"daily\"\n ],\n \"title\": \"Period Granularity\",\n \"description\": \"'hourly' \u2014 one row per workspace per hour. Use for near_realtime metrics where shift-level visibility matters (voice quality, latency). 'daily' \u2014 one row per workspace per day (default, cheapest).\",\n \"default\": \"daily\"\n },\n \"source\": {\n \"type\": \"string\",\n \"enum\": [\n \"call_intelligence\",\n \"world_events\",\n \"surface_events\",\n \"emotion_events\",\n \"connector_events\",\n \"zerobus_events\",\n \"voice_judge_results\",\n \"custom\"\n ],\n \"title\": \"Source\",\n \"description\": \"Source key for the producer that supplies this metric. Built-ins include 'call_intelligence', 'world_events', and 'surface_events'. Use 'custom' with custom_source_key for extension producers.\"\n },\n \"custom_source_key\": {\n \"type\": \"string\",\n \"maxLength\": 128,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\"\n },\n \"event_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100,\n \"minItems\": 1,\n \"title\": \"Event Types\",\n \"description\": \"Event types to scan (e.g. 'call.outcome', 'surface.submitted'). For call_intelligence source, use pseudo-types: 'call_intelligence.row'.\"\n },\n \"source_filter\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"extraction_mode\": {\n \"type\": \"string\",\n \"enum\": [\n \"static\",\n \"ai_classify\",\n \"ai_extract\",\n \"ai_query\",\n \"sql_expr\"\n ],\n \"title\": \"Extraction Mode\",\n \"description\": \"'static' \u2014 JSONB path extraction (fast, free). 'ai_classify' \u2014 AI classification into user-defined labels (free). 'ai_extract' \u2014 AI field extraction from text (free). 'ai_query' \u2014 LLM-powered extraction with custom prompt (uses model_tier). 'sql_expr' \u2014 Raw SQL expression for computed metrics.\",\n \"default\": \"static\"\n },\n \"extract_path\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ai_labels\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 500\n },\n \"ai_schema\": {\n \"additionalProperties\": true,\n \"type\": \"object\",\n \"properties\": {}\n },\n \"ai_query_endpoint\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"default\": \"\"\n },\n \"ai_query_prompt\": {\n \"type\": \"string\",\n \"maxLength\": 8000,\n \"default\": \"\"\n },\n \"sql_expression\": {\n \"type\": \"string\",\n \"maxLength\": 1000,\n \"default\": \"\"\n },\n \"aggregation\": {\n \"type\": \"string\",\n \"enum\": [\n \"count\",\n \"sum\",\n \"avg\",\n \"min\",\n \"max\",\n \"count_distinct\",\n \"ratio\",\n \"rate\"\n ],\n \"title\": \"Aggregation\",\n \"description\": \"How to aggregate extracted values per workspace per period. 'ratio' requires ratio_numerator_event and ratio_denominator_event. 'rate' computes count(true) / count(all) for boolean metrics.\",\n \"default\": \"count\"\n },\n \"ratio_numerator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ratio_denominator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"valid_range_min\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"valid_range_max\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"freshness_sla_minutes\": {\n \"type\": \"integer\",\n \"maximum\": 1440,\n \"minimum\": 5,\n \"title\": \"Freshness Sla Minutes\",\n \"description\": \"Max acceptable staleness in minutes before alerting. Default: 60 (1 hour).\",\n \"default\": 60\n },\n \"unit\": {\n \"type\": \"string\",\n \"maxLength\": 32,\n \"default\": \"\"\n },\n \"categories\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100\n },\n \"model_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"free\",\n \"fast\",\n \"balanced\",\n \"max\",\n \"custom\"\n ],\n \"title\": \"Model Tier\",\n \"description\": \"AI model tier for extraction quality/cost tradeoff. 'free' \u2014 platform managed models (ai_classify, ai_extract). 'fast' \u2014 optimized for simple classification, low latency. 'balanced' \u2014 quality scoring, moderate reasoning. 'max' \u2014 complex analysis, multi-step reasoning. 'custom' \u2014 use ai_query_endpoint directly. When extraction_mode='ai_query' and ai_query_endpoint is not set, platform resolves model_tier to the optimal model automatically.\",\n \"default\": \"free\"\n },\n \"channel_scope\": {\n \"type\": \"string\",\n \"enum\": [\n \"all\",\n \"voice\",\n \"text\",\n \"surface\",\n \"inbound\",\n \"outbound\"\n ],\n \"title\": \"Channel Scope\",\n \"description\": \"Business-logic channel filter. 'voice' \u2014 voice calls only. 'text' \u2014 SMS/text sessions. 'surface' \u2014 form submissions. 'inbound'/'outbound' \u2014 by direction. 'all' \u2014 no channel filter (default). Pipeline translates to appropriate source + event_type filters.\",\n \"default\": \"all\"\n },\n \"applies_to_product_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\"\n },\n \"prompt\": {\n \"type\": \"string\",\n \"maxLength\": 4000,\n \"default\": \"\"\n },\n \"granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"aggregate\",\n \"per_entity\"\n ],\n \"title\": \"Granularity\",\n \"description\": \"'aggregate' groups by (workspace, period) \u2014 one value per time bucket. 'per_entity' keeps entity_id \u2014 one value per entity (call, encounter). Judge metrics are typically per_entity. Computed metrics are typically aggregate.\",\n \"default\": \"aggregate\"\n },\n \"active\": {\n \"type\": \"boolean\",\n \"title\": \"Active\",\n \"default\": true\n },\n \"builtin\": {\n \"type\": \"boolean\",\n \"title\": \"Builtin\",\n \"description\": \"True for platform-provided metrics (read-only key).\",\n \"default\": false\n }\n },\n \"type\": \"object\",\n \"required\": [\n \"key\",\n \"name\",\n \"metric_type\",\n \"source\",\n \"event_types\"\n ],\n \"title\": \"MetricDefinition\",\n \"description\": \"A single metric definition \u2014 what to extract and how.\\n\\nTwo broad modes:\\n- Built-in metrics: extraction is handled by hardcoded pipeline logic\\n (extract_path + aggregation). Shipped with every workspace.\\n- Custom metrics: extraction uses AI functions or static JSONB paths.\\n Defined per-workspace via settings API.\\n\\nFrozen: builtins are process-wide singletons exposed via the\\n``BUILTIN_METRICS`` list. A mutable list field (e.g.\\n``applies_to_product_types``) could otherwise be mutated by one caller\\nand leak into every subsequent call in the same process.\"\n },\n \"type\": \"array\",\n \"title\": \"Definitions\"\n }\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-cf5a69c4-8ca9-4363-8bbf-27049494155a" }, { "id": "183ce35b-c746-4116-a320-cd9ee9b40068", "name": "Workspace not found", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"definitions\": {\n \"items\": {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"format\": \"uuid\",\n \"title\": \"Id\",\n \"default\": \"\"\n },\n \"key\": {\n \"type\": \"string\",\n \"maxLength\": 64,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\",\n \"title\": \"Key\",\n \"description\": \"Lowercase slug used as metric key (e.g. 'voice_quality_score')\"\n },\n \"name\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"minLength\": 1,\n \"default\": \"\"\n },\n \"description\": {\n \"type\": \"string\",\n \"maxLength\": 2000,\n \"default\": \"\"\n },\n \"metric_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"numerical\",\n \"categorical\",\n \"boolean\"\n ],\n \"title\": \"Metric Type\"\n },\n \"latency_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"streaming\",\n \"near_realtime\",\n \"batch\"\n ],\n \"title\": \"Latency Tier\",\n \"description\": \"'streaming' \u2014 seconds-latency via ZeroBus streaming ingestion (continuous pipeline). 'near_realtime' \u2014 minutes-latency via triggered pipeline refresh. 'batch' \u2014 hourly/daily scheduled refresh (default, cheapest).\",\n \"default\": \"batch\"\n },\n \"period_granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"hourly\",\n \"daily\"\n ],\n \"title\": \"Period Granularity\",\n \"description\": \"'hourly' \u2014 one row per workspace per hour. Use for near_realtime metrics where shift-level visibility matters (voice quality, latency). 'daily' \u2014 one row per workspace per day (default, cheapest).\",\n \"default\": \"daily\"\n },\n \"source\": {\n \"type\": \"string\",\n \"enum\": [\n \"call_intelligence\",\n \"world_events\",\n \"surface_events\",\n \"emotion_events\",\n \"connector_events\",\n \"zerobus_events\",\n \"voice_judge_results\",\n \"custom\"\n ],\n \"title\": \"Source\",\n \"description\": \"Source key for the producer that supplies this metric. Built-ins include 'call_intelligence', 'world_events', and 'surface_events'. Use 'custom' with custom_source_key for extension producers.\"\n },\n \"custom_source_key\": {\n \"type\": \"string\",\n \"maxLength\": 128,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\"\n },\n \"event_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100,\n \"minItems\": 1,\n \"title\": \"Event Types\",\n \"description\": \"Event types to scan (e.g. 'call.outcome', 'surface.submitted'). For call_intelligence source, use pseudo-types: 'call_intelligence.row'.\"\n },\n \"source_filter\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"extraction_mode\": {\n \"type\": \"string\",\n \"enum\": [\n \"static\",\n \"ai_classify\",\n \"ai_extract\",\n \"ai_query\",\n \"sql_expr\"\n ],\n \"title\": \"Extraction Mode\",\n \"description\": \"'static' \u2014 JSONB path extraction (fast, free). 'ai_classify' \u2014 AI classification into user-defined labels (free). 'ai_extract' \u2014 AI field extraction from text (free). 'ai_query' \u2014 LLM-powered extraction with custom prompt (uses model_tier). 'sql_expr' \u2014 Raw SQL expression for computed metrics.\",\n \"default\": \"static\"\n },\n \"extract_path\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ai_labels\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 500\n },\n \"ai_schema\": {\n \"additionalProperties\": true,\n \"type\": \"object\",\n \"properties\": {}\n },\n \"ai_query_endpoint\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"default\": \"\"\n },\n \"ai_query_prompt\": {\n \"type\": \"string\",\n \"maxLength\": 8000,\n \"default\": \"\"\n },\n \"sql_expression\": {\n \"type\": \"string\",\n \"maxLength\": 1000,\n \"default\": \"\"\n },\n \"aggregation\": {\n \"type\": \"string\",\n \"enum\": [\n \"count\",\n \"sum\",\n \"avg\",\n \"min\",\n \"max\",\n \"count_distinct\",\n \"ratio\",\n \"rate\"\n ],\n \"title\": \"Aggregation\",\n \"description\": \"How to aggregate extracted values per workspace per period. 'ratio' requires ratio_numerator_event and ratio_denominator_event. 'rate' computes count(true) / count(all) for boolean metrics.\",\n \"default\": \"count\"\n },\n \"ratio_numerator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ratio_denominator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"valid_range_min\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"valid_range_max\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"freshness_sla_minutes\": {\n \"type\": \"integer\",\n \"maximum\": 1440,\n \"minimum\": 5,\n \"title\": \"Freshness Sla Minutes\",\n \"description\": \"Max acceptable staleness in minutes before alerting. Default: 60 (1 hour).\",\n \"default\": 60\n },\n \"unit\": {\n \"type\": \"string\",\n \"maxLength\": 32,\n \"default\": \"\"\n },\n \"categories\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100\n },\n \"model_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"free\",\n \"fast\",\n \"balanced\",\n \"max\",\n \"custom\"\n ],\n \"title\": \"Model Tier\",\n \"description\": \"AI model tier for extraction quality/cost tradeoff. 'free' \u2014 platform managed models (ai_classify, ai_extract). 'fast' \u2014 optimized for simple classification, low latency. 'balanced' \u2014 quality scoring, moderate reasoning. 'max' \u2014 complex analysis, multi-step reasoning. 'custom' \u2014 use ai_query_endpoint directly. When extraction_mode='ai_query' and ai_query_endpoint is not set, platform resolves model_tier to the optimal model automatically.\",\n \"default\": \"free\"\n },\n \"channel_scope\": {\n \"type\": \"string\",\n \"enum\": [\n \"all\",\n \"voice\",\n \"text\",\n \"surface\",\n \"inbound\",\n \"outbound\"\n ],\n \"title\": \"Channel Scope\",\n \"description\": \"Business-logic channel filter. 'voice' \u2014 voice calls only. 'text' \u2014 SMS/text sessions. 'surface' \u2014 form submissions. 'inbound'/'outbound' \u2014 by direction. 'all' \u2014 no channel filter (default). Pipeline translates to appropriate source + event_type filters.\",\n \"default\": \"all\"\n },\n \"applies_to_product_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\"\n },\n \"prompt\": {\n \"type\": \"string\",\n \"maxLength\": 4000,\n \"default\": \"\"\n },\n \"granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"aggregate\",\n \"per_entity\"\n ],\n \"title\": \"Granularity\",\n \"description\": \"'aggregate' groups by (workspace, period) \u2014 one value per time bucket. 'per_entity' keeps entity_id \u2014 one value per entity (call, encounter). Judge metrics are typically per_entity. Computed metrics are typically aggregate.\",\n \"default\": \"aggregate\"\n },\n \"active\": {\n \"type\": \"boolean\",\n \"title\": \"Active\",\n \"default\": true\n },\n \"builtin\": {\n \"type\": \"boolean\",\n \"title\": \"Builtin\",\n \"description\": \"True for platform-provided metrics (read-only key).\",\n \"default\": false\n }\n },\n \"type\": \"object\",\n \"required\": [\n \"key\",\n \"name\",\n \"metric_type\",\n \"source\",\n \"event_types\"\n ],\n \"title\": \"MetricDefinition\",\n \"description\": \"A single metric definition \u2014 what to extract and how.\\n\\nTwo broad modes:\\n- Built-in metrics: extraction is handled by hardcoded pipeline logic\\n (extract_path + aggregation). Shipped with every workspace.\\n- Custom metrics: extraction uses AI functions or static JSONB paths.\\n Defined per-workspace via settings API.\\n\\nFrozen: builtins are process-wide singletons exposed via the\\n``BUILTIN_METRICS`` list. A mutable list field (e.g.\\n``applies_to_product_types``) could otherwise be mutated by one caller\\nand leak into every subsequent call in the same process.\"\n },\n \"type\": \"array\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/metrics", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "metrics" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Not Found", "code": 404, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-183ce35b-c746-4116-a320-cd9ee9b40068" }, { "id": "4ecd53b9-7e6e-48c4-80b0-3de171c9960f", "name": "Validation error", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"definitions\": {\n \"items\": {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"format\": \"uuid\",\n \"title\": \"Id\",\n \"default\": \"\"\n },\n \"key\": {\n \"type\": \"string\",\n \"maxLength\": 64,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\",\n \"title\": \"Key\",\n \"description\": \"Lowercase slug used as metric key (e.g. 'voice_quality_score')\"\n },\n \"name\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"minLength\": 1,\n \"default\": \"\"\n },\n \"description\": {\n \"type\": \"string\",\n \"maxLength\": 2000,\n \"default\": \"\"\n },\n \"metric_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"numerical\",\n \"categorical\",\n \"boolean\"\n ],\n \"title\": \"Metric Type\"\n },\n \"latency_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"streaming\",\n \"near_realtime\",\n \"batch\"\n ],\n \"title\": \"Latency Tier\",\n \"description\": \"'streaming' \u2014 seconds-latency via ZeroBus streaming ingestion (continuous pipeline). 'near_realtime' \u2014 minutes-latency via triggered pipeline refresh. 'batch' \u2014 hourly/daily scheduled refresh (default, cheapest).\",\n \"default\": \"batch\"\n },\n \"period_granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"hourly\",\n \"daily\"\n ],\n \"title\": \"Period Granularity\",\n \"description\": \"'hourly' \u2014 one row per workspace per hour. Use for near_realtime metrics where shift-level visibility matters (voice quality, latency). 'daily' \u2014 one row per workspace per day (default, cheapest).\",\n \"default\": \"daily\"\n },\n \"source\": {\n \"type\": \"string\",\n \"enum\": [\n \"call_intelligence\",\n \"world_events\",\n \"surface_events\",\n \"emotion_events\",\n \"connector_events\",\n \"zerobus_events\",\n \"voice_judge_results\",\n \"custom\"\n ],\n \"title\": \"Source\",\n \"description\": \"Source key for the producer that supplies this metric. Built-ins include 'call_intelligence', 'world_events', and 'surface_events'. Use 'custom' with custom_source_key for extension producers.\"\n },\n \"custom_source_key\": {\n \"type\": \"string\",\n \"maxLength\": 128,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\"\n },\n \"event_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100,\n \"minItems\": 1,\n \"title\": \"Event Types\",\n \"description\": \"Event types to scan (e.g. 'call.outcome', 'surface.submitted'). For call_intelligence source, use pseudo-types: 'call_intelligence.row'.\"\n },\n \"source_filter\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"extraction_mode\": {\n \"type\": \"string\",\n \"enum\": [\n \"static\",\n \"ai_classify\",\n \"ai_extract\",\n \"ai_query\",\n \"sql_expr\"\n ],\n \"title\": \"Extraction Mode\",\n \"description\": \"'static' \u2014 JSONB path extraction (fast, free). 'ai_classify' \u2014 AI classification into user-defined labels (free). 'ai_extract' \u2014 AI field extraction from text (free). 'ai_query' \u2014 LLM-powered extraction with custom prompt (uses model_tier). 'sql_expr' \u2014 Raw SQL expression for computed metrics.\",\n \"default\": \"static\"\n },\n \"extract_path\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ai_labels\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 500\n },\n \"ai_schema\": {\n \"additionalProperties\": true,\n \"type\": \"object\",\n \"properties\": {}\n },\n \"ai_query_endpoint\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"default\": \"\"\n },\n \"ai_query_prompt\": {\n \"type\": \"string\",\n \"maxLength\": 8000,\n \"default\": \"\"\n },\n \"sql_expression\": {\n \"type\": \"string\",\n \"maxLength\": 1000,\n \"default\": \"\"\n },\n \"aggregation\": {\n \"type\": \"string\",\n \"enum\": [\n \"count\",\n \"sum\",\n \"avg\",\n \"min\",\n \"max\",\n \"count_distinct\",\n \"ratio\",\n \"rate\"\n ],\n \"title\": \"Aggregation\",\n \"description\": \"How to aggregate extracted values per workspace per period. 'ratio' requires ratio_numerator_event and ratio_denominator_event. 'rate' computes count(true) / count(all) for boolean metrics.\",\n \"default\": \"count\"\n },\n \"ratio_numerator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ratio_denominator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"valid_range_min\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"valid_range_max\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"freshness_sla_minutes\": {\n \"type\": \"integer\",\n \"maximum\": 1440,\n \"minimum\": 5,\n \"title\": \"Freshness Sla Minutes\",\n \"description\": \"Max acceptable staleness in minutes before alerting. Default: 60 (1 hour).\",\n \"default\": 60\n },\n \"unit\": {\n \"type\": \"string\",\n \"maxLength\": 32,\n \"default\": \"\"\n },\n \"categories\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100\n },\n \"model_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"free\",\n \"fast\",\n \"balanced\",\n \"max\",\n \"custom\"\n ],\n \"title\": \"Model Tier\",\n \"description\": \"AI model tier for extraction quality/cost tradeoff. 'free' \u2014 platform managed models (ai_classify, ai_extract). 'fast' \u2014 optimized for simple classification, low latency. 'balanced' \u2014 quality scoring, moderate reasoning. 'max' \u2014 complex analysis, multi-step reasoning. 'custom' \u2014 use ai_query_endpoint directly. When extraction_mode='ai_query' and ai_query_endpoint is not set, platform resolves model_tier to the optimal model automatically.\",\n \"default\": \"free\"\n },\n \"channel_scope\": {\n \"type\": \"string\",\n \"enum\": [\n \"all\",\n \"voice\",\n \"text\",\n \"surface\",\n \"inbound\",\n \"outbound\"\n ],\n \"title\": \"Channel Scope\",\n \"description\": \"Business-logic channel filter. 'voice' \u2014 voice calls only. 'text' \u2014 SMS/text sessions. 'surface' \u2014 form submissions. 'inbound'/'outbound' \u2014 by direction. 'all' \u2014 no channel filter (default). Pipeline translates to appropriate source + event_type filters.\",\n \"default\": \"all\"\n },\n \"applies_to_product_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\"\n },\n \"prompt\": {\n \"type\": \"string\",\n \"maxLength\": 4000,\n \"default\": \"\"\n },\n \"granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"aggregate\",\n \"per_entity\"\n ],\n \"title\": \"Granularity\",\n \"description\": \"'aggregate' groups by (workspace, period) \u2014 one value per time bucket. 'per_entity' keeps entity_id \u2014 one value per entity (call, encounter). Judge metrics are typically per_entity. Computed metrics are typically aggregate.\",\n \"default\": \"aggregate\"\n },\n \"active\": {\n \"type\": \"boolean\",\n \"title\": \"Active\",\n \"default\": true\n },\n \"builtin\": {\n \"type\": \"boolean\",\n \"title\": \"Builtin\",\n \"description\": \"True for platform-provided metrics (read-only key).\",\n \"default\": false\n }\n },\n \"type\": \"object\",\n \"required\": [\n \"key\",\n \"name\",\n \"metric_type\",\n \"source\",\n \"event_types\"\n ],\n \"title\": \"MetricDefinition\",\n \"description\": \"A single metric definition \u2014 what to extract and how.\\n\\nTwo broad modes:\\n- Built-in metrics: extraction is handled by hardcoded pipeline logic\\n (extract_path + aggregation). Shipped with every workspace.\\n- Custom metrics: extraction uses AI functions or static JSONB paths.\\n Defined per-workspace via settings API.\\n\\nFrozen: builtins are process-wide singletons exposed via the\\n``BUILTIN_METRICS`` list. A mutable list field (e.g.\\n``applies_to_product_types``) could otherwise be mutated by one caller\\nand leak into every subsequent call in the same process.\"\n },\n \"type\": \"array\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/metrics", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "metrics" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Unprocessable Entity (WebDAV) (RFC 4918)", "code": 422, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-4ecd53b9-7e6e-48c4-80b0-3de171c9960f" }, { "id": "2c9f363e-2f05-4fab-800f-79d654538653", "name": "Rate limited", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"definitions\": {\n \"items\": {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"format\": \"uuid\",\n \"title\": \"Id\",\n \"default\": \"\"\n },\n \"key\": {\n \"type\": \"string\",\n \"maxLength\": 64,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\",\n \"title\": \"Key\",\n \"description\": \"Lowercase slug used as metric key (e.g. 'voice_quality_score')\"\n },\n \"name\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"minLength\": 1,\n \"default\": \"\"\n },\n \"description\": {\n \"type\": \"string\",\n \"maxLength\": 2000,\n \"default\": \"\"\n },\n \"metric_type\": {\n \"type\": \"string\",\n \"enum\": [\n \"numerical\",\n \"categorical\",\n \"boolean\"\n ],\n \"title\": \"Metric Type\"\n },\n \"latency_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"streaming\",\n \"near_realtime\",\n \"batch\"\n ],\n \"title\": \"Latency Tier\",\n \"description\": \"'streaming' \u2014 seconds-latency via ZeroBus streaming ingestion (continuous pipeline). 'near_realtime' \u2014 minutes-latency via triggered pipeline refresh. 'batch' \u2014 hourly/daily scheduled refresh (default, cheapest).\",\n \"default\": \"batch\"\n },\n \"period_granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"hourly\",\n \"daily\"\n ],\n \"title\": \"Period Granularity\",\n \"description\": \"'hourly' \u2014 one row per workspace per hour. Use for near_realtime metrics where shift-level visibility matters (voice quality, latency). 'daily' \u2014 one row per workspace per day (default, cheapest).\",\n \"default\": \"daily\"\n },\n \"source\": {\n \"type\": \"string\",\n \"enum\": [\n \"call_intelligence\",\n \"world_events\",\n \"surface_events\",\n \"emotion_events\",\n \"connector_events\",\n \"zerobus_events\",\n \"voice_judge_results\",\n \"custom\"\n ],\n \"title\": \"Source\",\n \"description\": \"Source key for the producer that supplies this metric. Built-ins include 'call_intelligence', 'world_events', and 'surface_events'. Use 'custom' with custom_source_key for extension producers.\"\n },\n \"custom_source_key\": {\n \"type\": \"string\",\n \"maxLength\": 128,\n \"minLength\": 1,\n \"pattern\": \"^[a-z][a-z0-9_]*$\"\n },\n \"event_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100,\n \"minItems\": 1,\n \"title\": \"Event Types\",\n \"description\": \"Event types to scan (e.g. 'call.outcome', 'surface.submitted'). For call_intelligence source, use pseudo-types: 'call_intelligence.row'.\"\n },\n \"source_filter\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"extraction_mode\": {\n \"type\": \"string\",\n \"enum\": [\n \"static\",\n \"ai_classify\",\n \"ai_extract\",\n \"ai_query\",\n \"sql_expr\"\n ],\n \"title\": \"Extraction Mode\",\n \"description\": \"'static' \u2014 JSONB path extraction (fast, free). 'ai_classify' \u2014 AI classification into user-defined labels (free). 'ai_extract' \u2014 AI field extraction from text (free). 'ai_query' \u2014 LLM-powered extraction with custom prompt (uses model_tier). 'sql_expr' \u2014 Raw SQL expression for computed metrics.\",\n \"default\": \"static\"\n },\n \"extract_path\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ai_labels\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 500\n },\n \"ai_schema\": {\n \"additionalProperties\": true,\n \"type\": \"object\",\n \"properties\": {}\n },\n \"ai_query_endpoint\": {\n \"type\": \"string\",\n \"maxLength\": 256,\n \"default\": \"\"\n },\n \"ai_query_prompt\": {\n \"type\": \"string\",\n \"maxLength\": 8000,\n \"default\": \"\"\n },\n \"sql_expression\": {\n \"type\": \"string\",\n \"maxLength\": 1000,\n \"default\": \"\"\n },\n \"aggregation\": {\n \"type\": \"string\",\n \"enum\": [\n \"count\",\n \"sum\",\n \"avg\",\n \"min\",\n \"max\",\n \"count_distinct\",\n \"ratio\",\n \"rate\"\n ],\n \"title\": \"Aggregation\",\n \"description\": \"How to aggregate extracted values per workspace per period. 'ratio' requires ratio_numerator_event and ratio_denominator_event. 'rate' computes count(true) / count(all) for boolean metrics.\",\n \"default\": \"count\"\n },\n \"ratio_numerator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"ratio_denominator_event\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"valid_range_min\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"valid_range_max\": {\n \"type\": \"number\",\n \"default\": \"\"\n },\n \"freshness_sla_minutes\": {\n \"type\": \"integer\",\n \"maximum\": 1440,\n \"minimum\": 5,\n \"title\": \"Freshness Sla Minutes\",\n \"description\": \"Max acceptable staleness in minutes before alerting. Default: 60 (1 hour).\",\n \"default\": 60\n },\n \"unit\": {\n \"type\": \"string\",\n \"maxLength\": 32,\n \"default\": \"\"\n },\n \"categories\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\",\n \"maxItems\": 100\n },\n \"model_tier\": {\n \"type\": \"string\",\n \"enum\": [\n \"free\",\n \"fast\",\n \"balanced\",\n \"max\",\n \"custom\"\n ],\n \"title\": \"Model Tier\",\n \"description\": \"AI model tier for extraction quality/cost tradeoff. 'free' \u2014 platform managed models (ai_classify, ai_extract). 'fast' \u2014 optimized for simple classification, low latency. 'balanced' \u2014 quality scoring, moderate reasoning. 'max' \u2014 complex analysis, multi-step reasoning. 'custom' \u2014 use ai_query_endpoint directly. When extraction_mode='ai_query' and ai_query_endpoint is not set, platform resolves model_tier to the optimal model automatically.\",\n \"default\": \"free\"\n },\n \"channel_scope\": {\n \"type\": \"string\",\n \"enum\": [\n \"all\",\n \"voice\",\n \"text\",\n \"surface\",\n \"inbound\",\n \"outbound\"\n ],\n \"title\": \"Channel Scope\",\n \"description\": \"Business-logic channel filter. 'voice' \u2014 voice calls only. 'text' \u2014 SMS/text sessions. 'surface' \u2014 form submissions. 'inbound'/'outbound' \u2014 by direction. 'all' \u2014 no channel filter (default). Pipeline translates to appropriate source + event_type filters.\",\n \"default\": \"all\"\n },\n \"applies_to_product_types\": {\n \"items\": {\n \"type\": \"string\",\n \"default\": \"\"\n },\n \"type\": \"array\"\n },\n \"prompt\": {\n \"type\": \"string\",\n \"maxLength\": 4000,\n \"default\": \"\"\n },\n \"granularity\": {\n \"type\": \"string\",\n \"enum\": [\n \"aggregate\",\n \"per_entity\"\n ],\n \"title\": \"Granularity\",\n \"description\": \"'aggregate' groups by (workspace, period) \u2014 one value per time bucket. 'per_entity' keeps entity_id \u2014 one value per entity (call, encounter). Judge metrics are typically per_entity. Computed metrics are typically aggregate.\",\n \"default\": \"aggregate\"\n },\n \"active\": {\n \"type\": \"boolean\",\n \"title\": \"Active\",\n \"default\": true\n },\n \"builtin\": {\n \"type\": \"boolean\",\n \"title\": \"Builtin\",\n \"description\": \"True for platform-provided metrics (read-only key).\",\n \"default\": false\n }\n },\n \"type\": \"object\",\n \"required\": [\n \"key\",\n \"name\",\n \"metric_type\",\n \"source\",\n \"event_types\"\n ],\n \"title\": \"MetricDefinition\",\n \"description\": \"A single metric definition \u2014 what to extract and how.\\n\\nTwo broad modes:\\n- Built-in metrics: extraction is handled by hardcoded pipeline logic\\n (extract_path + aggregation). Shipped with every workspace.\\n- Custom metrics: extraction uses AI functions or static JSONB paths.\\n Defined per-workspace via settings API.\\n\\nFrozen: builtins are process-wide singletons exposed via the\\n``BUILTIN_METRICS`` list. A mutable list field (e.g.\\n``applies_to_product_types``) could otherwise be mutated by one caller\\nand leak into every subsequent call in the same process.\"\n },\n \"type\": \"array\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/metrics", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "metrics" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-2c9f363e-2f05-4fab-800f-79d654538653" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-b1d09959-1595-46a0-bd50-5cb752bf0038" } ], "id": "b8024178-edc5-4b2b-ab96-d16d60a39863", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-b8024178-edc5-4b2b-ab96-d16d60a39863" }, { "name": "outreach", "item": [ { "name": "Get outreach settings", "id": "567b4fc9-5136-4827-b9d2-635626dc7e62", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/outreach", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "outreach" ], "variable": [ { "id": "0e911432-2887-4e74-91de-171fefa7a0e2", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Get the workspace outreach settings.\n\nReturns empty rules and templates when not configured.\n\nPermissions: authenticated (any role)." }, "response": [ { "id": "82d67d68-9fe8-4f76-a082-7a90fcc0327a", "name": "Successful Response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/outreach", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "outreach" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"rules\": [\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"culpa__0_\": \"ex elit\",\n \"officia_0\": false\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n },\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"magna_0e\": -73570169,\n \"aliqua_77e\": true\n },\n \"channel\": \"email\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n }\n ],\n \"data_templates\": [\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"phone\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n },\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"select\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n }\n ]\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-82d67d68-9fe8-4f76-a082-7a90fcc0327a" }, { "id": "95f45366-86d8-48b1-b103-84c99e65e16a", "name": "Rate limited", "originalRequest": { "method": "GET", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/outreach", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "outreach" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-95f45366-86d8-48b1-b103-84c99e65e16a" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-567b4fc9-5136-4827-b9d2-635626dc7e62" }, { "name": "Update outreach settings", "id": "d21fcdb2-ace4-414a-81f1-579a32af2ee2", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"rules\": [\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"anim_3\": -6249130,\n \"ullamco_76\": 54591871,\n \"ullamco1e\": \"an\"\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n },\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"esse3\": true\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n }\n ],\n \"data_templates\": [\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"email\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n },\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"checkbox\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/outreach", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "outreach" ], "variable": [ { "id": "d4134a22-2687-4bc6-93c4-b20c321af095", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Update the workspace outreach settings.\n\nPartial updates supported \u2014 only provided fields are changed.\nRules and data_templates lists are replaced entirely when provided.\n\nValidates that data_template_id references in rules point to\ntemplates that exist in the same payload or current settings.\n\nPermissions: admin, owner." }, "response": [ { "id": "f5a6fe1f-9aac-4e0c-9073-befdb286c8da", "name": "Successful Response", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"rules\": [\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"anim_3\": -6249130,\n \"ullamco_76\": 54591871,\n \"ullamco1e\": \"an\"\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n },\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"esse3\": true\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n }\n ],\n \"data_templates\": [\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"email\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n },\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"checkbox\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/outreach", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "outreach" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"rules\": [\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"culpa__0_\": \"ex elit\",\n \"officia_0\": false\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n },\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"magna_0e\": -73570169,\n \"aliqua_77e\": true\n },\n \"channel\": \"email\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n }\n ],\n \"data_templates\": [\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"phone\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n },\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"select\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n }\n ]\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-f5a6fe1f-9aac-4e0c-9073-befdb286c8da" }, { "id": "44eebea5-1d8c-4fa5-bc9c-1ff3d651bd29", "name": "Workspace not found", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"rules\": [\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"anim_3\": -6249130,\n \"ullamco_76\": 54591871,\n \"ullamco1e\": \"an\"\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n },\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"esse3\": true\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n }\n ],\n \"data_templates\": [\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"email\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n },\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"checkbox\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/outreach", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "outreach" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Not Found", "code": 404, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-44eebea5-1d8c-4fa5-bc9c-1ff3d651bd29" }, { "id": "c191b87c-7cde-46ef-aa46-2a7cad63307d", "name": "Validation error", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"rules\": [\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"anim_3\": -6249130,\n \"ullamco_76\": 54591871,\n \"ullamco1e\": \"an\"\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n },\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"esse3\": true\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n }\n ],\n \"data_templates\": [\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"email\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n },\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"checkbox\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/outreach", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "outreach" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Unprocessable Entity (WebDAV) (RFC 4918)", "code": 422, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-c191b87c-7cde-46ef-aa46-2a7cad63307d" }, { "id": "addeb2c0-2539-4475-bdb7-31aeabb70eef", "name": "Rate limited", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"rules\": [\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"anim_3\": -6249130,\n \"ullamco_76\": 54591871,\n \"ullamco1e\": \"an\"\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n },\n {\n \"name\": \"\",\n \"id\": \"\",\n \"trigger\": \"appointment_window\",\n \"trigger_config\": {\n \"esse3\": true\n },\n \"channel\": \"web\",\n \"consent_required\": true,\n \"quiet_hours\": {\n \"enabled\": false,\n \"start_hour\": 21,\n \"end_hour\": 8,\n \"timezone\": \"America/New_York\"\n },\n \"review_required\": false,\n \"message_template\": \"Hi {first_name}, please complete your form: {surface_url}\",\n \"data_template_id\": \"\",\n \"form_template_id\": \"\",\n \"active\": true\n }\n ],\n \"data_templates\": [\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"email\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n },\n {\n \"name\": \"\",\n \"fields\": [\n {\n \"key\": \"\",\n \"label\": \"\",\n \"path\": \"\",\n \"field_type\": \"checkbox\",\n \"required\": true,\n \"sensitive\": false\n }\n ],\n \"id\": \"\"\n }\n ]\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/outreach", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "outreach" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-addeb2c0-2539-4475-bdb7-31aeabb70eef" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-d21fcdb2-ace4-414a-81f1-579a32af2ee2" } ], "id": "f857ba76-7a1f-4d0b-b3ce-679b2a3ab847", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-f857ba76-7a1f-4d0b-b3ce-679b2a3ab847" }, { "name": "branding", "item": [ { "name": "Get workspace branding", "id": "738abe4c-114b-4c99-8144-169155ffbc90", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/branding", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "branding" ], "variable": [ { "id": "6ca232b7-1b09-4f17-817b-9de8f3f091a8", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Get the workspace default branding for surfaces.\n\nReturns empty branding when not configured.\n\nPermissions: authenticated (any role)." }, "response": [ { "id": "91339219-c5d0-4977-bdec-99027455be66", "name": "Successful Response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/branding", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "branding" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"branding\": {\n \"logo_url\": \"\",\n \"primary_color\": \"\",\n \"background_color\": \"\",\n \"font_family\": \"\"\n }\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-91339219-c5d0-4977-bdec-99027455be66" }, { "id": "f2fa4278-b2eb-4625-8607-1793a8ecc309", "name": "Rate limited", "originalRequest": { "method": "GET", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/branding", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "branding" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-f2fa4278-b2eb-4625-8607-1793a8ecc309" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-738abe4c-114b-4c99-8144-169155ffbc90" }, { "name": "Update workspace branding", "id": "9228312e-2ea4-427a-a91a-0e7aeea3d727", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"branding\": {\n \"logo_url\": \"\",\n \"primary_color\": \"\",\n \"background_color\": \"\",\n \"font_family\": \"\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/branding", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "branding" ], "variable": [ { "id": "15266e94-7722-4c6c-b80b-24189965857c", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Update the workspace default branding for surfaces.\n\nSurface-level branding takes precedence over workspace-level branding.\n\nPermissions: admin, owner." }, "response": [ { "id": "77da665b-68db-42e2-9d75-c1d07308a8c2", "name": "Successful Response", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"branding\": {\n \"logo_url\": \"\",\n \"primary_color\": \"\",\n \"background_color\": \"\",\n \"font_family\": \"\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/branding", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "branding" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"branding\": {\n \"logo_url\": \"\",\n \"primary_color\": \"\",\n \"background_color\": \"\",\n \"font_family\": \"\"\n }\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-77da665b-68db-42e2-9d75-c1d07308a8c2" }, { "id": "036c7963-50a7-4b4d-841f-e8ffcfb4581a", "name": "Workspace not found", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"branding\": {\n \"logo_url\": \"\",\n \"primary_color\": \"\",\n \"background_color\": \"\",\n \"font_family\": \"\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/branding", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "branding" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Not Found", "code": 404, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-036c7963-50a7-4b4d-841f-e8ffcfb4581a" }, { "id": "ad8bbfad-051a-46a6-a84c-848955d6542b", "name": "Validation error", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"branding\": {\n \"logo_url\": \"\",\n \"primary_color\": \"\",\n \"background_color\": \"\",\n \"font_family\": \"\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/branding", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "branding" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Unprocessable Entity (WebDAV) (RFC 4918)", "code": 422, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-ad8bbfad-051a-46a6-a84c-848955d6542b" }, { "id": "d9ac4e70-e5b8-4a7a-b955-199a0740cdff", "name": "Rate limited", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"branding\": {\n \"logo_url\": \"\",\n \"primary_color\": \"\",\n \"background_color\": \"\",\n \"font_family\": \"\"\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/branding", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "branding" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-d9ac4e70-e5b8-4a7a-b955-199a0740cdff" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-9228312e-2ea4-427a-a91a-0e7aeea3d727" } ], "id": "ac72ca9f-fd1c-4900-995c-6ded739b7f92", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-ac72ca9f-fd1c-4900-995c-6ded739b7f92" }, { "name": "environments", "item": [ { "name": "Get environment overrides", "id": "bd26598c-1d58-48fa-8efb-3e08c23005ef", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/environments", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "environments" ], "variable": [ { "id": "4924fec4-dcf8-44e6-aeb0-bb233f737596", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Get per-environment config overrides.\n\nReturns empty environments when not configured.\n\nPermissions: authenticated (any role)." }, "response": [ { "id": "bc58ff59-01f7-4da3-a60a-d3cce8c79c3f", "name": "Successful Response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/environments", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "environments" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"environments\": {\n \"sit_\": {\n \"data_source_id\": \"\",\n \"tool_overrides\": {\n \"enim_ef\": 44086282,\n \"pariatur__\": 42613355.2317045\n },\n \"data_source_overrides\": {\n \"amet1f7\": -82097432.27626562,\n \"minime\": \"ullamco consequat exercitation\"\n }\n }\n }\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-bc58ff59-01f7-4da3-a60a-d3cce8c79c3f" }, { "id": "dde44b20-690b-4c92-894d-65a57ea2a575", "name": "Rate limited", "originalRequest": { "method": "GET", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/environments", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "environments" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-dde44b20-690b-4c92-894d-65a57ea2a575" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-bd26598c-1d58-48fa-8efb-3e08c23005ef" }, { "name": "Update environment overrides", "id": "3ed9bb3e-0b26-4bc4-8518-89e47cf3dd65", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"environments\": {\n \"ut_2b\": {\n \"data_source_id\": \"\",\n \"tool_overrides\": {\n \"nulla_74\": true,\n \"aliquace\": true,\n \"occaecat44d\": -1501347\n },\n \"data_source_overrides\": {\n \"occaecatc\": -74336420.58005576,\n \"laboris_b02\": \"sit eiusmod\",\n \"in33\": \"id\"\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/environments", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "environments" ], "variable": [ { "id": "d30b230d-b69e-41c4-a904-a429c7aa8619", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Update per-environment config overrides.\n\nPermissions: admin, owner." }, "response": [ { "id": "203ece52-6551-4697-aec2-40440b51033b", "name": "Successful Response", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"environments\": {\n \"ut_2b\": {\n \"data_source_id\": \"\",\n \"tool_overrides\": {\n \"nulla_74\": true,\n \"aliquace\": true,\n \"occaecat44d\": -1501347\n },\n \"data_source_overrides\": {\n \"occaecatc\": -74336420.58005576,\n \"laboris_b02\": \"sit eiusmod\",\n \"in33\": \"id\"\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/environments", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "environments" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"environments\": {\n \"sit_\": {\n \"data_source_id\": \"\",\n \"tool_overrides\": {\n \"enim_ef\": 44086282,\n \"pariatur__\": 42613355.2317045\n },\n \"data_source_overrides\": {\n \"amet1f7\": -82097432.27626562,\n \"minime\": \"ullamco consequat exercitation\"\n }\n }\n }\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-203ece52-6551-4697-aec2-40440b51033b" }, { "id": "4dbaf5b9-f4a7-47be-97b7-fa02ac08468a", "name": "Workspace not found", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"environments\": {\n \"ut_2b\": {\n \"data_source_id\": \"\",\n \"tool_overrides\": {\n \"nulla_74\": true,\n \"aliquace\": true,\n \"occaecat44d\": -1501347\n },\n \"data_source_overrides\": {\n \"occaecatc\": -74336420.58005576,\n \"laboris_b02\": \"sit eiusmod\",\n \"in33\": \"id\"\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/environments", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "environments" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Not Found", "code": 404, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-4dbaf5b9-f4a7-47be-97b7-fa02ac08468a" }, { "id": "f410ceb5-f1eb-4dd8-a1e1-aefdedf22f54", "name": "Validation error", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"environments\": {\n \"ut_2b\": {\n \"data_source_id\": \"\",\n \"tool_overrides\": {\n \"nulla_74\": true,\n \"aliquace\": true,\n \"occaecat44d\": -1501347\n },\n \"data_source_overrides\": {\n \"occaecatc\": -74336420.58005576,\n \"laboris_b02\": \"sit eiusmod\",\n \"in33\": \"id\"\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/environments", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "environments" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Unprocessable Entity (WebDAV) (RFC 4918)", "code": 422, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-f410ceb5-f1eb-4dd8-a1e1-aefdedf22f54" }, { "id": "5997f1f1-b33a-4a19-9a7f-ecf49bc61894", "name": "Rate limited", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"environments\": {\n \"ut_2b\": {\n \"data_source_id\": \"\",\n \"tool_overrides\": {\n \"nulla_74\": true,\n \"aliquace\": true,\n \"occaecat44d\": -1501347\n },\n \"data_source_overrides\": {\n \"occaecatc\": -74336420.58005576,\n \"laboris_b02\": \"sit eiusmod\",\n \"in33\": \"id\"\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/environments", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "environments" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-5997f1f1-b33a-4a19-9a7f-ecf49bc61894" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-3ed9bb3e-0b26-4bc4-8518-89e47cf3dd65" } ], "id": "a6300bfa-bfc3-4ce0-a5ff-0e6c838c3a90", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-a6300bfa-bfc3-4ce0-a5ff-0e6c838c3a90" }, { "name": "voice", "item": [ { "name": "Get voice settings", "id": "89ff5eb0-22ee-4d0e-92ba-a10ccf6a239e", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/voice", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "voice" ], "variable": [ { "id": "10999c5a-fe88-4b3e-932d-5e7a59c94f54", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Get the voice experience settings for a workspace.\n\nReturns voice identity, domain vocabulary, and post-call intelligence\nconfiguration. These settings shape how the AI agent sounds and what\ndomain-specific terms it recognizes accurately.\n\n#### Permissions\n* Requires authenticated API key (any role)." }, "response": [ { "id": "cfdedebf-44ab-456a-a1c9-ced60d6361ba", "name": "Successful Response", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/voice", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "voice" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"voice_id\": \"\",\n \"tone\": \"\",\n \"speed\": \"\",\n \"volume\": \"\",\n \"language\": \"\",\n \"keyterms\": [\n \"\",\n \"\"\n ],\n \"pronunciation_dict_id\": \"\",\n \"sensitive_topics\": [\n \"\",\n \"\"\n ],\n \"post_call_analysis_enabled\": \"\",\n \"transcript_correction_enabled\": \"\",\n \"stt_provider\": \"cartesia\",\n \"tts_provider\": \"elevenlabs\",\n \"tts_config\": {\n \"consequatd_\": true\n },\n \"language_providers\": {\n \"nisi__8\": {\n \"provider\": \"cartesia\",\n \"config\": {\n \"voluptateb80\": -21667484.119238183,\n \"commodo_c4a\": \"cupidatat dolore sed in consectetur\",\n \"incididunt_a\": 96641710.39409468,\n \"irure_06\": \"est pariatur Duis eu\",\n \"sedc_a\": 38057691\n }\n },\n \"mollit1b4\": {\n \"provider\": \"elevenlabs\",\n \"config\": {\n \"mollit30\": 44996065,\n \"sed_3\": \"incididunt ullamco\",\n \"laborisa7e\": true,\n \"exercitation_638\": -83426687,\n \"laboris11a\": 62869817.92831004,\n \"esse_b\": \"cillum sint proident\",\n \"commodo_26\": -22854402.56104678,\n \"fugiat92_\": 10240545.37560448,\n \"proident_d\": -97611911,\n \"est_db\": 19523386,\n \"pariatur_1\": 87655304,\n \"ea7e5\": 69735165\n }\n }\n }\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-cfdedebf-44ab-456a-a1c9-ced60d6361ba" }, { "id": "c78ef62a-0190-43b8-8aa6-ef6b8759bf77", "name": "Rate limited", "originalRequest": { "method": "GET", "header": [ { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/voice", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "voice" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-c78ef62a-0190-43b8-8aa6-ef6b8759bf77" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-89ff5eb0-22ee-4d0e-92ba-a10ccf6a239e" }, { "name": "Update voice settings", "id": "6baf47ae-0898-4101-806a-a65f53ac3bac", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"voice_id\": \"\",\n \"tone\": \"\",\n \"speed\": \"\",\n \"volume\": \"\",\n \"language\": \"\",\n \"keyterms\": [\n \"\",\n \"\"\n ],\n \"pronunciation_dict_id\": \"\",\n \"sensitive_topics\": [\n \"\",\n \"\"\n ],\n \"post_call_analysis_enabled\": \"\",\n \"transcript_correction_enabled\": \"\",\n \"stt_provider\": \"openai\",\n \"tts_provider\": \"groq\",\n \"tts_config\": {\n \"incididunt_b61\": \"dolor cupidatat\",\n \"laborum_a\": \"consectetur ea\",\n \"in_ba3\": \"aute qui\",\n \"incididunt_570\": false\n },\n \"language_providers\": {\n \"autec\": {\n \"provider\": \"groq\",\n \"config\": {\n \"laborum__0d\": -52386333,\n \"ipsum_16\": \"eu dolor esse proident\",\n \"commodo363\": 18336789,\n \"officia_ef\": \"velit fugiat dolor\",\n \"aliqua_be6\": true,\n \"adf\": -95300587.23201025,\n \"auteef\": 17935305.287548646,\n \"irure89\": \"adipisicing ullamco incididunt cillum\",\n \"dolore_0\": \"nis\",\n \"culpaf9\": \"ex sunt ad minim cupidatat\",\n \"commodo_f\": \"laboris u\",\n \"consectetur_7\": 43563352.721652806,\n \"eiusmod_f\": \"fugiat quis\",\n \"consequatd\": -59789712,\n \"sint__\": \"velit laboris fugiat\",\n \"qui39\": false,\n \"nisi2\": 52322791,\n \"tempor_79c\": \"Ut aliquip nulla occaecat do\"\n }\n },\n \"in4\": {\n \"provider\": \"cartesia\",\n \"config\": {\n \"sint_f0\": \"eu\",\n \"Ut9a2\": true,\n \"pariatur_12f\": 59122924.18966389,\n \"anima6\": \"proident reprehenderit\",\n \"commodo073\": -18923887,\n \"dolor52\": false,\n \"dolorc6\": -37364071,\n \"labored5\": \"tempo\",\n \"ea_3a\": \"proident qui cul\",\n \"anim61\": -67716643,\n \"nostrudf\": \"occaecat ullamco Duis sit qui\",\n \"exercitation33\": false,\n \"dolore_90f\": -36191028,\n \"nostrud_84\": \"Lorem ut\",\n \"aliqua8a\": \"Lorem\",\n \"pariatur__d1\": \"qui aute et\"\n }\n },\n \"ullamco_5\": {\n \"provider\": \"groq\",\n \"config\": {\n \"ina1\": false,\n \"qui_5\": 24487993,\n \"officiae0\": \"id aliquip\",\n \"aliquip_6\": -72632470.21560177\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/voice", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "voice" ], "variable": [ { "id": "b364d1c8-d894-4a0c-b05b-ebe9254a4364", "key": "workspace_id", "value": "", "description": "(Required) " } ] }, "description": "Update the voice experience settings for a workspace.\n\nOnly provided fields are updated; omitted fields retain their current\nvalues. Set a field to ``null`` to reset it to default.\n\n**Voice Identity & Style**\n- **voice_id**: Voice identity UUID \u2014 determines the agent's voice persona\n- **tone**: Emotional baseline (``calm``, ``sympathetic``,\n ``enthusiastic``, ``content``, ``curious``, ``cheerful``,\n ``serious``, ``friendly``). The system also adapts tone dynamically\n based on real-time caller emotion analysis; this setting provides\n the baseline when no strong emotional signal is detected.\n- **speed**: Speech rate multiplier (0.5-2.0)\n- **volume**: Volume multiplier (0.0-1.0)\n- **language**: BCP-47 language tag (default ``en``)\n\n**Speech Recognition Boost**\n- **keyterms**: Exact words the speech recognition engine should\n prioritize. Use for specific names, drug names, and org jargon.\n Example: ``[\"Dr. Ramirez\", \"metformin\", \"HIPAA\"]``\n\n**Post-Call Intelligence**\n- **post_call_analysis_enabled**: Run automated quality scoring after\n each call ends (default ``true``)\n- **transcript_correction_enabled**: Re-verify transcripts with a\n high-accuracy batch model after call ends (default ``true``)\n\n#### Permissions\n* Requires admin or owner role." }, "response": [ { "id": "c99e9d44-e2cb-4c9f-8416-27faeba55c36", "name": "Successful Response", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"voice_id\": \"\",\n \"tone\": \"\",\n \"speed\": \"\",\n \"volume\": \"\",\n \"language\": \"\",\n \"keyterms\": [\n \"\",\n \"\"\n ],\n \"pronunciation_dict_id\": \"\",\n \"sensitive_topics\": [\n \"\",\n \"\"\n ],\n \"post_call_analysis_enabled\": \"\",\n \"transcript_correction_enabled\": \"\",\n \"stt_provider\": \"openai\",\n \"tts_provider\": \"groq\",\n \"tts_config\": {\n \"incididunt_b61\": \"dolor cupidatat\",\n \"laborum_a\": \"consectetur ea\",\n \"in_ba3\": \"aute qui\",\n \"incididunt_570\": false\n },\n \"language_providers\": {\n \"autec\": {\n \"provider\": \"groq\",\n \"config\": {\n \"laborum__0d\": -52386333,\n \"ipsum_16\": \"eu dolor esse proident\",\n \"commodo363\": 18336789,\n \"officia_ef\": \"velit fugiat dolor\",\n \"aliqua_be6\": true,\n \"adf\": -95300587.23201025,\n \"auteef\": 17935305.287548646,\n \"irure89\": \"adipisicing ullamco incididunt cillum\",\n \"dolore_0\": \"nis\",\n \"culpaf9\": \"ex sunt ad minim cupidatat\",\n \"commodo_f\": \"laboris u\",\n \"consectetur_7\": 43563352.721652806,\n \"eiusmod_f\": \"fugiat quis\",\n \"consequatd\": -59789712,\n \"sint__\": \"velit laboris fugiat\",\n \"qui39\": false,\n \"nisi2\": 52322791,\n \"tempor_79c\": \"Ut aliquip nulla occaecat do\"\n }\n },\n \"in4\": {\n \"provider\": \"cartesia\",\n \"config\": {\n \"sint_f0\": \"eu\",\n \"Ut9a2\": true,\n \"pariatur_12f\": 59122924.18966389,\n \"anima6\": \"proident reprehenderit\",\n \"commodo073\": -18923887,\n \"dolor52\": false,\n \"dolorc6\": -37364071,\n \"labored5\": \"tempo\",\n \"ea_3a\": \"proident qui cul\",\n \"anim61\": -67716643,\n \"nostrudf\": \"occaecat ullamco Duis sit qui\",\n \"exercitation33\": false,\n \"dolore_90f\": -36191028,\n \"nostrud_84\": \"Lorem ut\",\n \"aliqua8a\": \"Lorem\",\n \"pariatur__d1\": \"qui aute et\"\n }\n },\n \"ullamco_5\": {\n \"provider\": \"groq\",\n \"config\": {\n \"ina1\": false,\n \"qui_5\": 24487993,\n \"officiae0\": \"id aliquip\",\n \"aliquip_6\": -72632470.21560177\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/voice", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "voice" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"voice_id\": \"\",\n \"tone\": \"\",\n \"speed\": \"\",\n \"volume\": \"\",\n \"language\": \"\",\n \"keyterms\": [\n \"\",\n \"\"\n ],\n \"pronunciation_dict_id\": \"\",\n \"sensitive_topics\": [\n \"\",\n \"\"\n ],\n \"post_call_analysis_enabled\": \"\",\n \"transcript_correction_enabled\": \"\",\n \"stt_provider\": \"cartesia\",\n \"tts_provider\": \"elevenlabs\",\n \"tts_config\": {\n \"consequatd_\": true\n },\n \"language_providers\": {\n \"nisi__8\": {\n \"provider\": \"cartesia\",\n \"config\": {\n \"voluptateb80\": -21667484.119238183,\n \"commodo_c4a\": \"cupidatat dolore sed in consectetur\",\n \"incididunt_a\": 96641710.39409468,\n \"irure_06\": \"est pariatur Duis eu\",\n \"sedc_a\": 38057691\n }\n },\n \"mollit1b4\": {\n \"provider\": \"elevenlabs\",\n \"config\": {\n \"mollit30\": 44996065,\n \"sed_3\": \"incididunt ullamco\",\n \"laborisa7e\": true,\n \"exercitation_638\": -83426687,\n \"laboris11a\": 62869817.92831004,\n \"esse_b\": \"cillum sint proident\",\n \"commodo_26\": -22854402.56104678,\n \"fugiat92_\": 10240545.37560448,\n \"proident_d\": -97611911,\n \"est_db\": 19523386,\n \"pariatur_1\": 87655304,\n \"ea7e5\": 69735165\n }\n }\n }\n}", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-c99e9d44-e2cb-4c9f-8416-27faeba55c36" }, { "id": "0c58e29f-1544-460c-bd98-f7faf7f3fa82", "name": "Workspace not found", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"voice_id\": \"\",\n \"tone\": \"\",\n \"speed\": \"\",\n \"volume\": \"\",\n \"language\": \"\",\n \"keyterms\": [\n \"\",\n \"\"\n ],\n \"pronunciation_dict_id\": \"\",\n \"sensitive_topics\": [\n \"\",\n \"\"\n ],\n \"post_call_analysis_enabled\": \"\",\n \"transcript_correction_enabled\": \"\",\n \"stt_provider\": \"openai\",\n \"tts_provider\": \"groq\",\n \"tts_config\": {\n \"incididunt_b61\": \"dolor cupidatat\",\n \"laborum_a\": \"consectetur ea\",\n \"in_ba3\": \"aute qui\",\n \"incididunt_570\": false\n },\n \"language_providers\": {\n \"autec\": {\n \"provider\": \"groq\",\n \"config\": {\n \"laborum__0d\": -52386333,\n \"ipsum_16\": \"eu dolor esse proident\",\n \"commodo363\": 18336789,\n \"officia_ef\": \"velit fugiat dolor\",\n \"aliqua_be6\": true,\n \"adf\": -95300587.23201025,\n \"auteef\": 17935305.287548646,\n \"irure89\": \"adipisicing ullamco incididunt cillum\",\n \"dolore_0\": \"nis\",\n \"culpaf9\": \"ex sunt ad minim cupidatat\",\n \"commodo_f\": \"laboris u\",\n \"consectetur_7\": 43563352.721652806,\n \"eiusmod_f\": \"fugiat quis\",\n \"consequatd\": -59789712,\n \"sint__\": \"velit laboris fugiat\",\n \"qui39\": false,\n \"nisi2\": 52322791,\n \"tempor_79c\": \"Ut aliquip nulla occaecat do\"\n }\n },\n \"in4\": {\n \"provider\": \"cartesia\",\n \"config\": {\n \"sint_f0\": \"eu\",\n \"Ut9a2\": true,\n \"pariatur_12f\": 59122924.18966389,\n \"anima6\": \"proident reprehenderit\",\n \"commodo073\": -18923887,\n \"dolor52\": false,\n \"dolorc6\": -37364071,\n \"labored5\": \"tempo\",\n \"ea_3a\": \"proident qui cul\",\n \"anim61\": -67716643,\n \"nostrudf\": \"occaecat ullamco Duis sit qui\",\n \"exercitation33\": false,\n \"dolore_90f\": -36191028,\n \"nostrud_84\": \"Lorem ut\",\n \"aliqua8a\": \"Lorem\",\n \"pariatur__d1\": \"qui aute et\"\n }\n },\n \"ullamco_5\": {\n \"provider\": \"groq\",\n \"config\": {\n \"ina1\": false,\n \"qui_5\": 24487993,\n \"officiae0\": \"id aliquip\",\n \"aliquip_6\": -72632470.21560177\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/voice", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "voice" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Not Found", "code": 404, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-0c58e29f-1544-460c-bd98-f7faf7f3fa82" }, { "id": "3e7bd6bc-66c6-42a3-85b5-8b7239b3d0ec", "name": "Validation error", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"voice_id\": \"\",\n \"tone\": \"\",\n \"speed\": \"\",\n \"volume\": \"\",\n \"language\": \"\",\n \"keyterms\": [\n \"\",\n \"\"\n ],\n \"pronunciation_dict_id\": \"\",\n \"sensitive_topics\": [\n \"\",\n \"\"\n ],\n \"post_call_analysis_enabled\": \"\",\n \"transcript_correction_enabled\": \"\",\n \"stt_provider\": \"openai\",\n \"tts_provider\": \"groq\",\n \"tts_config\": {\n \"incididunt_b61\": \"dolor cupidatat\",\n \"laborum_a\": \"consectetur ea\",\n \"in_ba3\": \"aute qui\",\n \"incididunt_570\": false\n },\n \"language_providers\": {\n \"autec\": {\n \"provider\": \"groq\",\n \"config\": {\n \"laborum__0d\": -52386333,\n \"ipsum_16\": \"eu dolor esse proident\",\n \"commodo363\": 18336789,\n \"officia_ef\": \"velit fugiat dolor\",\n \"aliqua_be6\": true,\n \"adf\": -95300587.23201025,\n \"auteef\": 17935305.287548646,\n \"irure89\": \"adipisicing ullamco incididunt cillum\",\n \"dolore_0\": \"nis\",\n \"culpaf9\": \"ex sunt ad minim cupidatat\",\n \"commodo_f\": \"laboris u\",\n \"consectetur_7\": 43563352.721652806,\n \"eiusmod_f\": \"fugiat quis\",\n \"consequatd\": -59789712,\n \"sint__\": \"velit laboris fugiat\",\n \"qui39\": false,\n \"nisi2\": 52322791,\n \"tempor_79c\": \"Ut aliquip nulla occaecat do\"\n }\n },\n \"in4\": {\n \"provider\": \"cartesia\",\n \"config\": {\n \"sint_f0\": \"eu\",\n \"Ut9a2\": true,\n \"pariatur_12f\": 59122924.18966389,\n \"anima6\": \"proident reprehenderit\",\n \"commodo073\": -18923887,\n \"dolor52\": false,\n \"dolorc6\": -37364071,\n \"labored5\": \"tempo\",\n \"ea_3a\": \"proident qui cul\",\n \"anim61\": -67716643,\n \"nostrudf\": \"occaecat ullamco Duis sit qui\",\n \"exercitation33\": false,\n \"dolore_90f\": -36191028,\n \"nostrud_84\": \"Lorem ut\",\n \"aliqua8a\": \"Lorem\",\n \"pariatur__d1\": \"qui aute et\"\n }\n },\n \"ullamco_5\": {\n \"provider\": \"groq\",\n \"config\": {\n \"ina1\": false,\n \"qui_5\": 24487993,\n \"officiae0\": \"id aliquip\",\n \"aliquip_6\": -72632470.21560177\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/voice", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "voice" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Unprocessable Entity (WebDAV) (RFC 4918)", "code": 422, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-3e7bd6bc-66c6-42a3-85b5-8b7239b3d0ec" }, { "id": "4f54d0fd-ab9d-4e50-bdc2-197985c423f6", "name": "Rate limited", "originalRequest": { "method": "PUT", "header": [ { "key": "Content-Type", "value": "application/json" }, { "description": "Added as a part of security scheme: bearer", "key": "Authorization", "value": "Bearer " } ], "body": { "mode": "raw", "raw": "{\n \"voice_id\": \"\",\n \"tone\": \"\",\n \"speed\": \"\",\n \"volume\": \"\",\n \"language\": \"\",\n \"keyterms\": [\n \"\",\n \"\"\n ],\n \"pronunciation_dict_id\": \"\",\n \"sensitive_topics\": [\n \"\",\n \"\"\n ],\n \"post_call_analysis_enabled\": \"\",\n \"transcript_correction_enabled\": \"\",\n \"stt_provider\": \"openai\",\n \"tts_provider\": \"groq\",\n \"tts_config\": {\n \"incididunt_b61\": \"dolor cupidatat\",\n \"laborum_a\": \"consectetur ea\",\n \"in_ba3\": \"aute qui\",\n \"incididunt_570\": false\n },\n \"language_providers\": {\n \"autec\": {\n \"provider\": \"groq\",\n \"config\": {\n \"laborum__0d\": -52386333,\n \"ipsum_16\": \"eu dolor esse proident\",\n \"commodo363\": 18336789,\n \"officia_ef\": \"velit fugiat dolor\",\n \"aliqua_be6\": true,\n \"adf\": -95300587.23201025,\n \"auteef\": 17935305.287548646,\n \"irure89\": \"adipisicing ullamco incididunt cillum\",\n \"dolore_0\": \"nis\",\n \"culpaf9\": \"ex sunt ad minim cupidatat\",\n \"commodo_f\": \"laboris u\",\n \"consectetur_7\": 43563352.721652806,\n \"eiusmod_f\": \"fugiat quis\",\n \"consequatd\": -59789712,\n \"sint__\": \"velit laboris fugiat\",\n \"qui39\": false,\n \"nisi2\": 52322791,\n \"tempor_79c\": \"Ut aliquip nulla occaecat do\"\n }\n },\n \"in4\": {\n \"provider\": \"cartesia\",\n \"config\": {\n \"sint_f0\": \"eu\",\n \"Ut9a2\": true,\n \"pariatur_12f\": 59122924.18966389,\n \"anima6\": \"proident reprehenderit\",\n \"commodo073\": -18923887,\n \"dolor52\": false,\n \"dolorc6\": -37364071,\n \"labored5\": \"tempo\",\n \"ea_3a\": \"proident qui cul\",\n \"anim61\": -67716643,\n \"nostrudf\": \"occaecat ullamco Duis sit qui\",\n \"exercitation33\": false,\n \"dolore_90f\": -36191028,\n \"nostrud_84\": \"Lorem ut\",\n \"aliqua8a\": \"Lorem\",\n \"pariatur__d1\": \"qui aute et\"\n }\n },\n \"ullamco_5\": {\n \"provider\": \"groq\",\n \"config\": {\n \"ina1\": false,\n \"qui_5\": 24487993,\n \"officiae0\": \"id aliquip\",\n \"aliquip_6\": -72632470.21560177\n }\n }\n }\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/v1/:workspace_id/settings/voice", "host": [ "{{baseUrl}}" ], "path": [ "v1", ":workspace_id", "settings", "voice" ], "variable": [ { "key": "workspace_id" } ] } }, "status": "Too Many Requests", "code": 429, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-4f54d0fd-ab9d-4e50-bdc2-197985c423f6" } ], "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-6baf47ae-0898-4101-806a-a65f53ac3bac" } ], "id": "2144be0b-65e9-4d85-ac19-315ab1ad0936", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-2144be0b-65e9-4d85-ac19-315ab1ad0936" } ], "id": "dd01c080-c390-414b-ab6f-05b57b6af4a9", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-dd01c080-c390-414b-ab6f-05b57b6af4a9" } ], "id": "1213ea2d-47dd-4fb6-b62f-0f7a650b7a9c", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-1213ea2d-47dd-4fb6-b62f-0f7a650b7a9c" } ], "id": "6445415d-690c-46f8-a5e2-c66b31e22a1a", "createdAt": "2026-07-28T01:02:38.000Z", "updatedAt": "2026-07-28T01:02:38.000Z", "uid": "35240-6445415d-690c-46f8-a5e2-c66b31e22a1a" } ], "auth": { "type": "bearer", "bearer": [ { "key": "token", "value": "{{bearerToken}}", "type": "string" } ] }, "variable": [ { "key": "baseUrl", "value": "https://api.amigo.ai" } ] }