CreateContactRequest

Body for creating a new contact. The kind field selects the shape; member contacts derive their snapshot payload from upstream rows while custom contacts take it from the request body verbatim. For kind=member: provide user_id and location_id (required) and optionally phone_id. The snapshot is composed from the linked rows; any snapshot fields sent in the body are ignored except for disclose, which is a contact-level policy and is taken from the request. For kind=custom: provide the snapshot fields directly. first_name, last_name, street1, city, and country_code are required; the rest are optional.

  • kind
    Type: string · contact.ContactKindenum
    required

    Contact shape: "member" or "custom".

    values
    • member = KindMember
    • custom = KindCustom
  • user_id
    Type: string

    Identifier of the user backing a member contact. Required for member, ignored for custom.

  • location_id
    Type: string

    Identifier of the organization location backing a member contact. Required for member, ignored for custom.

  • phone_id
    Type: string

    Identifier of the personal phone backing a member contact. Optional; when absent the contact's phone snapshot is composed from the linked location's office phone. Ignored for custom contacts.

  • first_name
    Type: string
    max length:  
    128

    Registrant first name. Required for custom; ignored for member (replaced by the upstream user's first name).

  • last_name
    Type: string
    max length:  
    128

    Registrant last name. Required for custom; ignored for member.

  • org_name
    Type: string
    max length:  
    256

    Registrant organization name. Optional on custom; ignored on member (replaced by the org's legal name).

  • email
    Type: string
    max length:  
    320

    Registrant email address. Optional on custom; ignored on member (replaced by the upstream user's email).

  • phone
    Type: string
    max length:  
    32

    Registrant phone in E.164 form (leading "+" required). Optional on custom; ignored on member (composed from phone or location).

  • fax
    Type: string
    max length:  
    32

    Registrant fax in E.164 form. Optional on custom; ignored on member.

  • street1
    Type: string
    max length:  
    256

    First line of the street address. Required for custom; ignored on member.

  • street2
    Type: string
    max length:  
    256

    Second line of the street address. Optional.

  • city
    Type: string
    max length:  
    128

    City or locality. Required for custom; ignored on member.

  • region
    Type: string
    max length:  
    128

    Region, state, or province. Optional on custom; ignored on member.

  • postal_code
    Type: string
    max length:  
    32

    Postal or ZIP code. Optional on custom; ignored on member.

  • country_code
    Type: string

    ISO 3166-1 alpha-2 country code. Required for custom; ignored on member. Uppercased after trim.

  • disclose
    Type: boolean

    Per-contact registry-disclosure flag. Optional on both kinds; omit to accept the default of true. Not derived from upstream — operator policy applies on both shapes.