{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/AddressBookDTO",
  "title": "AddressBookDTO",
  "required": [
    "name",
    "parentType"
  ],
  "type": "object",
  "properties": {
    "organizationId": {
      "maxLength": 36,
      "minLength": 32,
      "pattern": "^[0-9a-fA-F]{8}-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{12}$",
      "type": "string",
      "description": "ID of the contact center organization. It is required to define for the following operations - All bulk save operations",
      "format": "uuid",
      "example": "f53c8b54-46ca-43f6-ba05-08426a46e23d"
    },
    "id": {
      "type": "string",
      "description": "ID of this contact center resource. It should not be specified when creating a new resource. However, it is mandatory when updating a resource.",
      "example": "93912f11-6017-404b-bf14-5331890b1797"
    },
    "version": {
      "type": "integer",
      "description": "The version of this resource. For a newly created resource, it will be 0 unless specified otherwise.",
      "format": "int32",
      "example": 1
    },
    "name": {
      "maxLength": 80,
      "minLength": 0,
      "pattern": "^[a-zA-Z0-9._\\-\\s]*$",
      "type": "string",
      "description": "A name for the address book.",
      "example": "HNI-Customers"
    },
    "description": {
      "maxLength": 255,
      "minLength": 0,
      "type": "string",
      "description": "A short description indicating the context of the address book.",
      "example": "Phone number of all HNI customers"
    },
    "parentType": {
      "type": "string",
      "description": "A parent type which indicates whether the address book is accessible for all sites or a specific site.\n Once created, parentType cannot be modified.",
      "example": "ORGANIZATION",
      "enum": [
        "ORGANIZATION",
        "SITE"
      ]
    },
    "siteId": {
      "type": "string",
      "description": "The specific site id where the address book is accessible.",
      "example": "c7b3665d-b386-4267-8397-1331f2a26018"
    },
    "createdTime": {
      "type": "integer",
      "description": "Creation time(in epoch millis) of this resource.",
      "format": "int64",
      "readOnly": true,
      "example": 1617536244000
    },
    "lastUpdatedTime": {
      "type": "integer",
      "description": "Time(in epoch millis) when this resource was last updated.",
      "format": "int64",
      "readOnly": true,
      "example": 1617536244000
    }
  }
}