Skip to main content
POST
Add a producer
Creates a producer and associates them with one or more of your entities. Every id in entityIds must be inside your subtree; one that is not returns 404 and nothing is written.

NPN behaviour

  • With an npn, an existing producer holding that NPN is reused and associated with your entities rather than duplicated. This is what you want: NPN is the producer’s identity across the industry.
  • Without an npn, a new producer record is always created. There is no name matching, deliberately β€” two people can share a name, and merging them silently would be worse than creating a second record you can reconcile.

Sensitive fields

ssn is optional, encrypted at rest, and never returned by any endpoint on this API. dateOfBirth is stored and likewise never returned.

Re-running this request

Associating a producer with an entity they are already on returns 409. Use Assign a Producer to Entities to add entities to an existing producer β€” that one skips entities already covered instead of failing. Send an Idempotency-Key header. See Idempotency.

Headers

idempotency-key
string

UUID to ensure idempotent request processing

Example:

"550e8400-e29b-41d4-a716-446655440000"

x-idempotency-key
string

Alternative UUID header for idempotent request processing

Example:

"550e8400-e29b-41d4-a716-446655440000"

Body

application/json
firstName
string
required

Given name

Example:

"Jon"

lastName
string
required

Surname

Example:

"Doe"

entityIds
array[]
required

The entities to associate this producer with. Every id must be one of yours; a single foreign id fails the whole request with 404 rather than creating the associations it could.

Example:
middleName
string

Middle name

Example:

"R"

npn
string

National Producer Number. When supplied, an existing producer with this NPN is reused rather than duplicated. When omitted, a new producer is always created.

Example:

"7654321"

ssn
string

Social Security Number, with or without hyphens. Encrypted at rest and never returned by any endpoint: reads expose the last four digits only. Required by NIPR for licence renewal submissions, so a producer added without one cannot be submitted for renewal until it is supplied.

Example:

"123-45-6789"

dateOfBirth
string

ISO 8601 date of birth. Required by NIPR alongside the SSN for renewal submissions.

Example:

"1985-04-12"

email
string

Contact email for this producer at your agency

Example:

"example@test.com"

tel
string

Contact phone number

Example:

"+12155550100"

position
string

Job title at your agency

Example:

"Producer"

drlpStates
enum<string>[]

States where this producer is a Designated Responsible Licensed Producer. Applied to every association created by this request.

Available options:
AL,
AK,
AZ,
AR,
CA,
CO,
CT,
DE,
FL,
GA,
HI,
ID,
IL,
IN,
IA,
KS,
KY,
LA,
ME,
MD,
MA,
MI,
MN,
MS,
MO,
MT,
NE,
NV,
NH,
NJ,
NM,
NY,
NC,
ND,
OH,
OK,
OR,
PA,
RI,
SC,
SD,
TN,
TX,
UT,
VT,
VA,
WA,
WV,
WI,
WY,
GU,
PR,
VI,
DC
Example:

Response

The producer that was created

data
object
required
requestId
string
required

Unique request identifier

Example:

"dev-2c5e7cf2-9acf-4c8c-ab2f-b81f39d775a8"

timestamp
string
required

Response timestamp

Example:

"2025-11-12T20:49:03.293Z"