SDKs // TypeScript // Resources
client.enrich
Last verified
Use client.enrich in the Reverse Contact TypeScript SDK to match people and companies, with method signatures, parameters, costs and error handling.
Look up people and companies from identifying details. You get a matched profile or null.
| Method | Endpoint | Cost |
|---|---|---|
client.enrich.person() | Enrich profile | 2 credits when a person is found, full profile included. A 404 is free. |
client.enrich.company() | Enrich company | 2 credits when a company is found, full profile included. A 404 is free. |
Create client by following Install and configure. The @reverse-contact/sdk package exports Body, Data, Query and the other types used in the signatures.
JSON responses contain data and optional quotas and metadata. They also include the original response, with its body already read. See First call for response handling.
HTTP errors use the APIError subclasses and retry rules: BadRequestError, AuthenticationError, InsufficientCreditsError, PermissionDeniedError, NotFoundError, ConflictError, GoneError, UnprocessableEntityError, RateLimitError, DailyLimitError, KeyCreditLimitError, UnavailableForLegalReasonsError and InternalServerError, according to the API response. Other statuses use APIError.
person()
Provide at least one identifying field: email, firstName, lastName, companyDomain or companyName. Add more details to help identify the right person.
Signature
client.enrich.person(
params: Body<"enrichPerson">,
options?: RequestOptions
): Promise<Result<Data<"enrichPerson">> | null>Parameters
| Name | Type | Description |
|---|---|---|
params required | Body<"enrichPerson"> | Request body. See the fields and their requirements below. |
params.email | string | Professional email address to look up (e.g. jane.doe@acme.com). |
params.firstName | string | First name of the person to look up. |
params.lastName | string | Last name of the person to look up. |
params.companyDomain | string | Company domain to help disambiguate (e.g. acme.com or https://acme.com). |
params.companyName | string | Company name to help disambiguate (e.g. Acme Corp). |
params.fullProfile | boolean | Deprecated and ignored. Enrich always returns the full profile at the same cost. The API still accepts this field for compatibility, but you can remove it. |
options | RequestOptions | Optional per-request timeout, maxRetries, headers and signal. See Client options. |
Returns
Result<Data<"enrichPerson">> with the profile in data.person, or null for a no-match lookup.
Errors
Calls can raise the HTTP APIError subclasses listed above. Network failures or cancellation raise APIConnectionError, and attempt timeouts raise APITimeoutError. ReverseContactError reports invalid SDK options or an invalid successful JSON response. A lookup with no match returns null. An unknown route still raises NotFoundError.
Example
Example
const result = await client.enrich.person({ email: "jane.doe@acme.com" });
console.log(result?.data.person ?? "No confident match");company()
Provide a company domain. The full profile is included. fullProfile is deprecated and ignored, but existing requests can still use it.
Signature
client.enrich.company(
params: Body<"enrichCompany">,
options?: RequestOptions
): Promise<Result<Data<"enrichCompany">> | null>Parameters
| Name | Type | Description |
|---|---|---|
params required | Body<"enrichCompany"> | Request body. See the fields and their requirements below. |
params.domain required | string | Company domain to look up. A bare domain or a full URL works (e.g. acme.com or https://acme.com). |
params.fullProfile | boolean | Deprecated and ignored. Enrich always returns the full profile at the same cost. The API still accepts this field for compatibility, but you can remove it. |
options | RequestOptions | Optional per-request timeout, maxRetries, headers and signal. See Client options. |
Returns
Result<Data<"enrichCompany">> with the profile in data.company, or null for a no-match lookup.
Errors
Calls can raise the HTTP APIError subclasses listed above. Network failures or cancellation raise APIConnectionError, and attempt timeouts raise APITimeoutError. ReverseContactError reports invalid SDK options or an invalid successful JSON response. A lookup with no match returns null. An unknown route still raises NotFoundError.
Example
Example
const result = await client.enrich.company({ domain: "acme.com" });
console.log(result?.data.company ?? "No confident match");Related guides
First call, Errors and retries. Return to the TypeScript SDK overview.
FAQ
How do I enrich a person from an email in TypeScript?
Call client.enrich.person({ email }). A match returns the profile in result.data.person and costs 2 credits.
What does client.enrich return when no profile matches?
client.enrich.person() and client.enrich.company() return null for no-match lookups. Those lookups cost no credits.
Does fullProfile change the enrichment cost?
fullProfile is deprecated and ignored. Enrichment includes the full profile for 2 credits per match.