Every API here is available over the APIs.io API and to AI agents over MCP.
{
"openapi": "3.0.1",
"info": {
"title": "Digital E&S API",
"description": "Digital E&S API allows users to create and edit Excess and Surplus (E&S) quotes.",
"version": "1.0"
},
"servers": [
{
"url": "https://gateway.amtrustgroup.com/digital-es"
},
{
"url": "https://prod-apim-gw.amtrustservices.com/digital-es"
}
],
"paths": {
"/api/v1/agent-contacts": {
"get": {
"tags": [
"Agent Contacts"
],
"summary": "Retrieve all agent contacts",
"description": "Returns all agent contact IDs, names, and emails linked to the agency authenticated",
"operationId": "get-api-v1-agent-contacts",
"responses": {
"401": {
"description": "Bad or expired token. To resolve this error, generate a new or refreshed token.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UnauthorizedErrorIApiResponse"
},
"example": {
"responseId": "abf7b1f84ab4",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 401,
"isOk": false,
"errors": [
{
"httpStatusCode": 401,
"messageCode": "ERR-NOTAUTHORIZED",
"title": "Bearer token is not authorized",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"403": {
"description": "The authenticated user or client does not have required permissions to complete this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ForbiddenErrorIApiResponse"
},
"example": {
"responseId": "3fa374ce063f",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 403,
"isOk": false,
"errors": [
{
"httpStatusCode": 403,
"messageCode": "ERR-FORBIDDEN",
"title": "The token provided does not have permissions for the requested action",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AgentContactDtoIEnumerableIApiResponse"
},
"example": {
"data": [
{
"id": 1,
"name": "George Washington",
"email": "gwashington@uspresident.gov"
},
{
"id": 2,
"name": "John Adams",
"email": "jadams@uspresident.gov"
},
{
"id": 1,
"name": "Thomas Jefferson",
"email": "tjefferson@uspresident.gov"
}
],
"responseId": "7092a31f115e",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 200,
"isOk": true,
"_v": "AD"
}
}
}
}
}
}
},
"/api/v1/quotes/{quoteId}/locations": {
"post": {
"tags": [
"Location"
],
"summary": "Add location",
"description": "Adds a location and optional class codes to the quote specified <br>\r\n Only one location per POST call is accepted, but multiple class codes can be sent in a single call, under a single location",
"operationId": "post-api-v1-quotes-quoteid-locations",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"minimum": 1.0,
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/LocationDto"
},
"example": {
"classCodes": [
{
"classCode": 15061,
"exposure": 75000
},
{
"classCode": 43840,
"exposure": 75000
},
{
"classCode": 44311,
"exposure": 10000
}
],
"locationScheduleOnFile": false,
"line1": "800 Superior Ave",
"line2": "Suite A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/LocationDto"
},
"example": {
"classCodes": [
{
"classCode": 15061,
"exposure": 75000
},
{
"classCode": 43840,
"exposure": 75000
},
{
"classCode": 44311,
"exposure": 10000
}
],
"locationScheduleOnFile": false,
"line1": "800 Superior Ave",
"line2": "Suite A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LocationDto"
},
"example": {
"classCodes": [
{
"classCode": 15061,
"exposure": 75000
},
{
"classCode": 43840,
"exposure": 75000
},
{
"classCode": 44311,
"exposure": 10000
}
],
"locationScheduleOnFile": false,
"line1": "800 Superior Ave",
"line2": "Suite A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/LocationDto"
},
"example": {
"classCodes": [
{
"classCode": 15061,
"exposure": 75000
},
{
"classCode": 43840,
"exposure": 75000
},
{
"classCode": 44311,
"exposure": 10000
}
],
"locationScheduleOnFile": false,
"line1": "800 Superior Ave",
"line2": "Suite A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
}
}
},
"responses": {
"401": {
"description": "Bad or expired token. To resolve this error, generate a new or refreshed token.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UnauthorizedErrorIApiResponse"
},
"example": {
"responseId": "1a8c5bd4142b",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 401,
"isOk": false,
"errors": [
{
"httpStatusCode": 401,
"messageCode": "ERR-NOTAUTHORIZED",
"title": "Bearer token is not authorized",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"403": {
"description": "The authenticated user or client does not have required permissions to complete this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ForbiddenErrorIApiResponse"
},
"example": {
"responseId": "3a89b7496dda",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 403,
"isOk": false,
"errors": [
{
"httpStatusCode": 403,
"messageCode": "ERR-FORBIDDEN",
"title": "The token provided does not have permissions for the requested action",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LocationGetResponseIApiResponse"
},
"example": {
"data": {
"id": 0,
"line1": "800 Superior Ave",
"line2": "Suite A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114",
"classCodes": [
{
"classCode": 15061,
"exposure": 75000
},
{
"classCode": 43840,
"exposure": 75000
},
{
"classCode": 44311,
"exposure": 10000
}
],
"hail": null,
"wildfire": null,
"locationScheduleOnFile": false
},
"responseId": "c61df093157e",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 201,
"isOk": true,
"messages": [
{
"httpStatusCode": 200,
"messageCode": "Deeplink",
"title": "https://devk8s.amtrustgroup.com/usertest/webapp-nexus/AccountManagement/24786342",
"isOk": true
}
],
"maxMessageIndex": 0,
"_v": "AD"
}
}
}
},
"400": {
"description": "Validation error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadRequestErrorIApiResponse"
},
"example": {
"responseId": "830d33d3c084",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 400,
"isOk": false,
"errors": [
{
"httpStatusCode": 400,
"messageCode": "ERR-ValidationErr",
"title": "Validation Error",
"detail": "Validation detail message",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
}
}
},
"get": {
"tags": [
"Location"
],
"summary": "Retrieve locations",
"description": "Returns all currently saved locations on the quote passed, along with any class codes saved to that location",
"operationId": "get-api-v1-quotes-quoteid-locations",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"minimum": 1.0,
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"401": {
"description": "Bad or expired token. To resolve this error, generate a new or refreshed token.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UnauthorizedErrorIApiResponse"
},
"example": {
"responseId": "fea14b3b8457",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 401,
"isOk": false,
"errors": [
{
"httpStatusCode": 401,
"messageCode": "ERR-NOTAUTHORIZED",
"title": "Bearer token is not authorized",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"403": {
"description": "The authenticated user or client does not have required permissions to complete this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ForbiddenErrorIApiResponse"
},
"example": {
"responseId": "1466f3c612ec",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 403,
"isOk": false,
"errors": [
{
"httpStatusCode": 403,
"messageCode": "ERR-FORBIDDEN",
"title": "The token provided does not have permissions for the requested action",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LocationGetResponseIEnumerableIApiResponse"
},
"example": {
"data": [
{
"id": 0,
"line1": "800 Superior Ave",
"line2": "Suite A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114",
"classCodes": [
{
"classCode": 15061,
"exposure": 75000
},
{
"classCode": 43840,
"exposure": 75000
},
{
"classCode": 44311,
"exposure": 10000
}
],
"hail": null,
"wildfire": null,
"locationScheduleOnFile": false
}
],
"responseId": "11c7be2ef360",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 200,
"isOk": true,
"messages": [
{
"httpStatusCode": 200,
"messageCode": "Deeplink",
"title": "https://devk8s.amtrustgroup.com/usertest/webapp-nexus/AccountManagement/24786342",
"isOk": true
}
],
"maxMessageIndex": 0,
"_v": "AD"
}
}
}
}
}
}
},
"/api/v1/quotes/{quoteId}/locations/{locationId}/class-codes": {
"post": {
"tags": [
"Location"
],
"summary": "Save class code to location",
"description": "Saves class code(s) to specific Location ID passed, under specified quote",
"operationId": "post-api-v1-quotes-quoteid-locations-locationid-class-codes",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"minimum": 1.0,
"type": "integer",
"format": "int32"
}
},
{
"name": "locationId",
"in": "path",
"required": true,
"schema": {
"minimum": 1.0,
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ClassCodeDto"
}
},
"example": [
{
"classCode": 15061,
"exposure": 7500
},
{
"classCode": 43840,
"exposure": 7500
},
{
"classCode": 44311,
"exposure": 10000
}
]
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ClassCodeDto"
}
},
"example": [
{
"classCode": 15061,
"exposure": 7500
},
{
"classCode": 43840,
"exposure": 7500
},
{
"classCode": 44311,
"exposure": 10000
}
]
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ClassCodeDto"
}
},
"example": [
{
"classCode": 15061,
"exposure": 7500
},
{
"classCode": 43840,
"exposure": 7500
},
{
"classCode": 44311,
"exposure": 10000
}
]
},
"application/*+json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ClassCodeDto"
}
},
"example": [
{
"classCode": 15061,
"exposure": 7500
},
{
"classCode": 43840,
"exposure": 7500
},
{
"classCode": 44311,
"exposure": 10000
}
]
}
}
},
"responses": {
"401": {
"description": "Bad or expired token. To resolve this error, generate a new or refreshed token.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UnauthorizedErrorIApiResponse"
},
"example": {
"responseId": "eb3bb02fed50",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 401,
"isOk": false,
"errors": [
{
"httpStatusCode": 401,
"messageCode": "ERR-NOTAUTHORIZED",
"title": "Bearer token is not authorized",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"403": {
"description": "The authenticated user or client does not have required permissions to complete this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ForbiddenErrorIApiResponse"
},
"example": {
"responseId": "a41567899616",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 403,
"isOk": false,
"errors": [
{
"httpStatusCode": 403,
"messageCode": "ERR-FORBIDDEN",
"title": "The token provided does not have permissions for the requested action",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ClassCodeResponseDtoIEnumerableIApiResponse"
},
"example": {
"data": [
{
"classCode": 15061,
"exposure": 7500
},
{
"classCode": 43840,
"exposure": 7500
},
{
"classCode": 15061,
"exposure": 7500
}
],
"responseId": "de61b0b9a5e1",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 201,
"isOk": true,
"messages": [
{
"httpStatusCode": 200,
"messageCode": "Deeplink",
"title": "https://devk8s.amtrustgroup.com/usertest/webapp-nexus/AccountManagement/24786342",
"isOk": true
}
],
"maxMessageIndex": 0,
"_v": "AD"
}
}
}
},
"400": {
"description": "Validation error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadRequestErrorIApiResponse"
},
"example": {
"responseId": "732c9e1208a7",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 400,
"isOk": false,
"errors": [
{
"httpStatusCode": 400,
"messageCode": "ERR-ValidationErr",
"title": "Validation Error",
"detail": "Validation detail message",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
}
}
}
},
"/api/v1/quotes/{quoteId}/locations/{locationId}": {
"get": {
"tags": [
"Location"
],
"summary": "Retrieve location",
"description": "Returns specific location information tied to ID passed",
"operationId": "get-api-v1-quotes-quoteid-locations-locationid",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"minimum": 1.0,
"type": "integer",
"format": "int32"
}
},
{
"name": "locationId",
"in": "path",
"required": true,
"schema": {
"minimum": 1.0,
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"401": {
"description": "Bad or expired token. To resolve this error, generate a new or refreshed token.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UnauthorizedErrorIApiResponse"
},
"example": {
"responseId": "29e689f91cf9",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 401,
"isOk": false,
"errors": [
{
"httpStatusCode": 401,
"messageCode": "ERR-NOTAUTHORIZED",
"title": "Bearer token is not authorized",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"403": {
"description": "The authenticated user or client does not have required permissions to complete this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ForbiddenErrorIApiResponse"
},
"example": {
"responseId": "e5ee3da8258e",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 403,
"isOk": false,
"errors": [
{
"httpStatusCode": 403,
"messageCode": "ERR-FORBIDDEN",
"title": "The token provided does not have permissions for the requested action",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LocationGetResponseIApiResponse"
},
"example": {
"data": {
"id": 0,
"line1": "800 Superior Ave",
"line2": "Suite A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114",
"classCodes": [
{
"classCode": 15061,
"exposure": 75000
},
{
"classCode": 43840,
"exposure": 75000
},
{
"classCode": 44311,
"exposure": 10000
}
],
"hail": null,
"wildfire": null,
"locationScheduleOnFile": false
},
"responseId": "a88cf4ae1860",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 201,
"isOk": true,
"messages": [
{
"httpStatusCode": 200,
"messageCode": "Deeplink",
"title": "https://devk8s.amtrustgroup.com/usertest/webapp-nexus/AccountManagement/24786342",
"isOk": true
}
],
"maxMessageIndex": 0,
"_v": "AD"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NotFoundErrorIApiResponse"
},
"example": {
"responseId": "337a0f0edd2b",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 404,
"isOk": false,
"errors": [
{
"httpStatusCode": 404,
"messageCode": "ERR-ItemNotFound",
"title": "Item was not found",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
}
}
},
"patch": {
"tags": [
"Location"
],
"summary": "Update location",
"description": "Updates specific location information",
"operationId": "patch-api-v1-quotes-quoteid-locations-locationid",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"minimum": 1.0,
"type": "integer",
"format": "int32"
}
},
{
"name": "locationId",
"in": "path",
"required": true,
"schema": {
"minimum": 1.0,
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/JsonPatchDocument"
},
"example": [
{
"value": "800 Superior Ave",
"path": "/line1",
"op": "replace"
},
{
"value": "Suit A",
"path": "/line2",
"op": "replace"
},
{
"value": "Suit A",
"path": "/territory",
"op": "replace"
}
]
}
}
},
"responses": {
"401": {
"description": "Bad or expired token. To resolve this error, generate a new or refreshed token.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UnauthorizedErrorIApiResponse"
},
"example": {
"responseId": "f24fa9ec308d",
"timeStamp": "2026-07-15T11:55:58.0000000+00:00",
"httpStatusCode": 401,
"isOk": false,
"errors": [
{
"httpStatusCode": 401,
"messageCod
# --- truncated at 32 KB (276 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/amtrust-financial-services/refs/heads/main/openapi/amtrust-financial-services-digital-es-api-openapi.json