Multi Field Request
Multi Field Request
With Resolve, the ability to match on one or many input fields is available. Resolve to individuals by sending any identifiers you may already have, such as an email address(es), Twitter handle, LinkedIn URL, phone number(s), name and location(address), name, social URLs, MAIDs, and more.
The more contact data inputs you can provide either via API or Batch, the more accurate and precise we can get with our identity resolution capabilities. If your Multi Field Request contains incomplete identifier combinations alongside valid inputs, the valid inputs only will be used to identify and resolve an individual. For example, if a name/address combination does not adhere to what is acceptable alongside a valid email, only the valid email will be used to lookup an individual.
When providing inputs, there’s a few helpful tips to keep in mind:
When providing inputs, there’s a few helpful tips to keep in mind:
- To use MD5 emails, be sure to first lowercase and ensure any extraneous characters (e.g. extra spaces or surrounding quotation marks) are stripped off.
- To use postal address, a name is required alongside the input and vice versa.
- Only one name/address combination can be included in the API request
- To use an international phone number, a country code is required.
- There is a maximum of 25 identifiers by type that you may use in your multi field request. A 400 Response will be returned if there are more than 25 identifiers for any given identifier type.
curl -X POST \
https://api.fullcontact.com/v3/identity.resolve \
-H 'Authorization: Bearer {Your API Key}' \
-H "Content-Type: application/json" \
-d '{
"emails": [
"[email protected]",
"[email protected]"
],
"phones": [
"+17202227799",
"+13035551234"
],
"location": {
"addressLine1": "123 Main Street",
"addressLine2": "Unit 2",
"city": "Denver",
"region": "Colorado",
"regionCode": "CO",
"postalCode": "80203"
},
"name": {
"full": "Bart Lorang",
"given": "Bart",
"family": "Lorang"
},
"profiles": [{
"service": "twitter",
"username": "bartlorang"
}, {
"service": "twitter",
"userid": "5998422"
}, {
"service": "linkedin",
"url": "https://www.linkedin.com/in/bartlorang"
}, {
"service": "github",
"url": "https://www.github.com/lorangb"
}],
"maids": ["ape2ch30-pifn-cbvi-30yy-nia-zex7aw5u"],
"recordId": "customer123",
"personId": "eYxWc0B-dKRxerTw_uQpxCssM_GyPaLErj0Eu3y2FrU6py1J",
"li_nonid": "-CmQui5eT6tqBVqQ874WGCv4DNO_taXJOAxVlQ"
}'
{
"recordIds": [
"CUST001"
],
"personIds": [
"c0VAsuEb4DRPuXmEXLutGitk-Hq9xUMautmqzyfuHpZyl3EP"
]
}
Location or Name in request
Input Fields | |
---|---|
email stringQueryable | One email address of the contact. Can accept cleartext, an MD5 or SHA-256 hash representation of the email address to query. Be certain to lowercase and trim the email address prior to hashing. |
emails arrayQueryable | One or many email addresses of the contact. Can accept cleartext, an MD5 or SHA-256 hash representation of the email address to query. Be certain to lowercase and trim the email address prior to hashing. |
phone stringQueryable | Phone number of the contact. For international numbers a country code is required. |
phones arrayQueryable | One or many phone numbers of the contact. For international numbers a country code is required. |
profiles objectQueryable | URLs, IDs and usernames to the profiles on the social platform. |
name.full stringQueryable | Full name of the contact (givenName, familyName). Only queryable when provided in conjunction with postal address. |
name.given stringQueryable | The given name (first name) of the individual. Only queryable when provided in conjunction with postal address. |
name.family stringQueryable | The family name (last name) of the individual. Only queryable when provided in conjunction with postal address. |
location.addressLine1 stringQueryable | The first address line for each location. Only queryable when provided in conjunction with name. |
location.addressLine2 stringQueryable | The second address line for each location. Only queryable when provided in conjunction with name. |
location.city stringQueryable | The city of each location. Only queryable when provided in conjunction with name. |
location.region stringQueryable | The region of each location. This is often the state or province. Only queryable when provided in conjunction with name. |
location.regionCode stringQueryable | The region code of each location. Only queryable when provided in conjunction with name. |
location.postalCode stringQueryable | The postal or ZIP code for each location. Can accept Zip + 4 or Zip. Only queryable when provided in conjunction with name. |
maids listQueryable | One or more Mobile Advertising IDs (MAIDs) for an individual. |
recordId stringQueryable | The client-driven record id attached to a customer. |
personId stringQueryable | The unique, persistent FullContact person id attached to a customer that is scoped per account. |
li_nonid stringQueryable | The LiveIntent pre-authenticated digital nonID. |
Authorization
Authenticating with the FullContact API is accomplished through the use of an API key.
You can generate and manage your API keys from the FullContact Platform UI
When accessing the FullContact API, include your API Key within the "Authorization" header of your POST,
using a prefix of "Bearer". An example of this is shown below.
curl -X POST https://api.fullcontact.com/v3/identity.resolve \
-H 'Authorization: Bearer {Your API Key}'
Keep Your API Keys Secret
Your API keys are essentially like passwords to access the FullContact API, and should be kept secret. Do
not embed them in client-side code or post them in publicly accessible areas such as support forums or GitHub.
It is a common and easy mistake to accidentally copy and paste code snippets, including your API key,
when seeking help - be sure to remove your API key and any other sensitive information before posting.
Updated 5 months ago