---
title: "SubmissionProducer"
url: "https://apipartners.mosaicinsurance.com/apis/trident-ap-is-beta/versions/018fd555-bac2-494f-872b-ac47b74f1e75/schemas/SubmissionProducer"
---

> Full API specification: https://apipartners.mosaicinsurance.com/apis/trident-ap-is-beta/versions/018fd555-bac2-494f-872b-ac47b74f1e75.md

# SubmissionProducer

Producer (broker) reference used on a submission. `id` identifies the producer (broker company). Optionally include a `contactliaison` block to attach, create, or update the broker contact liaison recorded on the policy.

## OpenAPI definition

```yaml
openapi: 3.0.1
info:
  title: Trident APIs
  version: uat
servers:
  - url: https://apinonprod.mosaicinsurance.com
    description: Generated server url
components:
  schemas:
    ContactLiaisonSubmission:
      type: object
      description: >-
        Broker contact liaison recorded under the producer for this submission.
        The platform resolves this block one of three ways:


        1. **Update by key** — supply `contactliaisonid.id` (an existing liaison
        key). That liaison is updated in place with the `email`, `phoneNo`, and
        `mobilePhone` values provided; the platform targets it directly without
        searching by name. `firstName` + `lastName` must also be supplied.

        2. **Update by name match** — omit `contactliaisonid`. When `firstName`
        + `lastName` match an existing liaison under the producer, that liaison
        is updated in place.

        3. **Create** — omit `contactliaisonid` and supply a `firstName` +
        `lastName` that do not match any existing liaison; a new liaison is
        created.


        `firstName` and `lastName` are required in all three cases.
      required:
        - firstName
        - lastName
      properties:
        contactliaisonid:
          $ref: "#/components/schemas/IdReference"
          description: Optional. Existing contact liaison key (id only). When supplied,
            the platform attaches that liaison and all individual fields become
            optional. Omit to create or update by name match.
        firstName:
          type: string
          description: Required when creating a new contact (Mode B). First name of the
            broker contact person.
          example: John
        lastName:
          type: string
          description: Required when creating a new contact (Mode B). Last name of the
            broker contact person.
          example: Smith
        email:
          type: string
          format: email
          description: Required when creating a new contact (Mode B). Email address of the
            liaison.
          example: Yes@example.com
        phoneNo:
          type: string
          description: Required when creating a new contact (Mode B). Office/landline
            phone number of the liaison.
          example: "9000000000"
        mobilePhone:
          type: string
          description: Optional. Mobile / cell phone number of the liaison.
          example: 899 898 09
        faxNo:
          type: string
          description: Optional. Fax number of the liaison.
          example: "45"
        state:
          type: object
          description: 'Optional. State where the liaison is located. Always send as code,
            e.g. { "code": "UT" }.'
          properties:
            code:
              type: string
              example: UT
          example:
            code: UT
        city:
          type: object
          description: 'Optional. City where the liaison is located. Always send as
            description, e.g. { "description": "Green Bay" }.'
          properties:
            description:
              type: string
              example: Green Bay
          example:
            description: Green Bay
        region:
          type: object
          description: 'Optional. Region of the liaison. Always send as description, e.g.
            { "description": "GBR" }.'
          properties:
            description:
              type: string
              example: GBR
          example:
            description: GBR
      example:
        firstName: John
        lastName: Smith
        email: Yes@example.com
        phoneNo: "9000000000"
        mobilePhone: 899 898 09
        faxNo: "45"
        state:
          code: UT
        city:
          description: Green Bay
        region:
          description: GBR
        contactliaisonid:
          id: "1234"
    IdReference:
      type: object
      description: Reference to a lookup-backed entity identified by `id` (the XFI
        lookup id, environment-specific).
      required:
        - id
      additionalProperties: false
      properties:
        id:
          type: string
          description: XFI lookup id — the canonical identifier (environment-specific).
          example: "260"
    SubmissionProducer:
      type: object
      description: Producer (broker) reference used on a submission. `id` identifies
        the producer (broker company). Optionally include a `contactliaison`
        block to attach, create, or update the broker contact liaison recorded
        on the policy.
      required:
        - id
      properties:
        id:
          type: string
          description: "**Required.** XFI contact key of the producer (broker company).
            `id` only."
          example: "2000556"
        contactliaison:
          $ref: "#/components/schemas/ContactLiaisonSubmission"
          description: Optional. Broker contact liaison to record on the policy. See
            ContactLiaisonSubmission for the attach/create/update behavior.
```
