---
title: "ContractAssignmentV2"
url: "https://developer.agentsync.io/apis/contracting-hierarchies-api/versions/40f58935-396e-4da4-8f47-1587041e1b16/schemas/ContractAssignmentV2"
---

> Full API specification: https://developer.agentsync.io/apis/contracting-hierarchies-api/versions/40f58935-396e-4da4-8f47-1587041e1b16.md

# ContractAssignmentV2

A producer's assignment to a carrier product, with its commission level and status.

## OpenAPI definition

```yaml
openapi: 3.1.0
info:
  title: AgentSync Contracting & Hierarchies API
  version: v1.7.6
servers:
  - url: https://api.sandbox.agentsync.io/contracting
    description: Sandbox
  - url: https://api.agentsync.io/contracting
    description: Production
components:
  schemas:
    UplineContractAssignmentV2:
      type: object
      description: >
        Identity of the assignment's upline, surfaced as part of the caller's
        own hierarchy.
      properties:
        id:
          type: string
          format: uuid
          description: The upline contract assignment id.
        displayNumber:
          type: string
          description: The upline assignment's human-readable number.
        firmName:
          type: string
          description: The upline's firm name, if the upline is a firm.
        personName:
          type: string
          description: The upline's person name, if the upline is an individual producer.
      required:
        - id
    ContractAssignmentV2:
      type: object
      description: A producer's assignment to a carrier product, with its commission
        level and status.
      properties:
        id:
          type: string
          format: uuid
          description: The contract assignment id.
        contractId:
          type: string
          format: uuid
          description: The parent contract id.
        agencyOrganizationId:
          type: string
          format: uuid
          description: The agency organization the assignment is sent from.
        carrierOrganizationId:
          type: string
          format: uuid
          description: The carrier organization the assignment is sent to.
        personId:
          type: string
          format: uuid
          description: The individual producer the assignment is on behalf of.
        firmId:
          type: string
          format: uuid
          description: The firm the assignment is on behalf of, if any.
        productId:
          type: string
          format: uuid
        productName:
          type: string
          description: The product name (inlined so no follow-up lookup is needed).
        commissionLevelId:
          type: string
          format: uuid
        commissionLevelName:
          type: string
          description: The commission level name (inlined).
        assignmentStatusId:
          type: string
          format: uuid
        assignmentStatusName:
          type: string
          description: The human-readable assignment status (the event names this
            `assignmentStatus`).
        displayNumber:
          type: string
          description: The human-readable assignment number.
        writingNumber:
          type: string
        effectiveOn:
          type: string
          format: date
          description: The effective date (yyyy-MM-dd).
        requestedEffectiveOn:
          type: string
          format: date
          description: The requested effective date (yyyy-MM-dd).
        expiresOn:
          type: string
          format: date
          description: The expiration date (yyyy-MM-dd). Renamed from the entity's `expiry`.
        responsiblePartyId:
          type: string
          format: uuid
        responsibleUplineFirmId:
          type: string
          format: uuid
        responsiblePartyStartOn:
          type: string
          format: date
        responsiblePartyEndOn:
          type: string
          format: date
        referralCodes:
          type: array
          items:
            type: string
        debitBalance:
          type: number
        externalNotes:
          type: string
        uplineContractAssignment:
          $ref: "#/components/schemas/UplineContractAssignmentV2"
        createdAt:
          type: string
          format: date-time
          description: RFC3339 UTC creation timestamp.
        updatedAt:
          type: string
          format: date-time
          description: RFC3339 UTC last-modified timestamp.
        userDefined1:
          type: string
        userDefined2:
          type: string
        userDefined3:
          type: string
        userDefined4:
          type: string
        userDefined5:
          type: string
        userDefined6:
          type: string
        userDefined7:
          type: string
        userDefined8:
          type: string
        userDefined9:
          type: string
        userDefined10:
          type: string
      required:
        - id
        - contractId
        - agencyOrganizationId
        - carrierOrganizationId
        - personId
        - productId
        - commissionLevelId
        - displayNumber
```
