Skip to content

Integration guides

Your first API call

New

Send your first enrichment request and parse the response.

You have your API key ready. Let's make your first profile enrichment call and inspect the result.

1. Send the request

The Person Profile endpoint retrieves a complete professional profile from a Social URL. It costs 1 credit (cached data).

POST /v2/fetch/persons

curl -X POST https://api.reversecontact.com/v2/fetch/persons \
  -H "Authorization: Bearer ${RC_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://www.social.com/in/janedoe"}'

2. Read the response

A successful response returns the full profile inside data:

Response

200 OK

{
  "success": true,
  "data": {
    "id": "prs_01jbd5vewyenebxgaz869ffe5t",
    "publicId": "janedoe",
    "firstName": "Jane",
    "lastName": "Doe",
    "headline": "VP of Marketing at Acme Corp",
    "photoUrl": "https://media.licdn.com/dms/image/...",
    "isOpenToWork": false,
    "location": {
      "city": "San Francisco",
      "country": "United States"
    },
    "currentPosition": {
      "title": "VP of Marketing",
      "companyName": "Acme Corp"
    },
    "experience": [
      {
        "title": "VP of Marketing",
        "companyName": "Acme Corp",
        "startEndDate": { "start": "2021-06-01T00:00:00.000Z", "end": null }
      }
    ],
    "skills": ["Marketing Strategy", "B2B SaaS", "Demand Generation"]
  },
  "error": null,
  "quotas": {
    "creditsConsumed": 1,
    "workspace": {
      "credits": { "total": 10000, "used": 1, "left": 9999 }
    }
  },
  "metadata": {
    "requestId": "a1b2c3d4-e5f6-4a90-abcd-ef1234567890",
    "executionTimeMs": 230
  }
}

Start with these key fields:

FieldWhat it gives you
data.firstName / data.lastNameFull name
data.headlineCurrent role summary
data.currentPositionJob title + company (how it is chosen)
data.experienceFull work history with dates
data.skillsList of professional skills
data.locationCity, state, country

See the Person Profile endpoint for all available fields, and API reference for the full response structure.

3. Handle errors

If the URL is invalid, you get a 422 with zero credits charged:

Invalid URL

422 Validation Error

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_LINKEDIN_URL",
    "message": "Invalid LinkedIn profile URL. Expected format: https://linkedin.com/in/username"
  }
}
IssueFix
Invalid LinkedIn URLUse the full URL: https://www.linkedin.com/in/username
401 UnauthorizedCheck your API key. See Authentication
402 Insufficient creditsPurchase more credits from the dashboard
404 Not foundThe profile doesn't exist or isn't indexed yet. Try the Live endpoint

For all error codes and retry strategies, see Error handling & retries.