POST
/
identities
/
{identity_uid}
/
integrations
/
linkedin
/
checkpoint
Resolve a Checkpoint or check for in-app resolution.
curl --request POST \
  --url https://api.captaindata.com/v4/identities/{identity_uid}/integrations/linkedin/checkpoint \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '{
  "code": "925632"
}'
{
"auth_type": "COOKIES",
"setup_source": "API",
"is_shared": false,
"name": "John Doe's Example Integration Account",
"uid": "123e4567-e89b-12d3-a456-426614174000",
"integration_permalink": "example-integration",
"created_at": "2023-10-01T12:00:00Z",
"level": "Classic",
"identity_uid": "5678e456-e89b-12d3-a456-426614174001",
"meta": {
"key": "value"
}
}
This endpoint resolves LinkedIn authentication checkpoints that occur during the login process. LinkedIn may require additional verification steps to complete the authentication.

Checkpoint Types

LinkedIn may present different types of checkpoints during authentication. Here’s how to handle each one:

IN_APP_VALIDATION - Mobile App Approval

The user must approve the login in their LinkedIn mobile app.
For IN_APP_VALIDATION checkpoints:
  1. User Action: The user must approve the login in their LinkedIn mobile app
  2. Your Action: Poll this endpoint with an empty request body {}
  3. Timing: Check every 5-10 seconds with a maximum timeout of 5 minutes
  4. Completion: Stop when you receive a success response or permanent error
Note: No verification code is required for mobile app authentication.

2FA - Two-Factor Authentication

Two-factor authentication via authenticator app.
  • Action: Provide the 6-digit code from the user’s authenticator app
  • Timing: Codes expire quickly, so prompt users to provide them promptly
  • Request: Send the code in the request body: {"code": "123456"}

OTP - One-Time Password (SMS)

One-time password sent via SMS to the user’s phone number.
  • Action: Provide the SMS code sent to the user’s phone
  • Timing: Codes typically expire within 10-15 minutes
  • Request: Send the code in the request body: {"code": "123456"}

EMAIL - Email Verification

Verification code sent to the user’s email address.
  • Action: Provide the code sent to the user’s registered email
  • Note: Check spam/junk folders if the email doesn’t arrive
  • Request: Send the code in the request body: {"code": "123456"}

PHONE_REGISTER - Phone Number Verification

Phone number verification required by LinkedIn.
  • Action: User needs to verify their phone number with LinkedIn
  • Note: May require providing a new phone number or confirming existing one
  • Request: Send any required verification code: {"code": "123456"}

CAPTCHA - Visual/Audio Challenge

Visual or audio challenge to prove human interaction.
  • Action: LinkedIn’s automated system will attempt to solve this
  • Note: May take time and could fail - retry the authentication if needed
  • Request: Usually no code required, but may need to retry the original authentication

LOGIN_FORM - Additional Login Fields

Additional login form fields required by LinkedIn.
  • Action: LinkedIn may request additional information (security questions, etc.)
  • Note: Contact support if this checkpoint type is encountered
  • Request: Contact support with the identity_uid for assistance

UNKNOWN - Unrecognized Checkpoint

Unrecognized checkpoint type.
  • Action: Contact support with the identity_uid for assistance
  • Note: This may indicate a new checkpoint type that needs to be handled

Request Examples

For checkpoint types requiring codes:
{
  "code": "123456"
}
For IN_APP_VALIDATION checkpoints:
{}

Error Handling

  • IN_APP_CHALLENGE_PENDING: Continue polling for IN_APP_VALIDATION checkpoints
  • IN_APP_CHALLENGE_EXPIRED: Restart the authentication process
  • 2FA_VALIDATION_EXPIRED: Restart the authentication process
  • CHECKPOINT_MISSING_DATA: Restart the authentication process
  • INVALID_CODE: The provided code is incorrect, try again

Authorizations

X-API-Key
string
header
required

API key required for authentication. Add your API key in the X-API-Key header.

Path Parameters

identity_uid
string<uuid>
required

Body

application/json

Response

200
application/json

Successfully created a new account.

The response is of type object.