{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/quickbooks/json-schema/quickbooks-employeerequest-schema.json",
  "title": "employeerequest",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/quickbooks-employee-api-openapi.yml#/components/schemas/employeerequest",
  "type": "object",
  "properties": {
    "GivenName": {
      "type": "string",
      "description": "Given name or Family name of a person. At least one of\nGivenName or FamilyName attributes is required.",
      "x-intuit-required": "Optional",
      "x-intuit-filterable": true,
      "x-intuit-sortable": true
    },
    "PrimaryAddr": {
      "allOf": [
        {
          "$ref": "#/$defs/physicaladdress"
        }
      ],
      "description": "Represents the physical street address for this employee. If QuickBooks Payroll is enabled for the company, the following PhysicalAddress fields are required:\nCity, maximum of 255 chars\n\nCountrySubDivisionCode, maximum of 255 chars\n\nPostalCode\n\n Required when QuickBooks Payroll is enabled. If a physical address is updated from within the transaction object, the QuickBooks Online API flows individual address components differently into the Line elements of the transaction response then when the transaction was first created:Line1 and Line2 elements are populated with the customer name and company name.\nOriginal Line1 through Line 5 contents, City, SubDivisionCode, and PostalCode flow into Line3 through Line5as a free format strings.",
      "x-intuit-required": "Conditionally required"
    },
    "FamilyName": {
      "type": "string",
      "description": "Family name or the last name of the person. At least one of\nGivenName or FamilyName attributes is required.",
      "x-intuit-required": "Optional",
      "x-intuit-filterable": true,
      "x-intuit-sortable": true
    }
  },
  "$defs": {
    "physicaladdress": {
      "type": "object",
      "title": "physicaladdress",
      "properties": {
        "City": {
          "type": "string",
          "description": "City name.",
          "x-intuit-required": "Optional"
        },
        "Country": {
          "type": "string",
          "description": "For international addresses, the request can be an ISO alpha-3 code or the full name of the country. The response for update and read operations returns ISO alpha-3 country codes only.",
          "x-intuit-required": "Optional"
        },
        "Line5": {
          "type": "string",
          "description": "Fifth line of the address.",
          "x-intuit-required": "Optional"
        },
        "Line4": {
          "type": "string",
          "description": "Fourth line of the address.",
          "x-intuit-required": "Optional"
        },
        "Line3": {
          "type": "string",
          "description": "Third line of the address.",
          "x-intuit-required": "Optional"
        },
        "Line2": {
          "type": "string",
          "description": "Second line of the address.",
          "x-intuit-required": "Optional"
        },
        "Line1": {
          "type": "string",
          "description": "First line of the address.",
          "x-intuit-required": "Optional"
        },
        "PostalCode": {
          "type": "string",
          "description": "Postal code. For example, zip code for USA and Canada",
          "x-intuit-required": "Optional"
        },
        "CountrySubDivisionCode": {
          "type": "string",
          "description": "Region within a country. For example, state name for USA, province name for Canada.",
          "x-intuit-required": "Optional"
        },
        "Id": {
          "type": "string",
          "description": "Unique identifier of the QuickBooks object for the address, autoincremented when the address is changed. This is an internal value included for backwards compatibility and can be ignored.",
          "x-intuit-required": "Required for update"
        }
      }
    }
  }
}