AgencyZoom Service Center API
The Service Center API from AgencyZoom — 6 operation(s) for service center.
The Service Center API from AgencyZoom — 6 operation(s) for service center.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/agencyzoom:agencyzoom-service-center-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Agencyzoom Service Center API
description: 'Agencyzoom API enables third party applications to integrate with
Agencyzoom to manage lead, customer, policy, and tasks. The management operations
include actions such as creation, retrieval, updating, and deletion.
Currently, Agencyzoom has a rate limit of **120** calls per minute during the day and night as of Aug 17, 2026.
# Getting Started
Using authentication endpoints as described below, the integrator can function on hehalf
of the logged in user. The login endpoint returns a JWT token. Subsequent calls need
pass the token as HTTP header bearer token.
```
Authorization: Bearer
```
Please note, the permissions afforded to the caller are the same as those for the logged
in user. Therefore, the user name used for the integration has to be the agency owner
if the integrated applications would like to access all the functionalities.
# Versioning
Agencyzoom API is backward compatible. Currently there is only one version.
# Change Logs
- ### 2023.11.07
- POST v1/api/leads/list. Fixed bug in sort by `lastActivityDate`. Added 2 additional filters: lastActivityEarliestDate,lastActivityLatestDate
- Increased rate limite for nightly API calls
- POST v1/api/leads/{leadId}/quotes. Fixed bug of missing `Quote ID` response payload
- ### 2023.11.21
- Increased rate limite for daily API calls to 30 per minute
- POST /v1/api/leads/{leadId}/notes. Fixed bug in processing line breaks
- ### 2024.01.10
- New API for contact management - Batch Create Contacts POST `v1/api/contact/batch-create`
- Added the following new fields for PUT `v1/api/customers/{customerId}`
`contactFirstname` `contactLastname` `contactMiddlename` `numberOfEmployees` `annualRevenue` `totalPayroll` `tagNamesbirthday` `csrId` `agentId` `customFields`
- ### 2024.01.18
- New API for Customer management - Get AMS policies for a specific customer `GET: v1/api/customers/{customerId}/ams-policies`
- New API for Customer management - Get policies for a specific customer `GET: v1/api/customers/{customerId}/policies`
- New API for Customer management - Update tags for a specific policy `POST: v1/api/policies/update-tags`
- ### 2024.01.18
- POST `/v1/api/leads/create`. Edit request params `pipelineId` `stageId` as required.
- ### 2024.03.10
- Added two new fields `licenseNumber` `stateLicensed` for POST `v1/api/opportunities/{opportunityId}/driver` GET `v1/api/opportunities/drivers/{driverId}` PUT `v1/api/opportunities/drivers/{driverId}`
- ### 2026.08.7
- Increased rate limite for daily API calls to 90 per minute
- ### 2026.08.17
- Increased rate limite for daily API calls to 120 per minute
Happy coding!'
termsOfService: https://agencyzoom.com/tos/
contact:
email: support@agencyzoom.com
license:
name: Propriety license
version: 1.0.0
servers:
- url: https://api.agencyzoom.com
description: Mobile test server
tags:
- name: Service Center
paths:
/v1/api/serviceTicket/service-tickets/list:
post:
tags:
- Service Center
summary: Service Ticket List
operationId: list
requestBody:
description: Service ticket search request.
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SearchServiceTicketsRequest'
responses:
'200':
description: Retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/SearchServiceTicketResponse'
'400':
description: Invalid request parameter(s)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal processing error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- bearer: []
/v1/api/serviceTicket/service-tickets/create:
post:
tags:
- Service Center
summary: Create Service Ticket
operationId: create
requestBody:
description: Service ticket creation request
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceTicketCreateRequest'
responses:
'200':
description: Service ticket created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccessResponse'
'400':
description: Invalid request parameter(s)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal processing error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- bearer: []
/v1/api/serviceTicket/service-tickets/{id}:
put:
tags:
- Service Center
summary: Update Service Ticket
operationId: updateServiceTicket
parameters:
- name: id
in: path
description: ID of the service ticket
required: true
schema:
type: integer
format: int64
requestBody:
description: Service ticket update request
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceTicketUpdateRequest'
responses:
'200':
description: Service ticket updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccessResponse'
'400':
description: Invalid request parameter(s)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Service ticket not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal processing error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- bearer: []
/v1/api/serviceTicket/service-tickets/{id}/complete:
post:
tags:
- Service Center
summary: Complete Service Ticket
operationId: completeServiceTicket
parameters:
- name: id
in: path
description: ID of the service ticket
required: true
schema:
type: integer
format: int64
requestBody:
description: Service ticket complete request
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceTicketCompleteRequest'
responses:
'200':
description: Service ticket completed successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccessResponse'
'400':
description: Invalid request parameter(s)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Service ticket not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal processing error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- bearer: []
/v1/api/serviceTicket/service-tickets/{id}/policies:
get:
tags:
- Service Center
summary: Get policies for a Service Ticket
operationId: getServiceTicketPolicies
parameters:
- name: id
in: path
description: ID of the service ticket
required: true
schema:
type: integer
format: int64
responses:
'200':
description: The list of policies information
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/WrittenPolicy'
'404':
description: Service ticket not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal processing error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- bearer: []
/v1/api/serviceTicket/service-tickets/{id}/ams-policies:
get:
tags:
- Service Center
summary: Get AMS policies for a Service Ticket
operationId: getServiceTicketAmsPolicies
parameters:
- name: id
in: path
description: ID of the service ticket
required: true
schema:
type: integer
format: int64
responses:
'200':
description: The list of AMS policies information
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AmsPolicy'
'404':
description: Service ticket not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal processing error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- bearer: []
components:
schemas:
ServiceTicketCompleteRequest:
description: Service ticket complete request model
required:
- id
- resolutionId
properties:
id:
description: Service ticket ID
type: integer
resolutionId:
description: Resolution type ID
type: integer
resolutionDesc:
description: Resolution description (optional)
type: string
cancelRelatedTasks:
description: 'Whether to cancel related tasks (optional, default: false)'
type: boolean
type: object
BaseSearchResponse:
properties:
totalCount:
type: integer
example: 100
page:
type: integer
example: 1
pageSize:
type: integer
example: 50
type: object
BaseSearchRequestWithLimitedPageSize:
properties:
pageSize:
description: 'Page size: number of results returned. The maximum is 100'
type: integer
default: 20
example: 20
page:
description: The page being returned. Start with 0
type: integer
default: 0
example: 0
sort:
description: Field name used for sorting
type: string
example: id
order:
type: string
enum:
- asc
- desc
location:
description: Location ID
type: string
type: object
ErrorResponse:
description: Error response model.
properties:
error:
description: The error message
type: string
fieldErrors:
description: The field errors
type: array
items:
$ref: '#/components/schemas/FieldError'
type: object
WrittenPolicy:
description: The policy details
properties:
id:
description: Unique identifier for the policy.
type: integer
leadSourceId:
description: Identifier of the lead source associated with this policy.
type: integer
example: 1
policyTypeName:
description: Descriptive name of the policy type.
type: string
carrierId:
description: Unique identifier for the insurance carrier. Optional if standardCarrierCode is specified.
type: integer
standardCarrierCode:
description: Standardized code representing the insurance carrier.
type: string
policyTypeId:
description: Unique identifier for the policy type. Optional if standardProductLineCode is specified.
type: string
standardProductLineCode:
description: Standardized code representing the policy product line.
type: string
policyNumber:
description: Official policy number assigned by the carrier.
type: string
premium:
description: Total premium amount for the policy, expressed in cents.
type: integer
items:
description: Number of insured items or risks covered under the policy.
type: integer
soldDate:
description: Date when the policy was sold or issued.
type: string
agentId:
description: Unique identifier for the agent or producer responsible for the policy.
type: integer
agentName:
description: Full name of producer.
type: string
csrId:
description: Unique identifier for the customer service representative (CSR) assigned to the policy.
type: integer
csrName:
description: Full name of the customer service representative (CSR).
type: string
effectiveDate:
description: Date when the policy coverage becomes effective.
type: string
example: '2019-01-01'
expiryDate:
description: Date when the policy coverage expires.
type: string
example: '2020-01-01'
tagNames:
description: Comma-separated list of tags associated with the policy.
type: string
externalSystem:
description: External System
type: string
externalId:
description: External ID
type: string
status:
description: 'Policy''s status. 0: Cancelled, 1: Active, 3: Upcoming, 4: Renewed, 10: Active-New, 11: Active-Renewed, 12: Active-Reinstated, 13: Active-Rewritten'
type: integer
enum:
- 0
- 1
- 3
- 4
- 10
- 11
- 12
- 13
type: object
GenericSuccessResponse:
description: A generic succss response.
properties:
message:
description: An optional confirmation message
type: string
id:
description: A Model's id
type: integer
result:
description: 'whether success, 1: true, 0: false'
type: boolean
type: object
AmsPolicy:
description: The AMS policy details
properties:
id:
description: Unique identifier for the AMS policy record within the system
type: integer
leadSourceId:
description: Identifier of the lead source that generated this policy, used for tracking marketing effectiveness and lead attribution
type: integer
example: 1
carrierId:
description: Unique identifier of the insurance carrier (company) that underwrites and provides coverage for this policy
type: integer
policyTypeName:
description: Human-readable name of the policy type or product line (e.g., 'Auto Insurance', 'Home Insurance', 'Life Insurance')
type: string
policyTypeId:
description: Numeric identifier for the policy type, used for system classification and reporting purposes
type: integer
policyNumber:
description: Official policy number assigned by the insurance carrier, used for identification and claims processing
type: string
premium:
description: Total annual premium amount for the policy expressed in cents (multiply by 100 for dollar amount to avoid floating point precision issues)
type: integer
items:
description: Number of covered items or units under this policy (e.g., vehicles for auto insurance, properties for homeowner's insurance)
type: integer
soldDate:
description: Date when the policy was successfully sold and finalized, typically in YYYY-MM-DD format
type: string
agentId:
description: Unique identifier of the insurance agent (producer) who sold and manages this policy
type: integer
agentName:
description: Full name of the insurance agent (producer) responsible for this policy's sales and ongoing management
type: string
csrId:
description: Unique identifier of the Customer Service Representative (CSR) assigned to handle customer inquiries and policy servicing
type: integer
csrName:
description: Full name of the Customer Service Representative (CSR) who provides ongoing customer support for this policy
type: string
effectiveDate:
description: Date when the insurance coverage begins and the policy becomes active, typically in YYYY-MM-DD format
type: string
example: '2019-01-01'
expiryDate:
description: Date when the insurance coverage ends and the policy expires, typically in YYYY-MM-DD format unless renewed
type: string
example: '2020-01-01'
tagNames:
description: Comma-separated list of descriptive tags or labels attached to this policy for categorization, filtering, and organizational purposes
type: string
standardProductLineId:
description: standardProductLineId is the policy type id that defined in pulse account.
type: integer
externalSystem:
description: External System
type: string
externalId:
description: External ID
type: string
status:
description: 'Policy''s status. 0: Inactive, 1: Active, 2: Pending, 3:Upcoming, 11: Voided, 12: Expired, 100: Unknown Status'
type: integer
enum:
- 0
- 1
- 2
- 3
- 11
- 12
- 100
type: object
FieldError:
description: Form field error model.
properties:
field:
description: The field ID
type: string
error:
description: The error message
type: string
type: object
ServiceTicketUpdateRequest:
description: Service ticket update request model
required:
- id
allOf:
- $ref: '#/components/schemas/ServiceTicketCreateRequest'
- properties:
id:
description: Service ticket ID
type: integer
SearchServiceTicketsRequest:
description: search service tickets request model
allOf:
- $ref: '#/components/schemas/BaseSearchRequestWithLimitedPageSize'
- properties:
fullName:
description: Name of a household
type: string
status:
description: Service ticket status
type: integer
example: remove = 0; active = 1; completed = 2
category:
description: Service ticket category
type: integer
example: 0 = all;
priority:
description: Service ticket priority
type: integer
example: 0 = all;
resolution:
description: The id of service ticket resolution
type: string
completeStart:
description: The complete start date of a service ticket
type: string
example: 01/07/12
completeEnd:
description: The complete end date of a service ticket
type: string
example: 01/07/12
completePeriod:
description: The complete priorid
type: string
example: Customize, Last Month, etc.
createStart:
description: The create start date of a service ticket
type: string
example: 01/07/12
createEnd:
description: The create end date of a service ticket
type: string
example: 01/07/12
createPeriod:
description: The complete priorid
type: string
example: Customize, Last Month, etc.
timezone:
description: The timezone of agency
type: string
example: America/Chicago
workflowId:
description: The id of Pipeline
type: integer
example: 0 = all;
workflowStageId:
description: The id of stage
type: integer
example: 0 = all;
tags:
description: The id of tags
type: string
example: 1, 2, 3
serviceTicketIds:
description: Service ticket Ids
type: array
items:
type: integer
example: 1
policyType:
description: The ids of policy type. Optional if standardProductLineCodes is provided.
type: array
items:
type: integer
example:
- 1
- 2
- 3
standardProductLineCodes:
description: The standard codes of policy type.
type: array
items:
type: string
example:
- code1
- code2
- code3
carrier:
description: The ids of carrier. Optional if standardCarrierCodes is provided.
type: array
items:
type: integer
example:
- 1
- 2
- 3
standardCarrierCodes:
description: The standard codes of carrier.
type: array
items:
type: string
example:
- code1
- code2
- code3
policyNumber:
description: The policy number to search for. Searches both written policies and AMS-synced policies.
type: string
example: POL-2024-001
ServiceTicketCreateRequest:
description: Service ticket creation request model
required:
- customerId
- workflowId
- workflowStageId
- subject
- categoryId
- priorityId
properties:
customerId:
description: Customer ID
type: integer
workflowId:
description: Pipeline ID
type: integer
workflowStageId:
description: Stage ID
type: integer
csr:
description: CSR ID
type: integer
assignmentGroupId:
description: Assignment Group ID. When 0, the ticket is round-robin assigned to all CSRs.
type: integer
otherCsrs:
description: Array of other CSR/Producer IDs
type: array
items:
type: integer
subject:
description: Service ticket summary
type: string
policyIds:
description: Array of policy IDs
type: array
items:
type: integer
bizBookIds:
description: Array of AMS policy IDs
type: array
items:
type: integer
description:
description: Service ticket description
type: string
priorityId:
description: Priority ID
type: integer
categoryId:
description: Category ID
type: integer
dueDate:
description: 'Due date (format: YYYY-MM-DD)'
type: string
example: '2024-12-31'
customFields:
description: A list of custom fields. If the field value is date type, use format MM/dd/YYYY.
type: array
items:
$ref: '#/components/schemas/CustomField'
tagNames:
description: Tag names, can be multiple string seperated by ;
type: string
type: object
ServiceTicketDetail:
description: Service Ticket object
properties:
id:
description: The id of service ticket
type: integer
agencyId:
description: The id of agency
type: integer
householdId:
description: The id of household
type: integer
workflowId:
description: The id of pipeline
type: integer
workflowStageId:
description: The id of pipeline stage
type: integer
status:
description: The status of service ticket
type: integer
example: 0=remove; 2=completed; 1=active;
statusDesc:
description: The status description of service ticket
type: string
example: Open, Deleted, Completed
csr:
description: The id of CSR
type: integer
enterStageTS:
description: The timestamp when enter a stage
type: integer
example: 1727158695
enrolled:
description: Whether enroll automation
type: integer
createDate:
description: The create date of this ticket
type: string
example: '2021-08-01'
createdBy:
description: The id of agent
type: integer
modifyDate:
description: Modify date of this ticket
type: string
example: '2021-08-01 23:23:23'
modifiedBy:
description: The id of agent
type: integer
categoryId:
description: Service ticket category
type: integer
example: 0 = all;
priorityId:
description: Service ticket priority
type: integer
example: 0 is all
subject:
description: The subject of this ticket
type: string
serviceDesc:
description: The description of this ticket
type: string
dueDate:
description: Due date
type: integer
completeDate:
description: Complete date
type: string
resolutionId:
description: Resolution Id
type: integer
resolutionDesc:
description: Resolution description
type: string
lastActivityDate:
description: Last Activity date
type: string
example: '2019-01-01 01:01:01'
vendor:
description: Vendor Name
type: string
source:
description: Source
type: string
responseMinutes:
description: Response minutes
type: integer
example: 1
emailThreadId:
description: Email thread's id
type: integer
name:
description: Household name
type: string
workflowName:
description: The pipeline name
type: string
workflowStageName:
description: Name of pipeline stage
type: string
phone:
description: Phone of household
type: string
email:
description: Email of household
type: string
csrFirstname:
description: CSR firstname
type: string
csrLastname:
description: CSR lastname
type: string
categoryName:
description: Service ticket category name
type: string
priorityName:
description: Service ticket priority name
type: string
householdFirstname:
description: Household firstname
type: string
householdMiddlename:
description: Household middlename
type: string
householdLastname:
description: Household lastname
type: string
otherProducers:
description: Other producers information
type: array
items:
properties:
otherProducerId:
description: Other producer ID
type: integer
otherProducerFirstName:
description: Other producer first name
type: string
otherProducerLastName:
description: Other producer last name
type: string
type: object
customFields:
description: A list of custom fields
type: array
items:
$ref: '#/components/schemas/CustomField'
type: object
CustomField:
description: Custom Field
properties:
fieldName:
description: 'Field name. Reference to: https://app.agencyzoom.com/openapi/#tag/Configuration-and-Settings/operation/getCustomFieldDefs'
type: string
example: cf1
fieldValue:
description: Field value. Except multiple options, all data types will have single value
type: array
items:
type: string
example: string1
type: object
SearchServiceTicketResponse:
description: Search Threads Result
allOf:
- $ref: '#/components/schemas/BaseSearchResponse'
- properties:
serviceTickets:
description: A list of serviceTickets
type: array
items:
$ref: '#/components/schemas/ServiceTicketDetail'
totalCount:
description: Total service tickets
type: integer
securitySchemes:
bearer:
type: http
bearerFormat: JWT
scheme: bearer
x-provenance:
method: harvested
publisher: AgencyZoom
source: https://app.agencyzoom.com/openapi/agencyzoom.yaml
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)