---
title: "Validate agent details"
url: "https://developers.zinnia.com/apis/new-business/versions/b8532e16-b28e-4393-9305-def50b91e40e/operations/validateAgentDetails"
---

> Full API specification: https://developers.zinnia.com/apis/new-business/versions/b8532e16-b28e-4393-9305-def50b91e40e.md

# Validate agent details

`POST` `/bpm/newbusiness/v1/agent-validation`

Operation ID: `validateAgentDetails`

## Header parameters

- `Authorization` (string, required) - This will be passed as Bearer plus "token" as generated by above token API.

## Request body (required)

Content types: `application/json`

## Responses

- `200` - Ok
- `400` - Bad request
- `401` - Authentication failed
- `403` - Access denied
- `404` - Not Found
- `500` - Server error

## OpenAPI definition

```yaml
openapi: 3.1.0
info:
  title: Zinnia New Business API.
  version: 0.9.8
servers:
  - url: https://qa.api.zinnia.io
    description: QA Environment
  - url: https://dev.api.zinnia.io
    description: DEV Environment
  - url: https://uat.api.zinnia.io
    description: UAT Environment
  - url: https://api.zinnia.io
    description: PROD Environment
paths:
  /bpm/newbusiness/v1/agent-validation:
    post:
      tags:
        - New Business Transactions V1
      summary: Validate agent details
      operationId: validateAgentDetails
      parameters:
        - name: Authorization
          required: true
          description: This will be passed as Bearer plus "token" as generated by above
            token API.
          in: header
          schema:
            type: string
          example: Bearer eykjsfjfjasdasdad
      requestBody:
        description: Details required to validate agent
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AgentValidationRequest"
        required: true
      responses:
        "200":
          description: Ok
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AgentValidationSuccessResponse"
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ValidationResponse"
        "401":
          description: Authentication failed
        "403":
          description: Access denied
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AccessDeniedResponse"
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceNotFoundResponse"
        "500":
          description: Server error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ServerErrorResponse"
      security:
        - Auth0: []
security:
  - Auth0: []
components:
  schemas:
    AgentValidationRequest:
      type: object
      properties:
        carrier:
          type: string
          description: client code
        appStartDate:
          type: string
          description: Application start date
          example: 2024-02-07
        appState:
          type: string
          description: application state
          example: AL
        productCode:
          type: string
          description: product code
        agents:
          type: array
          items:
            $ref: "#/components/schemas/Agent"
      required:
        - carrier
        - appStartDate
        - appState
        - productCode
    AgentValidationSuccessResponse:
      type: object
      properties:
        status:
          type: string
          example: IGO or NIGO
        validationResult:
          type: array
          items:
            $ref: "#/components/schemas/ValidationResult"
    ValidationResponse:
      type: object
      properties:
        status:
          type: string
          example: FAILED
        timestamp:
          type: string
          format: date-time
        message:
          type: string
          example: Bad Request
        error:
          type: array
          items:
            type: string
            example: Mandatory attribute label missing
    AccessDeniedResponse:
      type: object
      properties:
        timestamp:
          type: string
          format: date-time
        message:
          type: string
          example: "User is not authorized for the carrier : CarrierName_1"
    ResourceNotFoundResponse:
      type: object
      properties:
        timestamp:
          type: string
          format: date-time
        message:
          type: string
          example: Resource not found
        error:
          type: array
          items:
            type: string
            example: Resource not found for provided input
    ServerErrorResponse:
      type: object
      properties:
        timestamp:
          type: string
          format: date-time
        message:
          type: string
          example: Failed to process request
    Agent:
      type: object
      properties:
        firstName:
          type: string
          description: First Name of the party
          example: Thomas
        lastName:
          type: string
          description: Last Name of the the party
          example: Lawrence
        middleName:
          type: string
          description: Middle name of the party
        name:
          type: string
          description: Full name of the party.
          example: Thomas Lawrence
        externalId:
          type: string
          description: Agent External id
          example: PG000001
        agentDistributorChannel:
          type: string
          description: Agent Distribution Channel
          example: CAS
        licenseNumber:
          type: string
          description: Agent license Number
          example: "19584368"
        brokerName:
          type: string
          description: Name of broker firm
          example: ABC Company
        brokerExternalid:
          type: string
          description: Broker External Id
          example: "12324234"
        taxIdType:
          type: string
          enum:
            - P
            - C
          description: Type of Tax Id. P means Individual and C means Corporate
          example: P
        taxId:
          type: string
          description: Agent tax Id
          example: "123456789"
        npn:
          type: string
          description: NPN of the agent
          example: "1223435346"
        parentNpn:
          type: string
          description: Parent entity NPN number
          example: "1242353455"
        dateOfTrust:
          type: string
          format: date
          description: Date of trust
        parentTaxId:
          type: string
          description: Parent taxId
          example: "1242353455"
        type:
          type: string
          enum:
            - Agent
            - Primary Writing Agent
            - Additional Writing Agent
            - Primary Servicing Agent
            - Additional Servicing Agent
            - General Agent
        solicitingServiceIndicator:
          type: boolean
          description: if the agent is servicing agent send the flag as True else false
          example: true
        agentPercent:
          type: number
          description: Agent percent
          example: 100
        classification:
          type: string
          enum:
            - Individual
            - Business
            - Trust
            - Corporation
            - Partnership
            - Other
            - Group of Individuals
            - Estate
          description: Party classification
          example: Individual
      required:
        - classification
        - firstName
        - lastName
        - externalId
        - brokerName
        - licenseNumber
        - taxId
        - agentDistributorChannel
        - solicitingServiceIndicator
        - agentPercent
    ValidationResult:
      type: object
      properties:
        errorCode:
          type: string
          example: EM.035
        error:
          type: string
          example: 1.) Add Transmittal Task. 2.) Pend Case 5 days.
        resolution:
          type: string
          example: Transmittal to licensing - agent needs to complete product training and
            LOB updated
  securitySchemes:
    Auth0:
      type: openIdConnect
      openIdConnectUrl: https://login.dev.zinnia.com/.well-known/openid-configuration
      x-kong-security-openid-connect:
        config:
          run_on_preflight: true
          scopes_claim:
            - https://dev.api.zinnia.io/permissions
          audience_claim:
            - aud
          audience_required:
            - https://dev.api.zinnia.io
          client_id:
            - client_id
          auth_methods:
            - bearer
        enabled: true
        protocols:
          - grpc
          - grpcs
          - http
          - https
```
