---
updatedAt: 2026-05-19T16:20:43.000Z
agentTools:
  projectIndex: https://docs.gtm.ai/llms.txt
---

# Enrich Contacts

Enrich Contacts can be used to retrieve detailed information about up to 25 individual contact records.
Best practice is to first use the [Search Contacts](ref:searchinterface_searchcontact) to identify the records 
you want to enrich, and then use the Contact IDs as the input to specify the correct records. If your workflow does not 
support a two stage retrieval using both Search and Enrich endpoints, you can query the Contact Enrich Endpoint with more 
extensive input information and our system will provide the best match available to the input. The more details you provide 
the more likely we are to provide the correct match. 

Once you have indicated which records you want to enrich, you must then select which fields you want to return for the 
records using the `outputFields` list. For more details about all of the available output fields you can select, please 
use the [Lookup Enrich](ref:lookupenrichinterface_lookupenrich) endpoint (`filter[entity]=contact` and `filter[fieldType]=output`). 
This will provide a description of each available field, as well as whether or not your account has access to this field. 
If you do not have access to a field that you need, please contact your ZoomInfo Account Manager for purchasing options. 

You can also use the `requiredFields` list to indicate which fields must be available for output in order to return
a record. For example, if you include `jobTitle` in `requiredFields` we will not return a contact for which we do not 
have a job title recorded, even if it is a perfect match for the input criteria you provided. 

Each record returned by this endpoint will charge a credit from your account, unless that record is already under management 
(see [Credit Usage and Limits Guide](doc:credit-usage-and-limits) for more details). If we fail to find the record and return 
“No match” or if we return an error code a credit will not be charged.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "title": "Data API V1",
    "version": "1.0",
    "contact": {
      "name": "ZoomInfo Customer Support",
      "email": "help@zoominfo.com"
    },
    "description": "The Data API"
  },
  "tags": [
    {
      "name": "Enrich"
    }
  ],
  "paths": {
    "/data/v1/contacts/enrich": {
      "post": {
        "operationId": "EnrichInterface_enrichContact",
        "summary": "Enrich Contacts",
        "description": "Enrich Contacts can be used to retrieve detailed information about up to 25 individual contact records.\nBest practice is to first use the [Search Contacts](https://docs.gtm.ai/zoominfoenterprise/reference/searchinterface_searchcontact) to identify the records \nyou want to enrich, and then use the Contact IDs as the input to specify the correct records. If your workflow does not \nsupport a two stage retrieval using both Search and Enrich endpoints, you can query the Contact Enrich Endpoint with more \nextensive input information and our system will provide the best match available to the input. The more details you provide \nthe more likely we are to provide the correct match. \n\nOnce you have indicated which records you want to enrich, you must then select which fields you want to return for the \nrecords using the `outputFields` list. For more details about all of the available output fields you can select, please \nuse the [Lookup Enrich](https://docs.gtm.ai/zoominfoenterprise/reference/lookupenrichinterface_lookupenrich) endpoint (`filter[entity]=contact` and `filter[fieldType]=output`). \nThis will provide a description of each available field, as well as whether or not your account has access to this field. \nIf you do not have access to a field that you need, please contact your ZoomInfo Account Manager for purchasing options. \n\nYou can also use the `requiredFields` list to indicate which fields must be available for output in order to return\na record. For example, if you include `jobTitle` in `requiredFields` we will not return a contact for which we do not \nhave a job title recorded, even if it is a perfect match for the input criteria you provided. \n\nEach record returned by this endpoint will charge a credit from your account, unless that record is already under management \n(see [Credit Usage and Limits Guide](https://docs.gtm.ai/zoominfoenterprise/docs/credit-usage-and-limits) for more details). If we fail to find the record and return \n“No match” or if we return an error code a credit will not be charged.",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactEnrichResponse"
                },
                "examples": {
                  "Enrich Contact by Person ID Using Output Fields and Required Fields for a Full Match": {
                    "summary": "Enrich Contact by Person ID Using Output Fields and Required Fields for a Full Match",
                    "description": "This example demonstrates how to enrich a single contact using a unique personId. The request specifies a set of outputFields to return, including email, company name, and movement status, while ensuring that required fields like id and company name are always included. This allows for precise and efficient contact data retrieval. Up to 25 contacts can be enriched in a single request.",
                    "value": {
                      "data": [
                        {
                          "attributes": {
                            "company": {
                              "id": 346572700,
                              "name": "ZoomInfo"
                            },
                            "email": "henry@zoominfo.com",
                            "hasCanadianEmail": false,
                            "personHasMoved": "No"
                          },
                          "id": "344589814",
                          "meta": {
                            "input": {
                              "personId": 4191419698
                            },
                            "matchStatus": "FULL_MATCH"
                          },
                          "type": "Contact"
                        }
                      ]
                    }
                  },
                  "Enrich Contact by Person ID Using Various Company Output Fields and Required Fields for a Full Match": {
                    "summary": "Enrich Contact by Person ID Using Various Company Output Fields and Required Fields for a Full Match",
                    "description": "This example demonstrates how to enrich a single contact using a unique personId. The request specifies a set of outputFields related to the contact's company to return, including company name, company logo, and company revenue, while ensuring that required fields like id and company name are always included.",
                    "value": {
                      "data": [
                        {
                          "attributes": {
                            "company": {
                              "city": "Vancouver",
                              "country": "United States",
                              "description": "ZoomInfo is the go-to-market platform that helps businesses find, acquire, and grow customers. ZoomInfo is the most comprehensive source of business information on people and companies in the world. ZoomInfo is used by sales and marketing professionals to find leads, recruiters to uncover talent and by business professionals to find detailed information on people and companies.",
                              "employeeCount": 3508,
                              "employeeRange": "1,000 - 5,000",
                              "fax": "(617) 507-8187",
                              "id": 344589814,
                              "industries": [
                                "Software",
                                "Business Intelligence (BI) Software"
                              ],
                              "logo": "https://res.cloudinary.com/zoominfo-com/image/upload/w_100,h_100,c_fit/zoominfo.com",
                              "naicsCodes": [
                                {
                                  "id": "51",
                                  "name": "Information"
                                },
                                {
                                  "id": "516",
                                  "name": "Broadcasting and Content Providers"
                                },
                                {
                                  "id": "5162",
                                  "name": "Media Streaming Distribution Services, Social Networks, and Other Media Networks and Content Providers"
                                },
                                {
                                  "id": "51621",
                                  "name": "Media Streaming Distribution Services, Social Networks, and Other Media Networks and Content Providers"
                                },
                                {
                                  "id": "517",
                                  "name": "Telecommunications"
                                },
                                {
                                  "id": "5171",
                                  "name": "Wired and Wireless Telecommunications (except Satellite)"
                                },
                                {
                                  "id": "51711",
                                  "name": "Wired and Wireless Telecommunications Carriers (except Satellite)"
                                },
                                {
                                  "id": "54",
                                  "name": "Professional, Scientific, and Technical Services"
                                },
                                {
                                  "id": "541",
                                  "name": "Professional, Scientific, and Technical Services"
                                },
                                {
                                  "id": "5415",
                                  "name": "Computer Systems Design and Related Services"
                                },
                                {
                                  "id": "54151",
                                  "name": "Computer Systems Design and Related Services"
                                },
                                {
                                  "id": "541511",
                                  "name": "Custom Computer Programming Services"
                                },
                                {
                                  "id": "511",
                                  "name": "Publishing Industries (except Internet)"
                                },
                                {
                                  "id": "5112",
                                  "name": "Software Publishers"
                                },
                                {
                                  "id": "51121",
                                  "name": "Software Publishers"
                                },
                                {
                                  "id": "511210",
                                  "name": "Software Publishers"
                                }
                              ],
                              "name": "ZoomInfo",
                              "phone": "(866) 904-9666",
                              "primaryIndustry": [
                                "Software",
                                "Business Intelligence (BI) Software"
                              ],
                              "revenue": "$1.2 Billion",
                              "revenueNumeric": 1214300000,
                              "revenueRange": "$1 bil. - $5 bil.",
                              "sicCodes": [
                                {
                                  "id": "73",
                                  "name": "Business Services"
                                },
                                {
                                  "id": "737",
                                  "name": "Computer Programming, Data Processing, And Other Computer Related Services"
                                },
                                {
                                  "id": "7372",
                                  "name": "Prepackaged Software"
                                },
                                {
                                  "id": "738",
                                  "name": "Miscellaneous Business Services"
                                },
                                {
                                  "id": "7389",
                                  "name": "Business Services, Not Elsewhere Classified"
                                },
                                {
                                  "id": "7371",
                                  "name": "Computer Programming Services"
                                }
                              ],
                              "socialMediaUrls": [
                                {
                                  "followerCount": "128080",
                                  "type": "LINKED_IN",
                                  "url": "http://www.linkedin.com/company/zoominfo"
                                },
                                {
                                  "followerCount": "14415",
                                  "type": "TWITTER",
                                  "url": "http://www.twitter.com/zoominfo"
                                },
                                {
                                  "type": "FACEBOOK",
                                  "url": "http://www.facebook.com/109325735758217"
                                }
                              ],
                              "state": "Washington",
                              "street": "805 Broadway St Ste 900",
                              "ticker": "NASDAQ:GTM",
                              "type": "PUBLIC",
                              "website": "www.zoominfo.com",
                              "zipCode": "98660"
                            },
                            "email": "henry@zoominfo.com",
                            "hasCanadianEmail": false,
                            "personHasMoved": "No"
                          },
                          "id": "344589814",
                          "meta": {
                            "input": {
                              "personId": 4191419698
                            },
                            "matchStatus": "FULL_MATCH"
                          },
                          "type": "Contact"
                        }
                      ]
                    }
                  },
                  "Enrich Multiple Contacts Using Required Fields and Output Fields for a Full Match.": {
                    "summary": "Enrich Multiple Contacts Using Required Fields and Output Fields for a Full Match.",
                    "description": "This example demonstrates how to enrich multiple contacts by using a mix of identifiers—including a combination of firstName, lastName, and companyName, as well as a direct personId. The request specifies a wide range of outputFields, such as email, job title, address, company details, and regulatory flags. This allows for detailed enrichment of each contact. The response returns enriched data for each matched contact, and up to 25 contacts can be processed in a single request.",
                    "value": {
                      "data": [
                        {
                          "attributes": {
                            "company": {
                              "id": 346572700,
                              "name": "ZoomInfo",
                              "employeeCount": 3508,
                              "primaryIndustry": [
                                "Software",
                                "Business Intelligence Software"
                              ]
                            },
                            "country": "United States",
                            "email": "henry@zoominfo.com",
                            "hasCanadianEmail": false,
                            "jobTitle": "Chief Executive Officer & Board Member",
                            "directPhoneDoNotCall": false,
                            "directPhoneAlt": [
                              {
                                "value": "+1-360-555-1234",
                                "source": "waterfall"
                              }
                            ],
                            "mobilePhoneAlt": [
                              {
                                "value": "+1-360-555-5678",
                                "source": "waterfall"
                              }
                            ],
                            "emailAlt": [
                              {
                                "value": "henry.schuck@zoominfo.com",
                                "source": "waterfall"
                              }
                            ],
                            "withinCalifornia": false,
                            "withinCanada": false,
                            "withinEu": false,
                            "metroArea": "Boston",
                            "personHasMoved": "No",
                            "region": "Massachusetts",
                            "state": "Massachusetts",
                            "street": "404 Wyman St",
                            "zipCode": "02451"
                          },
                          "id": "344589814",
                          "meta": {
                            "input": {
                              "companyName": "zoominfo",
                              "firstName": "henry",
                              "lastName": "schuck"
                            },
                            "matchStatus": "FULL_MATCH"
                          },
                          "type": "Contact"
                        },
                        {
                          "attributes": {
                            "city": "Bethesda",
                            "company": {
                              "id": 346572700,
                              "name": "ZoomInfo",
                              "employeeCount": 3508,
                              "primaryIndustry": [
                                "Software",
                                "Business Intelligence Software"
                              ]
                            },
                            "country": "United States",
                            "directPhoneDoNotCall": false,
                            "email": "filip@discoverorg.com",
                            "firstName": "Filip",
                            "hasCanadianEmail": false,
                            "jobTitle": "Chief Technology Officer",
                            "managementLevel": [
                              "C-Level"
                            ],
                            "metroArea": "Washington",
                            "personHasMoved": "Uncertain",
                            "region": "Maryland",
                            "state": "Maryland",
                            "street": "7700 Old Georgetown Rd 5th Fl",
                            "zipCode": "20814"
                          },
                          "id": "234343645",
                          "meta": {
                            "input": {
                              "personId": 4191419698
                            },
                            "matchStatus": "FULL_MATCH"
                          },
                          "type": "Contact"
                        }
                      ]
                    }
                  },
                  "Enrich Contact by Person ID Using Output Fields for a No Match": {
                    "summary": "Enrich Contact by Person ID Using Output Fields for a No Match",
                    "description": "This example demonstrates how to enrich a single contact using a unique personId. The request specifies a set of outputFields to return, including email, company name, and movement status. The response is a no match response for the contact criteria requested.",
                    "value": {
                      "data": [
                        {
                          "id": "0",
                          "meta": {
                            "input": {
                              "personId": 0
                            },
                            "matchStatus": "NO_MATCH"
                          },
                          "type": "NoMatch"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/ZoomInfo.Core.Foundations.ErrorResponseModel"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/ZoomInfo.Core.Foundations.ErrorResponseModel"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/ZoomInfo.Core.Foundations.ErrorResponseModel"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/ZoomInfo.Core.Foundations.ErrorResponseModel"
                }
              }
            }
          }
        },
        "tags": [
          "Enrich"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/ContactEnrichRequest"
              },
              "examples": {
                "Enrich Contact by Person ID Using Output Fields and Required Fields for a Full Match": {
                  "summary": "Enrich Contact by Person ID Using Output Fields and Required Fields for a Full Match",
                  "description": "This example demonstrates how to enrich a single contact using a unique personId. The request specifies a set of outputFields to return, including email, company name, and movement status, while ensuring that required fields like id and company name are always included. This allows for precise and efficient contact data retrieval. Up to 25 contacts can be enriched in a single request.",
                  "value": {
                    "data": {
                      "attributes": {
                        "matchPersonInput": [
                          {
                            "personId": 4191419698
                          }
                        ],
                        "outputFields": [
                          "id",
                          "email",
                          "personHasMoved",
                          "hasCanadianEmail",
                          "companyName"
                        ],
                        "requiredFields": [
                          "id",
                          "companyName"
                        ]
                      },
                      "type": "ContactEnrich"
                    }
                  }
                },
                "Enrich Contact by Person ID Using Various Company Output Fields and Required Fields for a Full Match": {
                  "summary": "Enrich Contact by Person ID Using Various Company Output Fields and Required Fields for a Full Match",
                  "description": "This example demonstrates how to enrich a single contact using a unique personId. The request specifies a set of outputFields related to the contact's company to return, including company name, company logo, and company revenue, while ensuring that required fields like id and company name are always included.",
                  "value": {
                    "data": {
                      "attributes": {
                        "matchPersonInput": [
                          {
                            "personId": 4191419698
                          }
                        ],
                        "outputFields": [
                          "id",
                          "email",
                          "personHasMoved",
                          "companyName",
                          "companyDescriptionList",
                          "companyPhone",
                          "companyFax",
                          "companyStreet",
                          "companyCity",
                          "companyState",
                          "companyZipCode",
                          "companyCountry",
                          "companyLogo",
                          "companySicCodes",
                          "companyNaicsCodes",
                          "contactAccuracyScore",
                          "companyWebsite",
                          "companyRevenue",
                          "companyRevenueNumeric",
                          "companyEmployeeCount",
                          "companyType",
                          "companyTicker",
                          "companyRanking",
                          "companySocialMediaUrls",
                          "companyPrimaryIndustry",
                          "companyIndustries",
                          "companyRevenueRange",
                          "companyEmployeeRange"
                        ],
                        "requiredFields": [
                          "id",
                          "companyName"
                        ]
                      },
                      "type": "ContactEnrich"
                    }
                  }
                },
                "Enrich Multiple Contacts Using Required Fields and Output Fields for a Full Match.": {
                  "summary": "Enrich Multiple Contacts Using Required Fields and Output Fields for a Full Match.",
                  "description": "This example demonstrates how to enrich multiple contacts by using a mix of identifiers—including a combination of firstName, lastName, and companyName, as well as a direct personId. The request specifies a wide range of outputFields, such as email, job title, address, company details, and regulatory flags. This allows for detailed enrichment of each contact. The response returns enriched data for each matched contact, and up to 25 contacts can be processed in a single request.",
                  "value": {
                    "data": {
                      "attributes": {
                        "matchPersonInput": [
                          {
                            "firstName": "henry",
                            "companyName": "zoominfo",
                            "lastName": "schuck"
                          },
                          {
                            "personId": 4191419698
                          }
                        ],
                        "outputFields": [
                          "id",
                          "email",
                          "personHasMoved",
                          "hasCanadianEmail",
                          "region",
                          "jobTitle",
                          "companyName",
                          "companyId",
                          "managementLevel",
                          "companyPrimaryIndustry",
                          "companyEmployeeCount",
                          "street",
                          "city",
                          "region",
                          "metroArea",
                          "zipCode",
                          "state",
                          "country",
                          "directPhoneDoNotCall",
                          "directPhoneAlt",
                          "mobilePhoneAlt",
                          "emailAlt"
                        ],
                        "requiredFields": [
                          "id",
                          "companyName"
                        ]
                      },
                      "type": "ContactEnrich"
                    }
                  }
                },
                "Enrich Contact by Person ID Using Output Fields for a No Match": {
                  "summary": "Enrich Contact by Person ID Using Output Fields for a No Match",
                  "description": "This example demonstrates how to enrich a single contact using a unique personId. The request specifies a set of outputFields to return, including email, company name, and movement status. The response is a no match response for the contact criteria requested.",
                  "value": {
                    "data": {
                      "attributes": {
                        "matchPersonInput": [
                          {
                            "personId": 0
                          }
                        ],
                        "outputFields": [
                          "id",
                          "email",
                          "personHasMoved",
                          "hasCanadianEmail",
                          "companyName"
                        ]
                      },
                      "type": "ContactEnrich"
                    }
                  }
                }
              }
            }
          },
          "description": "The request body containing contact enrich criteria."
        },
        "security": [
          {
            "OAuth2Auth": [
              "api:data:contact"
            ]
          }
        ],
        "x-additional-content-types": [
          "application/json"
        ],
        "x-api-roles": [
          "fea:zia",
          "fea:api"
        ],
        "x-api-role-requirement": "ANY_REQUIRED"
      }
    }
  },
  "security": [
    {
      "OAuth2Auth": []
    }
  ],
  "components": {
    "schemas": {
      "ZoomInfo.Core.Foundations.ErrorSourceModel": {
        "type": "object",
        "properties": {
          "cookie": {
            "type": "string",
            "description": "Identifies the cookie name that caused the issue"
          },
          "header": {
            "type": "string",
            "description": "Identifies the header name that caused the error"
          },
          "pointer": {
            "type": "string",
            "description": "An RFC 6901 compliant JSON pointer to the entity in the request body that caused the error"
          },
          "parameter": {
            "type": "string",
            "description": "The name of the path or query parameter that caused the error"
          }
        }
      },
      "ZoomInfo.Core.Foundations.ErrorModel": {
        "type": "object",
        "required": [
          "id",
          "code",
          "status"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique id used to identify this specific error instance"
          },
          "code": {
            "type": "string",
            "description": "The error code describing the error category. A full list of error codes can be found in the documentation for each service"
          },
          "detail": {
            "type": "string",
            "description": "Message containing the specific details about this occurrence of the error"
          },
          "source": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ZoomInfo.Core.Foundations.ErrorSourceModel"
              }
            ],
            "description": "An optional object identifying which part of the request caused the error"
          },
          "status": {
            "type": "string",
            "description": "The HTTP status code for the error"
          },
          "title": {
            "type": "string",
            "description": "The error name that describes this type of error"
          }
        },
        "description": "The object describing a specific error from the API"
      },
      "ZoomInfo.Core.Foundations.ErrorResponseModel": {
        "type": "object",
        "required": [
          "errors"
        ],
        "properties": {
          "detail": {
            "type": "string",
            "description": "A high-level detail of the error(s) that occurred during the request"
          },
          "title": {
            "type": "string",
            "description": "A high-level summary of the error(s) detected"
          },
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ZoomInfo.Core.Foundations.ErrorModel"
            },
            "description": "The list of errors raised during the request"
          }
        },
        "description": "The standard error response body model for the ZoomInfo API."
      },
      "JobFunction": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the job function."
          },
          "department": {
            "type": "string",
            "description": "Department associated with the job function."
          }
        },
        "description": "Contact job function at current place of employment."
      },
      "EducationDegree": {
        "type": "object",
        "properties": {
          "degree": {
            "type": "string",
            "description": "Degree type (e.g., Bachelor of Science, Master of Arts, Doctor of Philosophy)."
          },
          "areaOfStudy": {
            "type": "string",
            "description": "Area of study for the degree (e.g., Computer Science, Business Administration, Economics)."
          }
        },
        "description": "Education degree for match"
      },
      "Education": {
        "type": "object",
        "properties": {
          "school": {
            "type": "string",
            "description": "School name."
          },
          "educationDegree": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EducationDegree"
              }
            ],
            "description": "School type (e.g., High School, College, University)."
          }
        },
        "description": "Contact education details."
      },
      "TechSkill": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the technology skill."
          },
          "name": {
            "type": "string",
            "description": "Name of the technology skill."
          }
        },
        "description": "Technology skill identified for a contact."
      },
      "ContactDataWithSource": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The phone number or email address value."
          },
          "source": {
            "type": "string",
            "description": "The source identifier indicating which data source provided this value."
          }
        },
        "description": "Alternative phone number or email with its source identifier."
      },
      "ExternalUrl": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of social media account (e.g., Facebook, Twitter, LinkedIn)."
          },
          "url": {
            "type": "string",
            "description": "URL for the social media account."
          }
        },
        "description": "Social media URLs for the contact (e.g., Facebook, Twitter, LinkedIn)."
      },
      "EmploymentCompany": {
        "type": "object",
        "properties": {
          "companyId": {
            "type": "integer",
            "format": "int64",
            "description": "Unique ZoomInfo identifier for a company."
          },
          "companyName": {
            "type": "string",
            "description": "Company name."
          },
          "companyPhone": {
            "type": "string",
            "description": "Company phone."
          },
          "companyWebsite": {
            "type": "string",
            "description": "Company website URL in http://www.example.com format."
          }
        },
        "description": "Company for match."
      },
      "EmploymentHistory": {
        "type": "object",
        "properties": {
          "jobTitle": {
            "type": "string",
            "description": "Contact title at current place of employment"
          },
          "managementLevel": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact management level"
          },
          "fromDate": {
            "type": "string",
            "format": "date",
            "description": "Start date for this employment. Uses YYYY-MM-DD format."
          },
          "toDate": {
            "type": "string",
            "format": "date",
            "description": "End date for this employment. Uses YYYY-MM-DD format."
          },
          "company": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EmploymentCompany"
              }
            ],
            "description": "Company for employment"
          }
        },
        "description": "Contact employment history"
      },
      "Engagement": {
        "type": "object",
        "properties": {
          "engagementDate": {
            "type": "string",
            "format": "date-time",
            "description": "Date of engagement."
          },
          "engagementType": {
            "type": "string",
            "description": "Type of engagement."
          }
        },
        "description": "Engagement details."
      },
      "SocialMediaUrl": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of social media account. Supported types are Facebook, Twitter (X.com), LinkedIn)."
          },
          "url": {
            "type": "string",
            "description": "URL for the social media account."
          },
          "followerCount": {
            "type": "string",
            "description": "Number of followers for the social media account."
          }
        },
        "description": "Social media information for the company."
      },
      "PrimaryIndustryCode": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the industry code."
          },
          "name": {
            "type": "string",
            "description": "Name of the industry code."
          }
        },
        "description": "Top-level industry for a company along with its code."
      },
      "PrimarySubIndustryCode": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the sub-industry code."
          },
          "name": {
            "type": "string",
            "description": "Name of the sub-industry code."
          }
        },
        "description": "Top-level sub-industry for a company along with its code."
      },
      "IndustryCode": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the industry code."
          },
          "name": {
            "type": "string",
            "description": "Name of the industry code."
          }
        },
        "description": "The industry grouping for the company along with it's codes. A company can have multiple industries."
      },
      "SicCode": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the SIC code."
          },
          "name": {
            "type": "string",
            "description": "Name of the SIC code."
          }
        },
        "description": "The Standard Industrial Classification is a system for classifying industries by a four-digit code."
      },
      "NaicsCode": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the NAICS code."
          },
          "name": {
            "type": "string",
            "description": "Name of the NAICS code."
          }
        },
        "description": "The North American Industry Classification System (NAICS) is the standard used by Federal statistical agencies in classifying business establishments for the purpose of collecting, analyzing, and publishing statistical data related to the U.S. business economy."
      },
      "EmployeeGrowthDataPoint": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "description": "Label for the data point (e.g., '21 - Q1')."
          },
          "employeeCount": {
            "type": "integer",
            "format": "int64",
            "description": "Total employee count for the data point."
          }
        },
        "description": "Quarter-by-quarter breakdown of total employee count."
      },
      "EmployeeGrowth": {
        "type": "object",
        "properties": {
          "oneYearGrowthRate": {
            "type": "string",
            "description": "One-year growth rate."
          },
          "twoYearGrowthRate": {
            "type": "string",
            "description": "Two-year growth rate."
          },
          "employeeGrowthDataPoints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmployeeGrowthDataPoint"
            },
            "description": "Quarter-by-quarter breakdown of total employee count."
          }
        },
        "description": "Employee growth of the company in the past two years. A one- and two-year growth percentage is provided as well as a quarter-by-quarter breakdown of total employee count."
      },
      "ContactCompanyEnrich": {
        "type": "object",
        "properties": {
          "socialMediaUrls": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SocialMediaUrl"
            },
            "description": "Social media URLs for the company (e.g., Facebook, Twitter, LinkedIn and so on)."
          },
          "primaryIndustry": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Top-level industry for a company."
          },
          "primaryIndustryCode": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PrimaryIndustryCode"
            },
            "description": "Top-level industry for a company along with its code."
          },
          "primarySubIndustryCode": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PrimarySubIndustryCode"
            },
            "description": "Top-level sub-industry for a company along with its code."
          },
          "industries": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The industry grouping for the company. A company can have multiple industries."
          },
          "industryCodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IndustryCode"
            },
            "description": "The industry grouping for the company along with it's codes. A company can have multiple industries."
          },
          "website": {
            "type": "string",
            "description": "Company website."
          },
          "type": {
            "type": "string",
            "description": "Company type (private, public, npo, education, government, other)."
          },
          "ticker": {
            "type": "string",
            "description": "Company public stock exchange ticker."
          },
          "name": {
            "type": "string",
            "description": "Company name."
          },
          "description": {
            "type": "string",
            "description": "Description associated with the company."
          },
          "phone": {
            "type": "string",
            "description": "Company phone number."
          },
          "fax": {
            "type": "string",
            "description": "Fax number of the company headquarters."
          },
          "street": {
            "type": "string",
            "description": "Street portion of the company's primary address."
          },
          "city": {
            "type": "string",
            "description": "City of the company's primary address."
          },
          "state": {
            "type": "string",
            "description": "State or province of the company's primary address."
          },
          "zipCode": {
            "type": "string",
            "description": "Zip code or postal code of the company's primary address."
          },
          "country": {
            "type": "string",
            "description": "Country of the company's primary address."
          },
          "continent": {
            "type": "string",
            "description": "Continent of the company's primary address."
          },
          "logo": {
            "type": "string",
            "description": "The URL which can be used to retrieve the logo for the company."
          },
          "alternateLogos": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of alternate logos for the company."
          },
          "employeeCount": {
            "type": "integer",
            "format": "int32",
            "description": "Employee count of the company."
          },
          "sicCodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SicCode"
            },
            "description": "The Standard Industrial Classification is a system for classifying industries by a four-digit numerical code assigned by the U.S. government to business establishments to identify the primary business of the establishment."
          },
          "naicsCodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NaicsCode"
            },
            "description": "Four-digit numerical codes assigned by the U.S. government to business establishments to identify the primary business of the establishment."
          },
          "employeeRange": {
            "type": "string",
            "description": "Employee range at the company."
          },
          "employeeGrowth": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EmployeeGrowth"
              }
            ],
            "description": "Employee growth rate at the company."
          },
          "revenueRange": {
            "type": "string",
            "description": "Revenue range for a company."
          },
          "id": {
            "type": "integer",
            "format": "int64",
            "description": "Unique ZoomInfo ID"
          },
          "revenue": {
            "type": "string",
            "description": "Company revenue (e.g., 400 Million)."
          },
          "revenueNumeric": {
            "type": "integer",
            "format": "int64",
            "description": "Company revenue expressed numerically (e.g. 400000000)."
          },
          "ranking": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Company ranking list (e.g., Fortune 500 and so on)."
          },
          "division": {
            "type": "string",
            "description": "Contact primary division name at current place of employment."
          }
        },
        "description": "Contact's company data for an enrich request."
      },
      "ContactEnrichResponseAttributes": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "description": "Contact first name."
          },
          "middleName": {
            "type": "string",
            "description": "Contact middle name."
          },
          "lastName": {
            "type": "string",
            "description": "Contact last name."
          },
          "email": {
            "type": "string",
            "description": "Work email address for the contact in example@example.com format."
          },
          "hasCanadianEmail": {
            "type": "boolean",
            "description": "Indicates whether the contact's email address is associated with a Canada domain."
          },
          "supplementalEmail": {
            "type": "string",
            "description": "Supplemental email address for the contact in example@example.com format."
          },
          "phone": {
            "type": "string",
            "description": "Contact direct phone number."
          },
          "directPhoneDoNotCall": {
            "type": "boolean",
            "description": "Contact flagged with do not call for direct phone."
          },
          "street": {
            "type": "string",
            "description": "Street portion of the contact's work address."
          },
          "city": {
            "type": "string",
            "description": "City portion of the contact's work address."
          },
          "region": {
            "type": "string",
            "description": "State or province of the contact's work address."
          },
          "metroArea": {
            "type": "string",
            "description": "Metro area of the contact's work address."
          },
          "zipCode": {
            "type": "string",
            "description": "Zip code or postal code of the contact's work address."
          },
          "state": {
            "type": "string",
            "description": "State or province of the contact's work address."
          },
          "country": {
            "type": "string",
            "description": "Country of the contact's work address."
          },
          "continent": {
            "type": "string",
            "description": "Continent of the contact's work address."
          },
          "personHasMoved": {
            "type": "string",
            "description": "Indicates ZoomInfo recognizes the contact does not match ZoomInfo's current company but does match known employment history."
          },
          "withinEu": {
            "type": "boolean",
            "description": "Indicates whether the contact's work address is in Europe."
          },
          "withinCalifornia": {
            "type": "boolean",
            "description": "Indicates whether the contact's work address is in California."
          },
          "withinCanada": {
            "type": "boolean",
            "description": "Indicates whether the contact's work address is in Canada."
          },
          "validDate": {
            "type": "string",
            "format": "date-time",
            "description": "Date on which the contact record was last validated."
          },
          "lastUpdatedDate": {
            "type": "string",
            "format": "date-time",
            "description": "Date on which the contact record was last updated."
          },
          "noticeProvidedDate": {
            "type": "string",
            "format": "date",
            "description": "Date on which the contact was notified of inclusion in ZoomInfo's database. Uses YYYY-MM-DD format."
          },
          "salutation": {
            "type": "string",
            "description": "Contact salutation."
          },
          "suffix": {
            "type": "string",
            "description": "Contact suffix."
          },
          "jobTitle": {
            "type": "string",
            "description": "Contact job title at current place of employment."
          },
          "jobFunction": {
            "allOf": [
              {
                "$ref": "#/components/schemas/JobFunction"
              }
            ],
            "description": "Contact job function at current place of employment."
          },
          "education": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Education"
            },
            "description": "Contact education details."
          },
          "hashedEmails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact MD5 encrypted email address(es)."
          },
          "picture": {
            "type": "string",
            "description": "The URL which can be used to retrieve a photo for the contact."
          },
          "techSkills": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TechSkill"
            },
            "description": "List of technology skills identified for a contact."
          },
          "mobilePhone": {
            "type": "string",
            "description": "Contact mobile phone."
          },
          "mobilePhoneDoNotCall": {
            "type": "boolean",
            "description": "Contact flagged with do not call for mobile phone."
          },
          "directPhoneAlt": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContactDataWithSource"
            },
            "description": "Alternative direct phone numbers with their sources, providing multiple direct phone options from different data sources."
          },
          "mobilePhoneAlt": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContactDataWithSource"
            },
            "description": "Alternative mobile phone numbers with their sources, providing multiple mobile phone options from different data sources."
          },
          "emailAlt": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContactDataWithSource"
            },
            "description": "Alternative email addresses with their sources, providing multiple email options from different data sources."
          },
          "externalUrls": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExternalUrl"
            },
            "description": "Social media URLs for the contact (e.g., Facebook, Twitter, LinkedIn)."
          },
          "contactAccuracyScore": {
            "type": "string",
            "description": "This score indicates the likelihood that a contact is reachable and still employed by the company listed. Minimum score is 75 and maximum is 99."
          },
          "isDefunct": {
            "type": "boolean",
            "description": "Indicates whether the company associated with the contact still exists."
          },
          "employmentHistory": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmploymentHistory"
            },
            "description": "Contact employment history."
          },
          "managementLevel": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of contact management levels."
          },
          "locationCompanyId": {
            "type": "integer",
            "format": "int64",
            "description": "Company Id of contact's company."
          },
          "positionStartDate": {
            "type": "string",
            "format": "date-time",
            "description": "The date on which the contact began their current employment."
          },
          "yearsOfExperience": {
            "type": "string",
            "description": "Years of overall experience."
          },
          "engagements": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Engagement"
            },
            "description": "List of the contact's engagements. Includes the date and type of each engagement."
          },
          "company": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactCompanyEnrich"
              }
            ],
            "description": "Contact's company data."
          }
        },
        "description": "Contact enrich response attributes.",
        "x-class-extra-annotation": "@com.fasterxml.jackson.annotation.JsonIgnoreProperties(ignoreUnknown = true)"
      },
      "ContactMatchStatus": {
        "type": "string",
        "enum": [
          "FULL_MATCH",
          "NO_MATCH",
          "NON_MATCH_BY_LAST_UPDATED_DATE",
          "NON_MATCH_BY_VALID_DATE",
          "NON_MATCH_BY_REQUIRED_FIELDS",
          "NON_MATCH_BY_CONTACT_ACCURACY_MIN",
          "COMPANY_ONLY_MATCH",
          "CONTACT_ONLY_MATCH",
          "OPT_OUT",
          "LIMIT_EXCEEDED",
          "INVALID_INPUT"
        ],
        "description": "Match status indicating the result of an enrich request.",
        "x-enumDescriptions": {
          "FULL_MATCH": "Match status indicating a full match with all criteria met.",
          "NO_MATCH": "Match status indicating no match found.",
          "LAST_UPDATE_NOT_MATCHED": "Match status indicating no match. Contact's last updated date is before requested date for field lastUpdatedDateAfter.",
          "VALID_DATE_NOT_MATCHED": "Match status indicating no match. Contact's valid date is before requested date for field validDateAfter.",
          "REQUIRED_FIELDS_MISSING": "Match status indicating no match. Required fields data for the enrich request are missing.",
          "CONTACT_ACCURACY_NOT_MATCHED": "Match status indicating no match. Contact's contact accuracy score is below the requested minimum for field contactAccuracyScoreMin.",
          "COMPANY_MATCH_ONLY": "Match status indicating a match with company data only.",
          "CONTACT_MATCH_ONLY": "Match status indicating a match with contact data only.",
          "CONTACT_OPTED_OUT": "Match status indicating the contact has opted out of ZoomInfo's data collection.",
          "LIMIT_EXCEEDED": "Match status indicating the enrich request credit limit has been exceeded.",
          "INPUT_ERROR": "Match status indicating an error with the input data."
        }
      },
      "ContactEnrichRequestCriteria": {
        "type": "object",
        "properties": {
          "personId": {
            "type": "integer",
            "format": "int64",
            "description": "Unique ZoomInfo identifier for the contact."
          },
          "fullName": {
            "type": "string",
            "maxLength": 500,
            "description": "Contact full name."
          },
          "firstName": {
            "type": "string",
            "maxLength": 500,
            "description": "Contact first name."
          },
          "lastName": {
            "type": "string",
            "maxLength": 500,
            "description": "Contact last name."
          },
          "emailAddress": {
            "type": "string",
            "maxLength": 500,
            "description": "Email address for the contact in example@example.com format."
          },
          "phone": {
            "type": "string",
            "maxLength": 500,
            "description": "Contact direct or mobile phone number."
          },
          "jobTitle": {
            "type": "string",
            "maxLength": 500,
            "description": "Contact title at current place of employment. May only contain letters, numbers, whitespace, and the special characters `+&,./'-\"`."
          },
          "hashedEmail": {
            "type": "string",
            "maxLength": 500,
            "description": "Hashed email value for the contact. Allows matching via an email address with the extra security of not exposing the email. Supported hash algorithms are: MD5, SHA1, SHA256 and SHA512."
          },
          "externalURL": {
            "type": "string",
            "maxLength": 500,
            "description": "Social media URLs for the contact (e.g., Facebook, Twitter, LinkedIn)."
          },
          "lastUpdatedDateAfter": {
            "type": "string",
            "format": "date",
            "description": "The date after which the contact's profile was last updated. Uses YYYY-MM-DD format."
          },
          "validDateAfter": {
            "type": "string",
            "format": "date",
            "description": "The date after which the contact's profile was last validated. Uses YYYY-MM-DD format."
          },
          "contactAccuracyScoreMin": {
            "type": "string",
            "maxLength": 500,
            "description": "Minimum accuracy score for enrich result. This score indicates the likelihood that a contact is reachable and still employed by the company listed. Minimum score is 70 and maximum is 99."
          },
          "companyId": {
            "type": "integer",
            "format": "int64",
            "description": "Unique ZoomInfo identifier for a company."
          },
          "companyName": {
            "type": "string",
            "maxLength": 500,
            "description": "Company name."
          }
        },
        "description": "The Enrich API provides the ability to enrich contact and company data with ZoomInfo's proprietary data."
      },
      "Warning": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Warning code."
          },
          "message": {
            "type": "string",
            "description": "Warning message."
          },
          "fields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Fields associated with the warning."
          }
        },
        "description": "Warning details for validation issues."
      },
      "ContactAttributeMeta": {
        "type": "object",
        "required": [
          "matchStatus",
          "input"
        ],
        "properties": {
          "matchStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactMatchStatus"
              }
            ],
            "description": "The match status for the contact enrich operation, indicating whether a match was found and the type of match."
          },
          "input": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactEnrichRequestCriteria"
              }
            ],
            "description": "The input criteria that was used to perform the contact enrich match. This provides traceability for the match result."
          },
          "warnings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Warning"
            },
            "description": "Details about any warnings encountered during the validation of the enrich request input criteria."
          }
        },
        "description": "Metadata describing the result of a contact enrich match, including the match status and the input criteria used for the match. Used to provide additional context about how the contact enrich response was determined."
      },
      "EnrichContact": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier for the resource"
          },
          "type": {
            "type": "string",
            "description": "The type of the resource",
            "default": "Contact",
            "pattern": "Contact"
          },
          "attributes": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactEnrichResponseAttributes"
              }
            ],
            "description": "The attributes defining the resource"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactAttributeMeta"
              }
            ],
            "description": "Non-standard meta information about the resource"
          }
        },
        "description": "A matching contact was identified from the provided input data. This result could be either a FULL_MATCH (where both the company and contact information matched), a CONTACT_ONLY_MATCH (only the contact information provided matched and only contact fields requested are returned), or a COMPANY_ONLY_MATCH (only the company information provided matched and only the company fields requested are returned). The match status can be found within the meta object to determine which case was met."
      },
      "NoMatchContact": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the resource"
          },
          "type": {
            "type": "string",
            "description": "The type identifier of the resource",
            "default": "NoMatch",
            "pattern": "NoMatch"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactAttributeMeta"
              }
            ],
            "description": "Non-standard meta information about the resource"
          }
        },
        "description": "There was not a matching contact found for the provided input or is been filtered out because either of match statues - NON_MATCH_BY_LAST_UPDATED_DATE (Contact's last updated date is before requested date for field lastUpdatedDateAfter), NON_MATCH_BY_VALID_DATE (Contact's valid date is before requested date for field validDateAfter), NON_MATCH_BY_REQUIRED_FIELDS (Required fields data for the enrich request are missing), NON_MATCH_BY_CONTACT_ACCURACY_MIN (Contact's contact accuracy score is below the requested minimum for field contactAccuracyScoreMin), OPT_OUT (Contact has opted out of ZoomInfo's data collection), LIMIT_EXCEEDED (User credit limit has been exceeded). Exact details can be found within the meta object including the match status and other accompanying metadata."
      },
      "ContactEnrichResponseResourceUnion": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/EnrichContact"
          },
          {
            "$ref": "#/components/schemas/NoMatchContact"
          }
        ],
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "Contact": "#/components/schemas/EnrichContact",
            "NoMatch": "#/components/schemas/NoMatchContact"
          }
        },
        "description": "Represents the possible resource types returned in a contact enrich response, including both a successful contact match and a no-match result. Used to encapsulate the response resource for contact enrichment."
      },
      "ContactEnrichResponse": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContactEnrichResponseResourceUnion"
            },
            "description": "The primary data of the document"
          }
        },
        "description": "Contact enrich response."
      },
      "ContactEnrichRequestAttributes": {
        "type": "object",
        "required": [
          "outputFields",
          "matchPersonInput"
        ],
        "properties": {
          "outputFields": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "city",
                "companyAlternateLogos",
                "companyCity",
                "companyContinent",
                "companyCountry",
                "companyDescription",
                "companyDivision",
                "companyEmployeeCount",
                "companyEmployeeGrowth",
                "companyEmployeeRange",
                "companyFax",
                "companyId",
                "companyIndustries",
                "companyIndustryCodes",
                "companyLogo",
                "companyNaicsCodes",
                "companyName",
                "companyPhone",
                "companyPrimaryIndustry",
                "companyPrimaryIndustryCode",
                "companyPrimarySubIndustryCode",
                "companyRanking",
                "companyRevenue",
                "companyRevenueNumeric",
                "companyRevenueRange",
                "companySicCodes",
                "companySocialMediaUrls",
                "companyState",
                "companyStreet",
                "companyTicker",
                "companyType",
                "companyWebsite",
                "companyZipCode",
                "contactAccuracyScore",
                "continent",
                "country",
                "directPhoneAlt",
                "directPhoneDoNotCall",
                "education",
                "email",
                "emailAlt",
                "employmentHistory",
                "engagements",
                "externalUrls",
                "firstName",
                "hasCanadianEmail",
                "hashedEmails",
                "id",
                "isDefunct",
                "jobFunction",
                "jobTitle",
                "lastName",
                "lastUpdatedDate",
                "locationCompanyId",
                "managementLevel",
                "metroArea",
                "middleName",
                "mobilePhone",
                "mobilePhoneAlt",
                "mobilePhoneDoNotCall",
                "noticeProvidedDate",
                "personHasMoved",
                "phone",
                "picture",
                "positionStartDate",
                "region",
                "salutation",
                "state",
                "street",
                "suffix",
                "supplementalEmail",
                "techSkills",
                "validDate",
                "withinCalifornia",
                "withinCanada",
                "withinEu",
                "yearsOfExperience",
                "zipCode"
              ]
            },
            "description": "Specifies the fields to include in the response. To request company-related fields for a contact, use camel-case field names corresponding to the company object (e.g., companyName, companyPhone, companyId, companyRevenue)."
          },
          "requiredFields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of fields that are required for the match."
          },
          "matchPersonInput": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContactEnrichRequestCriteria"
            },
            "minItems": 1,
            "maxItems": 25,
            "description": "List of matchPersonInput."
          }
        },
        "description": "Contact enrich request attributes."
      },
      "ContactEnrichRequestResource": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of the resource",
            "default": "ContactEnrich",
            "pattern": "ContactEnrich"
          },
          "attributes": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactEnrichRequestAttributes"
              }
            ],
            "description": "The attributes defining the resource"
          }
        },
        "description": "Contact enrich request resource."
      },
      "ContactEnrichRequest": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactEnrichRequestResource"
              }
            ],
            "description": "The primary data of the document"
          }
        },
        "description": "Contact enrich request."
      }
    },
    "securitySchemes": {
      "OAuth2Auth": {
        "type": "oauth2",
        "flows": {
          "authorizationCode": {
            "authorizationUrl": "https://login.zoominfo.com",
            "tokenUrl": "https://okta-login.zoominfo.com/oauth2/default/v1/token",
            "scopes": {
              "api:data:contact": "Ability to search and enrich ZoomInfo Contact data",
              "api:data:company": "Ability to search and enrich ZoomInfo Company data",
              "api:data:intent": "Ability to search and enrich ZoomInfo Intent data",
              "api:data:news": "Ability to search and enrich ZoomInfo News data",
              "api:data:scoops": "Ability to search and enrich ZoomInfo Scoop data",
              "api:data:lookup": "Lookup ZoomInfo Data"
            }
          }
        }
      }
    }
  },
  "servers": [
    {
      "url": "https://api.zoominfo.com/gtm",
      "description": "Base URL for the Data API"
    }
  ]
}
```

# Sibling pages

* [Enrich Companies](https://docs.gtm.ai/zoominfoenterprise/reference/enrichinterface_enrichcompany.md)
* [Enrich Corporate Hierarchy](https://docs.gtm.ai/zoominfoenterprise/reference/enrichinterface_enrichcorporatehierarchy.md)
* [Enrich Intent](https://docs.gtm.ai/zoominfoenterprise/reference/enrichinterface_enrichintent.md)
* [Enrich News](https://docs.gtm.ai/zoominfoenterprise/reference/enrichinterface_enrichnews.md)
* [Enrich Org Charts](https://docs.gtm.ai/zoominfoenterprise/reference/enrichinterface_enrichorgchart.md)
* [Enrich Scoops](https://docs.gtm.ai/zoominfoenterprise/reference/enrichinterface_enrichscoop.md)
* [Enrich Technologies](https://docs.gtm.ai/zoominfoenterprise/reference/enrichinterface_enrichtechnology.md)
* [Enrich Hashtags](https://docs.gtm.ai/zoominfoenterprise/reference/enrichinterface_enrichhashtag.md)