openapi: 3.2.0 info: title: Digital BOP Payments 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 security: - apiKeyHeader: [] - apiKeyQuery: [] tags: - name: Payments paths: /api/v1/policies/{policyId}/balance-summary: get: tags: - Payments summary: Balance-Summary description: 'Retrieve the current balance on a policy Please be aware that if "CanMakePayment" is false, the current balance will reflect $0.00 Policy.' operationId: get-api-v1-policies-policyid-balance-summary parameters: - name: policyId 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: 173fc390cc2f 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: 3dbf7b8e774e 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/BalanceSummaryResponseIApiResponse' example: data: quoteId: 12345 policyId: 6789 currentDueAmount: 0.3 remainingDueAmount: 5.7 canMakePayment: true responseId: 0f3488bf1c64 timeStamp: '2026-07-23T11:04:42.0000000+00:00' httpStatusCode: 200 isOk: true _v: AD '400': description: Validation error content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorIApiResponse' example: responseId: 21076e4744e6 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/policies/{policyId}/payment: post: tags: - Payments summary: Make a payment description: 'This endpoint is used to make a payment on the policy. The Balance Summary endpoint can be used to retrieve the current balance on the policy. Payment sent must be equal to the current amount due. __Please note:__ Payment may take up to 24 hours to reflect on the account' operationId: post-api-v1-policies-policyid-payment parameters: - name: policyId in: path required: true schema: type: integer format: int32 requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PaymentPostModel' example: quoteId: 0 sendEmail: true payerInfo: firstName: string lastName: string address: line1: string line2: string city: string state: string zip: string country: 225 = US countryName: string emailAddress: string phone: string eCheck: accountNumber: string routingNumber: string financialInstitution: string accountType: 1 = Checking creditCard: creditCardNumber: string cardType: 0 = Visa cvv: string expirationMonth: 0 expirationYear: 0 paymentSystemInfo: id: 0 name: string lob: string type: string payrollMonth: string amount: currency: string total: 0 taxAmount: currency: string total: 0 feeAmount: currency: string total: 0 paymentDescription: string application/json: schema: $ref: '#/components/schemas/PaymentPostModel' example: quoteId: 0 sendEmail: true payerInfo: firstName: string lastName: string address: line1: string line2: string city: string state: string zip: string country: 225 = US countryName: string emailAddress: string phone: string eCheck: accountNumber: string routingNumber: string financialInstitution: string accountType: 1 = Checking creditCard: creditCardNumber: string cardType: 0 = Visa cvv: string expirationMonth: 0 expirationYear: 0 paymentSystemInfo: id: 0 name: string lob: string type: string payrollMonth: string amount: currency: string total: 0 taxAmount: currency: string total: 0 feeAmount: currency: string total: 0 paymentDescription: string text/json: schema: $ref: '#/components/schemas/PaymentPostModel' example: quoteId: 0 sendEmail: true payerInfo: firstName: string lastName: string address: line1: string line2: string city: string state: string zip: string country: 225 = US countryName: string emailAddress: string phone: string eCheck: accountNumber: string routingNumber: string financialInstitution: string accountType: 1 = Checking creditCard: creditCardNumber: string cardType: 0 = Visa cvv: string expirationMonth: 0 expirationYear: 0 paymentSystemInfo: id: 0 name: string lob: string type: string payrollMonth: string amount: currency: string total: 0 taxAmount: currency: string total: 0 feeAmount: currency: string total: 0 paymentDescription: string application/*+json: schema: $ref: '#/components/schemas/PaymentPostModel' example: quoteId: 0 sendEmail: true payerInfo: firstName: string lastName: string address: line1: string line2: string city: string state: string zip: string country: 225 = US countryName: string emailAddress: string phone: string eCheck: accountNumber: string routingNumber: string financialInstitution: string accountType: 1 = Checking creditCard: creditCardNumber: string cardType: 0 = Visa cvv: string expirationMonth: 0 expirationYear: 0 paymentSystemInfo: id: 0 name: string lob: string type: string payrollMonth: string amount: currency: string total: 0 taxAmount: currency: string total: 0 feeAmount: currency: string total: 0 paymentDescription: string 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: ec19c0fad678 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: 27483277e068 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/PaymentResponseIApiResponse' example: data: amountProcessed: 4554.25 remainingPolicyPayment: 245.75 transactionId: 7a6ec09e4016 responseId: d343bb0b5a46 timeStamp: '2026-07-23T11:04:42.0000000+00:00' httpStatusCode: 200 isOk: true _v: AD '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/NotFoundErrorIApiResponse' example: responseId: ab833a11acce 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: a51d77449456 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 components: schemas: ForbiddenErrorIApiResponse: type: object properties: id: type: - string - 'null' timestamp: type: string format: date-time correlationID: type: - string - 'null' httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messages: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' errors: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' paging: $ref: '#/components/schemas/ApiPaging' maxMsgIndex: type: integer format: int32 readOnly: true maxErrIndex: type: integer format: int32 readOnly: true isOk: type: boolean apiResponseVersion: type: - string - 'null' readOnly: true data: $ref: '#/components/schemas/ForbiddenError' additionalProperties: false BadRequestErrorIApiResponse: type: object properties: id: type: - string - 'null' timestamp: type: string format: date-time correlationID: type: - string - 'null' httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messages: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' errors: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' paging: $ref: '#/components/schemas/ApiPaging' maxMsgIndex: type: integer format: int32 readOnly: true maxErrIndex: type: integer format: int32 readOnly: true isOk: type: boolean apiResponseVersion: type: - string - 'null' readOnly: true data: $ref: '#/components/schemas/BadRequestError' additionalProperties: false ApiPageResponse: type: object properties: first: type: - string - 'null' previous: type: - string - 'null' current: type: - string - 'null' next: type: - string - 'null' last: type: - string - 'null' pageSize: type: - integer - 'null' format: int32 count: type: - integer - 'null' format: int32 additionalProperties: false BadRequestError: type: object properties: id: type: - integer - 'null' format: int32 httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messageType: enum: - 0 = Info - 1 = Error type: integer format: int32 internal: type: - string - 'null' reference: type: - string - 'null' exception: $ref: '#/components/schemas/LogException' needsSanitization: type: boolean readOnly: true httpStatusCode: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 readOnly: true messageCode: type: - string - 'null' readOnly: true title: type: - string - 'null' readOnly: true detail: type: - string - 'null' readOnly: true isOk: type: boolean readOnly: true additionalProperties: false NotFoundError: type: object properties: id: type: - integer - 'null' format: int32 httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messageType: enum: - 0 = Info - 1 = Error type: integer format: int32 detail: type: - string - 'null' internal: type: - string - 'null' reference: type: - string - 'null' exception: $ref: '#/components/schemas/LogException' needsSanitization: type: boolean readOnly: true httpStatusCode: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 readOnly: true messageCode: type: - string - 'null' readOnly: true title: type: - string - 'null' readOnly: true isOk: type: boolean readOnly: true additionalProperties: false LogException: type: object properties: exceptionId: type: string format: uuid module: type: - string - 'null' class: type: - string - 'null' targetSite: type: - string - 'null' httpWebEventCode: type: - integer - 'null' format: int32 httpStatusValue: type: - integer - 'null' format: int32 httpStatusCode: type: - string - 'null' httpHtmlMessage: type: - string - 'null' properties: type: - object - 'null' additionalProperties: type: - string - 'null' innerException: $ref: '#/components/schemas/LogException' message: type: - string - 'null' source: type: - string - 'null' stackTrace: type: - string - 'null' helpLink: type: - string - 'null' method: type: - string - 'null' data: type: - object - 'null' additionalProperties: type: - string - 'null' errorCode: type: - string - 'null' exceptionType: type: - string - 'null' baseException: $ref: '#/components/schemas/LogException' additionalProperties: false BalanceSummaryResponseIApiResponse: type: object properties: id: type: - string - 'null' timestamp: type: string format: date-time correlationID: type: - string - 'null' httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messages: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' errors: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' paging: $ref: '#/components/schemas/ApiPaging' maxMsgIndex: type: integer format: int32 readOnly: true maxErrIndex: type: integer format: int32 readOnly: true isOk: type: boolean apiResponseVersion: type: - string - 'null' readOnly: true data: $ref: '#/components/schemas/BalanceSummaryResponse' additionalProperties: false ApiPageRequest: type: object properties: skip: type: integer format: int32 take: type: integer format: int32 count: type: boolean additionalProperties: false CreditCard: type: object properties: creditCardNumber: type: - string - 'null' cardType: enum: - 0 = Visa - 1 = Mastercard - 2 = Discover - 3 = Amex - 4 = DinersClub - 5 = Valid - 6 = JCB - -1 = Invalid type: integer format: int32 cvv: type: - string - 'null' expirationMonth: type: integer format: int32 expirationYear: type: integer format: int32 additionalProperties: false NotFoundErrorIApiResponse: type: object properties: id: type: - string - 'null' timestamp: type: string format: date-time correlationID: type: - string - 'null' httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messages: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' errors: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' paging: $ref: '#/components/schemas/ApiPaging' maxMsgIndex: type: integer format: int32 readOnly: true maxErrIndex: type: integer format: int32 readOnly: true isOk: type: boolean apiResponseVersion: type: - string - 'null' readOnly: true data: $ref: '#/components/schemas/NotFoundError' additionalProperties: false ECheck: type: object properties: accountNumber: type: - string - 'null' routingNumber: type: - string - 'null' financialInstitution: type: - string - 'null' accountType: enum: - 1 = Checking - 2 = Savings type: integer format: int32 additionalProperties: false ApiPaging: type: object properties: request: $ref: '#/components/schemas/ApiPageRequest' response: $ref: '#/components/schemas/ApiPageResponse' additionalProperties: false UnauthorizedErrorIApiResponse: type: object properties: id: type: - string - 'null' timestamp: type: string format: date-time correlationID: type: - string - 'null' httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messages: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' errors: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' paging: $ref: '#/components/schemas/ApiPaging' maxMsgIndex: type: integer format: int32 readOnly: true maxErrIndex: type: integer format: int32 readOnly: true isOk: type: boolean apiResponseVersion: type: - string - 'null' readOnly: true data: $ref: '#/components/schemas/UnauthorizedError' additionalProperties: false PayerInfoRequest: required: - emailAddress type: object properties: firstName: type: - string - 'null' lastName: type: - string - 'null' address: $ref: '#/components/schemas/PaymentAddress' emailAddress: minLength: 1 type: string phone: type: - string - 'null' additionalProperties: false ForbiddenError: type: object properties: id: type: - integer - 'null' format: int32 httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messageType: enum: - 0 = Info - 1 = Error type: integer format: int32 detail: type: - string - 'null' internal: type: - string - 'null' reference: type: - string - 'null' exception: $ref: '#/components/schemas/LogException' needsSanitization: type: boolean readOnly: true httpStatusCode: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 readOnly: true messageCode: type: - string - 'null' readOnly: true title: type: - string - 'null' readOnly: true isOk: type: boolean readOnly: true additionalProperties: false PaymentAddress: required: - city - country - line1 - state - zip type: object properties: line1: minLength: 1 type: string line2: type: - string - 'null' city: minLength: 1 type: string state: minLength: 1 type: string zip: minLength: 1 type: string country: enum: - 225 = US type: integer format: int32 countryName: type: - string - 'null' additionalProperties: false ApiMessage: type: object properties: id: type: - integer - 'null' format: int32 httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messageCode: type: - string - 'null' messageType: enum: - 0 = Info - 1 = Error type: integer format: int32 title: type: - string - 'null' detail: type: - string - 'null' internal: type: - string - 'null' reference: type: - string - 'null' exception: $ref: '#/components/schemas/LogException' isOk: type: boolean needsSanitization: type: boolean readOnly: true additionalProperties: false PaymentResponseIApiResponse: type: object properties: id: type: - string - 'null' timestamp: type: string format: date-time correlationID: type: - string - 'null' httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messages: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' errors: type: - array - 'null' items: $ref: '#/components/schemas/ApiMessage' paging: $ref: '#/components/schemas/ApiPaging' maxMsgIndex: type: integer format: int32 readOnly: true maxErrIndex: type: integer format: int32 readOnly: true isOk: type: boolean apiResponseVersion: type: - string - 'null' readOnly: true data: $ref: '#/components/schemas/PaymentResponse' additionalProperties: false UnauthorizedError: type: object properties: id: type: - integer - 'null' format: int32 httpStatus: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 messageType: enum: - 0 = Info - 1 = Error type: integer format: int32 detail: type: - string - 'null' internal: type: - string - 'null' reference: type: - string - 'null' exception: $ref: '#/components/schemas/LogException' needsSanitization: type: boolean readOnly: true httpStatusCode: enum: - 100 = Continue - 101 = SwitchingProtocols - 102 = Processing - 103 = EarlyHints - 200 = OK - 201 = Created - 202 = Accepted - 203 = NonAuthoritativeInformation - 204 = NoContent - 205 = ResetContent - 206 = PartialContent - 207 = MultiStatus - 208 = AlreadyReported - 226 = IMUsed - 300 = MultipleChoices - 300 = Ambiguous - 301 = MovedPermanently - 301 = Moved - 302 = Found - 302 = Redirect - 303 = SeeOther - 303 = RedirectMethod - 304 = NotModified - 305 = UseProxy - 306 = Unused - 307 = TemporaryRedirect - 307 = RedirectKeepVerb - 308 = PermanentRedirect - 400 = BadRequest - 401 = Unauthorized - 402 = PaymentRequired - 403 = Forbidden - 404 = NotFound - 405 = MethodNotAllowed - 406 = NotAcceptable - 407 = ProxyAuthenticationRequired - 408 = RequestTimeout - 409 = Conflict - 410 = Gone - 411 = LengthRequired - 412 = PreconditionFailed - 413 = RequestEntityTooLarge - 414 = RequestUriTooLong - 415 = UnsupportedMediaType - 416 = RequestedRangeNotSatisfiable - 417 = ExpectationFailed - 421 = MisdirectedRequest - 422 = UnprocessableEntity - 422 = UnprocessableContent - 423 = Locked - 424 = FailedDependency - 426 = UpgradeRequired - 428 = PreconditionRequired - 429 = TooManyRequests - 431 = RequestHeaderFieldsTooLarge - 451 = UnavailableForLegalReasons - 500 = InternalServerError - 501 = NotImplemented - 502 = BadGateway - 503 = ServiceUnavailable - 504 = GatewayTimeout - 505 = HttpVersionNotSupported - 506 = VariantAlsoNegotiates - 507 = InsufficientStorage - 508 = LoopDetected - 510 = NotExtended - 511 = NetworkAuthenticationRequired type: integer format: int32 readOnly: true messageCode: type: - string - 'null' readOnly: true title: type: - string - 'null' readOnly: true isOk: type: boolean readOnly: true additionalProperties: false BalanceSummaryResponse: type: object properties: quoteId: type: integer format: int32 policyId: type: integer format: int32 currentDueAmount: type: number format: double remainingDueAmount: type: number format: double canMakePayment: type: boolean additionalProperties: false PaymentResponse: type: object properties: amountProcessed: type: number format: double remainingPolicyPayment: type: number format: double transactionId: type: - string - 'null' additionalProperties: false PaymentPostModel: required: - payerInfo - paymentSystemInfo - quoteId - sendEmail type: object properties: quoteId: type: integer format: int32 sendEmail: type: boolean payerInfo: $ref: '#/components/schemas/PayerInfoRequest' eCheck: $ref: '#/components/schemas/ECheck' creditCard: $ref: '#/components/schemas/CreditCard' paymentSystemInfo: $ref: '#/components/schemas/PaymentSystemInfo' additionalProperties: false PaymentSystemInfo: required: - amount - paymentDescription type: object properties: id: type: integer format: int32 name: type: - string - 'null' lob: type: - string - 'null' type: type: - string - 'null' payrollMonth: type: - string - 'null' amount: $ref: '#/components/schemas/BasePaymentAmount' taxAmount: $ref: '#/components/schemas/BasePaymentAmount' feeAmount: $ref: '#/components/schemas/BasePaymentAmount' paymentDescription: minLength: 1 type: string additionalProperties: false BasePaymentAmount: type: object properties: currency: type: - string - 'null' total: type: number format: double additionalProperties: false securitySchemes: apiKeyHeader: type: apiKey name: subscriber_id in: header apiKeyQuery: type: apiKey name: subscription-key in: query