> ## Documentation Index
> Fetch the complete documentation index at: https://retention.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# LinkedIn → Business Profile

> Enrich a profile into a full work profile: name, title, company, size.

Provide either `linkedin_slug` or `linkedin_url`; at least one is required, and either field accepts a bare slug (e.g. `alice-123`) or a full profile URL (e.g. `https://www.linkedin.com/in/alice-123`). Set `include_mobile_phone` to also look up the contact's mobile phone number.

**Billing:** 4 credits per successful match (HTTP 200). Misses (404) and request errors (4xx) are not billed.



## OpenAPI

````yaml POST /api/v1/linkedin_to_business_profile
openapi: 3.0.1
info:
  title: Retention API
  version: v1
  description: Retention.com identity & data resolution APIs.
servers:
  - url: https://api.rb2b.com
security: []
tags:
  - name: Identity
    description: >-
      Core Identity. Resolve a hashed email (or batch) into a shaped person
      profile.
paths:
  /api/v1/linkedin_to_business_profile:
    post:
      tags:
        - LinkedIn
      summary: LinkedIn → Business Profile
      description: >-
        Enrich a profile into a full work profile: name, title, company, size.


        Provide either `linkedin_slug` or `linkedin_url`; at least one is
        required, and either field accepts a bare slug (e.g. `alice-123`) or a
        full profile URL (e.g. `https://www.linkedin.com/in/alice-123`). Set
        `include_mobile_phone` to also look up the contact's mobile phone
        number.


        **Billing:** 4 credits per successful match (HTTP 200). Misses (404) and
        request errors (4xx) are not billed.
      operationId: linkedinToBusinessProfile
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              description: At least one of `linkedin_slug` or `linkedin_url` is required.
              properties:
                linkedin_slug:
                  type: string
                  description: >-
                    LinkedIn public profile slug. Also accepts a full profile
                    URL.
                  example: alice-123
                linkedin_url:
                  type: string
                  description: >-
                    Full LinkedIn profile URL. Used only when `linkedin_slug` is
                    absent.
                  example: https://www.linkedin.com/in/alice-123
                include_mobile_phone:
                  type: boolean
                  default: false
                  description: >-
                    Also look up the contact's mobile phone number and include
                    it as `mobile_phone` in the result.
                require_email:
                  type: boolean
                  default: false
                  description: >-
                    Only return and bill for profiles that contain an email
                    address.
        required: true
      responses:
        '200':
          description: Profile found (4 credits charged)
          content:
            application/json:
              schema:
                type: object
                required:
                  - result
                properties:
                  result:
                    type: object
                    description: >-
                      Work profile for the matched contact. Only fields known
                      for the contact are present.
                    additionalProperties: true
                    properties:
                      first_name:
                        type: string
                        example: Alice
                      last_name:
                        type: string
                        example: Smith
                      title:
                        type: string
                        example: VP of Marketing
                      current_company:
                        type: string
                        description: Company name.
                        example: Acme
                      linkedin_slug:
                        type: string
                        description: LinkedIn public profile slug.
                        example: alice-123
                      business_email:
                        type: string
                        nullable: true
                        description: >-
                          Confirmed work email address for the contact. `null`
                          when none is known.
                        example: alice@acme.com
                      business_emails:
                        type: array
                        items:
                          type: string
                        description: >-
                          Additional work email addresses associated with the
                          contact. These carry lower confidence than
                          `business_email` and are not confirmed; treat them as
                          candidates. Absent when none are known.
                        example:
                          - a.smith@acme.com
                          - asmith@acme.com
                      company_employee_range:
                        type: string
                        nullable: true
                        description: Company headcount range. `null` when unknown.
                        example: 51-200
                      company_revenue_range:
                        type: string
                        nullable: true
                        description: Company revenue range. `null` when unknown.
                        example: $10M-$50M
                      mobile_phone:
                        type: string
                        nullable: true
                        description: >-
                          Mobile phone number. Present only when
                          `include_mobile_phone` was requested; `null` when no
                          phone is known.
                        example: '+14155550123'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: string
                    enum:
                      - missing linkedin_slug or linkedin_url
                      - invalid linkedin_slug
                      - unexpected connection error
                      - unexpected error
                    description: >-
                      `missing linkedin_slug or linkedin_url`: neither input
                      field was provided. `invalid linkedin_slug`: the input is
                      not a valid LinkedIn profile slug or URL. `unexpected
                      connection error` / `unexpected error`: temporary error;
                      safe to retry.
        '401':
          description: Missing, malformed, or unknown API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthError'
        '402':
          description: Insufficient credits
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InsufficientCreditsError'
        '403':
          description: Service not enabled for this API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceDisabledError'
        '404':
          description: No profile found (not billed)
          content:
            application/json:
              schema:
                type: object
                required:
                  - result
                properties:
                  result:
                    type: object
                    description: Empty object; no profile matched the supplied slug.
                    maxProperties: 0
      security:
        - api_key: []
components:
  schemas:
    AuthError:
      type: object
      required:
        - error
      properties:
        error:
          type: string
          enum:
            - missing_api_key
            - invalid_api_key_format
            - invalid_api_key
          description: >-
            `missing_api_key`: no key supplied. `invalid_api_key_format`: key
            does not match the expected format. `invalid_api_key`: key does not
            belong to any account.
    InsufficientCreditsError:
      type: object
      required:
        - error
      properties:
        error:
          type: string
          enum:
            - insufficient_api_credits
        required:
          type: string
          description: Credits needed for this request.
          example: '1.0'
        remaining:
          type: string
          description: Credits currently remaining on the account.
          example: '0.0'
    ServiceDisabledError:
      type: object
      required:
        - error
      properties:
        error:
          type: string
          enum:
            - service_unavailable_for_key
  securitySchemes:
    api_key:
      type: apiKey
      in: header
      name: X-Api-Key
      description: >-
        Per-account API key. Also accepted as `Api-Key` or `Authorization:
        Bearer <key>`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.