openapi-client-generator 0.1.9

Generates a client library based on an OpenAPI spec.
allOf:
  - $ref: ../lob_base.yml
  - type: object

    required:
      - id
      - address_line1
      - address_city
      - address_state
      - address_zip

    anyOf:
      - title: address obj with `name` defined
        required:
          - name
      - title: address obj with `company` defined
        required:
          - company

    properties:
      id:
        $ref: "../../../shared/attributes/model_ids/adr_id.yml"

      object:
        type: string
        description: Value is resource type.
        enum:
          - address
        default: address

      description:
        $ref: "../../../shared/attributes/resource_description.yml"

      name:
        type: string
        description: >
          Either `name` or `company` is required,
          you may also add both. Must be no longer than 40 characters.
          If both `name` and `company` are provided,
          they will be printed on two separate lines above the rest of the address.
        maxLength: 40
        nullable: true

      company:
        type: string
        description: >
          Either `name` or `company` is required,
          you may also add both. Must be no longer than 40 characters.
          If both `name` and `company` are provided,
          they will be printed on two separate lines above the rest of the address.
          This field can be used for any secondary recipient information which is
          not part of the actual mailing address (Company Name, Department,
          Attention Line, etc).
        maxLength: 40
        nullable: true

      phone:
        type: string
        description: Must be no longer than 40 characters.
        maxLength: 40
        nullable: true

      email:
        type: string
        description: Must be no longer than 100 characters.
        maxLength: 100
        nullable: true

      address_line1:
        type: string
        description: The primary number, street name, and directional information.
        maxLength: 64

      address_line2:
        type: string
        description: An optional field containing any information which can't fit into line 1.
        maxLength: 64
        nullable: true

      address_city:
        type: string
        maxLength: 200

      address_state:
        type: string
        description: 2 letter state short-name code
        pattern: "^[a-zA-Z]{2}$"

      address_zip:
        type: string
        description: >
          Must follow the ZIP format of `12345` or
          ZIP+4 format of `12345-1234`.
        pattern: '^\d{5}(-\d{4})?$'

      address_country:
        type: string
        enum:
          - UNITED STATES
        description: Full name of country
        minLength: 13
        maxLength: 13

      metadata:
        $ref: "../../../shared/models/metadata.yml"

      recipient_moved:
        type: boolean
        description: >
          Only returned for accounts on certain
          <a href="https://dashboard.lob.com/#/settings/editions">Print
          &amp; Mail Editions</a>. Value is `true` if the address was
          altered because the recipient filed for a <a href="#ncoa">National Change
          of Address (NCOA)</a>, `false` if the NCOA check was run but
          no altered address was found, and `null` if the NCOA check
          was not run. The NCOA check does not happen for non-US addresses, for
          non-deliverable US addresses, or for addresses created before the NCOA
          feature was added to your account.
        nullable: true

    example:
      id: adr_e68217bd744d65c8
      description: Harry - Office
      name: HARRY ZHANG
      company: LOB
      phone: "5555555555"
      email: harry@lob.com
      address_line1: 210 KING ST STE 6100
      address_line2:
      address_city: SAN FRANCISCO
      address_state: CA
      address_zip: 94107-1741
      address_country: UNITED STATES
      metadata: {}
      recipient_moved: false
      date_created: "2019-08-12T00:16:00.361Z"
      date_modified: "2019-08-12T00:16:00.361Z"
      object: address