B2B2C Append API

Resolve a business contact's identity and crosswalk it to consumer contact data with the B2B2C Crosswalk Append API. With a business contact's LinkedIn profile URL, or their first name, last name, city and state, you can retrieve both sides of that person's identity from the Versium Data store in a single request:

  • Business email address
  • Consumer mobile phone
  • Consumer email address
  • Consumer postal address

One request returns at most one result record. For file-based (batch) processing, use the REACH job APIs instead.

📘

This endpoint is US-only. Records outside the US return zero results.

Authentication

Authentication is done by passing the API key in the x-versium-api-key header. Please see Authentication for full details.

Access to this endpoint must also be enabled on your account; a key without B2B2C access returns 400 with a list of the API groups it can reach.

Format

The B2B2C Crosswalk Append API accepts GET or POST requests. Parameters may be sent as query-string parameters or, for POST, as a JSON body.

Example:

LinkedIn URL input

https://api.versium.com/v2/b2b2cAppend?li_url=https://www.linkedin.com/in/janedoe&output[]=business_email&output[]=consumer_mobile

Name + City/State input

https://api.versium.com/v2/b2b2cAppend?first=jane&last=doe&city=lincoln&state=ne&output[]=business_email&output[]=consumer_email&output[]=consumer_address

Output Type - what data will be returned by the API

output[] is required, and selects which appends to attempt. Repeat the parameter once per requested output. You are charged only for the outputs you request where data is returned (plus the identity crosswalk charge described under Billing on the Output Sample page).

Output TypeDescription
business_emailThe business (B2B) email address for the resolved identity.
consumer_mobileConsumer mobile phone number(s). Mobile lines only — landline and VoIP candidates are discarded.
consumer_emailPersonal (non-business) email address(es).
consumer_addressResidential street address, city, state, ZIP, and country.

Requesting any of the three consumer outputs runs the identity crosswalk. crosswalk is not a selectable value — it is reported and charged automatically when a consumer contact point is returned.

Inputs - what the API uses to search

Each request must satisfy one of these input combinations, or the request is rejected with a 400:

  • li_url — a LinkedIn profile URL, or
  • first + last + city + state — full name plus city and state.
📘

A LinkedIn URL is the most specific identity signal available and produces the best match rates. When both are supplied, the LinkedIn URL is tried first and the name fields are used as a fallback.

valuedescriptionnotes
li_urlA LinkedIn profile URLSatisfies the required-input rule on its own
firstA person's first nameRequired as part of the name combination
lastA person's last nameRequired as part of the name combination
cityA city nameRequired as part of the name combination
stateA US state two letter abbreviationRequired as part of the name combination
zipA 5 digit US ZIP codeOptional. Improves match precision
addressA house/building number and streetOptional. Used to refine the consumer email lookup
countryA 2 digit country code (only US is supported)Optional; defaults to US. Non-US records return zero results

All input values must be strings. Any parameter not listed above is ignored.

Optional Parameters

Optional Configuration Parameters are used to specify and configure how the B2B2C Crosswalk Append API will perform the search.

Optional Config. Param.ValueDescriptionNotes
cfg_requiredA comma- or semicolon-separated list of output[] valuesReturn a result only if these outputs matched. If the requirement is not satisfied, the whole response is a zero-result response and nothing is charged.Comma means AND, semicolon means OR. Must be a subset of the values sent in output[].
cfg_max_emails_b2c1 (default) -> 2Maximum number of consumer email addresses to returnAffects billing: consumer email is charged per email address returned.
cfg_max_phones_b2c1 (default) -> 2Maximum number of consumer mobile numbers to returnConsumer mobile is charged once per matched record no matter how many numbers come back.