Every API here is available over the APIs.io API and to AI agents over MCP.
{
"openapi": "3.0.1",
"info": {
"title": "Digital BOP API",
"description": "Digital BOP API allows users to create and edit Businessowners Policy (BOP) quotes",
"version": "1.0"
},
"servers": [
{
"url": "https://gateway.amtrustgroup.com/digital-bop"
},
{
"url": "https://prod-apim-gw.amtrustservices.com/digital-bop"
}
],
"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": "c06a30939799",
"timeStamp": "2026-07-23T11:04:42.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": "9fe42ed125cd",
"timeStamp": "2026-07-23T11:04:42.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": "71f8e87007bd",
"timeStamp": "2026-07-23T11:04:42.0000000+00:00",
"httpStatusCode": 200,
"isOk": true,
"_v": "AD"
}
}
}
}
}
}
},
"/api/v1/insured/clearance": {
"post": {
"tags": [
"Insured Clearance"
],
"summary": "Retrieve insured clearance",
"description": "Returns availability of an insured to be quoted, based on name and street address",
"operationId": "post-api-v1-insured-clearance",
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/PostInsuredClearanceRequestDto"
},
"example": {
"name": "BOP insured",
"address": {
"line1": "800 Superior Ave",
"line2": "Suit A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/PostInsuredClearanceRequestDto"
},
"example": {
"name": "BOP insured",
"address": {
"line1": "800 Superior Ave",
"line2": "Suit A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/PostInsuredClearanceRequestDto"
},
"example": {
"name": "BOP insured",
"address": {
"line1": "800 Superior Ave",
"line2": "Suit A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/PostInsuredClearanceRequestDto"
},
"example": {
"name": "BOP insured",
"address": {
"line1": "800 Superior Ave",
"line2": "Suit 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": "ebd364d150d8",
"timeStamp": "2026-07-23T11:04:42.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": "0a69234335a0",
"timeStamp": "2026-07-23T11:04:42.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"
}
}
}
},
"400": {
"description": "Validation error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadRequestErrorIApiResponse"
},
"example": {
"responseId": "004b5d0ad76a",
"timeStamp": "2026-07-23T11:04:42.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"
}
}
}
},
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PostInsuredClearanceResponseDtoIApiResponse"
},
"example": {
"data": {
"isAvailable": true,
"message": "Insured is available for BOP product"
},
"responseId": "39c78b3162f9",
"timeStamp": "2026-07-23T11:04:42.0000000+00:00",
"httpStatusCode": 200,
"isOk": true,
"_v": "AD"
}
}
}
}
}
}
},
"/api/v1/quotes/{quoteId}/locations": {
"post": {
"tags": [
"Location"
],
"summary": "Add location",
"description": "This endpoint adds a location to the quote. Only one location per POST call is accepted",
"operationId": "post-api-v1-quotes-quoteid-locations",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/LocationDto"
},
"example": {
"propertyDeductible": "$500",
"propertyDeductable": null,
"line1": "800 Superior Ave",
"line2": "Suit A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/LocationDto"
},
"example": {
"propertyDeductible": "$500",
"propertyDeductable": null,
"line1": "800 Superior Ave",
"line2": "Suit A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LocationDto"
},
"example": {
"propertyDeductible": "$500",
"propertyDeductable": null,
"line1": "800 Superior Ave",
"line2": "Suit A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/LocationDto"
},
"example": {
"propertyDeductible": "$500",
"propertyDeductable": null,
"line1": "800 Superior Ave",
"line2": "Suit 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": "3196ca14e2f4",
"timeStamp": "2026-07-23T11:04:42.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": "517272e1555c",
"timeStamp": "2026-07-23T11:04:42.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/LocationGetDtoIApiResponse"
},
"example": {
"data": {
"buildings": [],
"id": 1,
"propertyDeductible": "$500",
"line1": "800 Superior Ave",
"line2": "Suit A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
},
"responseId": "08c3ee3a280b",
"timeStamp": "2026-07-23T11:04:42.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": "406f79b62a7b",
"timeStamp": "2026-07-23T11:04:42.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": {
"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": "7d02774616c2",
"timeStamp": "2026-07-23T11:04:42.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": "fd289e0b751d",
"timeStamp": "2026-07-23T11:04:42.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/LocationGetDtoIEnumerableIApiResponse"
},
"example": {
"data": [
{
"buildings": [
{
"id": 1,
"classCode": {
"classCodeId": null,
"classCode": "11011",
"classDescriptionCode": null,
"personalPropertyCoverage": {
"coverageLimit": 1000,
"valuation": "Replacement Cost"
},
"buildingCoverage": {
"coverageLimit": 2000,
"valuation": "Actual Cash Value"
}
},
"annualSales": 10000,
"annualPayroll": null,
"numberOfEmployees": null,
"constructionCategoryCode": 1,
"totalSquareFootage": 1500,
"squareFootageOccupied": 1200,
"totalStories": 13,
"yearBuilt": 1959,
"yearRoofUpdated": 2020,
"yearElectricalUpdated": 2019,
"yearPlumbingUpdated": 2018,
"yearHeatingUpdated": 2019,
"hasCentralStationFireAlarm": true,
"hasCentralStationBurglarAlarm": false,
"isSprinkleredBuilding": true,
"roofType": "ClayTiles",
"highestStoryOccupied": 3
}
],
"id": 1,
"propertyDeductible": null,
"line1": "800 Superior Ave",
"line2": "Suit A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
}
],
"responseId": "f32b95309b2b",
"timeStamp": "2026-07-23T11:04:42.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": "a6dfa728daa7",
"timeStamp": "2026-07-23T11:04:42.0000000+00:00",
"httpStatusCode": 404,
"isOk": false,
"errors": [
{
"httpStatusCode": 404,
"messageCode": "ERR-ItemNotFound",
"title": "Item was not found",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
}
}
}
},
"/api/v1/quotes/{quoteId}/locations/{locationId}": {
"patch": {
"tags": [
"Location"
],
"summary": "Update location",
"description": "Updates existing location information on a quote",
"operationId": "patch-api-v1-quotes-quoteid-locations-locationid",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "locationId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"items": {
"$ref": "#/components/schemas/JsonPatchDocument"
}
},
"example": [
{
"value": "800 Superior Ave",
"path": "/line1",
"op": "replace"
},
{
"value": "Suit A",
"path": "/line2",
"op": "replace"
},
{
"value": "OH",
"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": "4a7bd0034b48",
"timeStamp": "2026-07-23T11:04:42.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": "53b4b573a74a",
"timeStamp": "2026-07-23T11:04:42.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/LocationPatchResponseDtoIApiResponse"
},
"example": {
"data": {
"id": 1,
"propertyDeductible": null,
"line1": "800 Superior Ave",
"line2": "Suit A",
"city": "Cleveland",
"territory": "OH",
"postalCode": "44114"
},
"responseId": "7558a28c540e",
"timeStamp": "2026-07-23T11:04:42.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"
}
}
}
},
"404": {
"description": "Not found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NotFoundErrorIApiResponse"
},
"example": {
"responseId": "d3438e597e07",
"timeStamp": "2026-07-23T11:04:42.0000000+00:00",
"httpStatusCode": 404,
"isOk": false,
"errors": [
{
"httpStatusCode": 404,
"messageCode": "ERR-ItemNotFound",
"title": "Item was not found",
"isOk": false
}
],
"maxErrorIndex": 0,
"_v": "AD"
}
}
}
},
"400": {
"description": "Validation error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadRequestErrorIApiResponse"
},
"example": {
"responseId": "30016deaaa46",
"timeStamp": "2026-07-23T11:04:42.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}/buildings/{buildingId}": {
"patch": {
"tags": [
"Location"
],
"summary": "Update building",
"description": "Updates existing building information under a specific location, on a quote",
"operationId": "patch-api-v1-quotes-quoteid-locations-locationid-buildings-buildingid",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "locationId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "buildingId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"items": {
"$ref": "#/components/schemas/JsonPatchDocument"
}
},
"example": [
{
"value": "10000",
"path": "/annualSales",
"op": "replace"
},
{
"value": "39262",
"path": "/classCode/classCodeId",
"op": "replace"
},
{
"value": "60999",
"path": "/classCode/classCode",
"op": "replace"
},
{
"value": "01",
"path": "/classCode/classDescriptionCode",
"op": "replace"
},
{
"value": "1000",
"path": "/classCode/personalPropertyCoverage/coverageLimit",
"op": "replace"
},
{
"value": "5000",
"path": "/classCode/buildingCoverage/coverageLimit",
"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": "6e13ed56fc0d",
"timeStamp": "2026-07-23T11:04:42.0000000+00:00",
"httpSta
# --- truncated at 32 KB (669 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/amtrust-financial-services/refs/heads/main/openapi/amtrust-financial-services-digital-bop-api-openapi.json