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

# Enrich one LinkedIn profile

> iBlinked's own request (https://api.iblinked.fr/v1/enrich/single), sent to api.datacircle.dev with your Datacircle key and `X-Data-Provider: iblinked`. Nothing else changes.



## OpenAPI

````yaml /openapi.json post /v1/enrich/single
openapi: 3.1.0
info:
  title: Datacircle API
  version: '1'
servers:
  - url: https://api.datacircle.dev
security:
  - token: []
tags:
  - name: Datacircle
    description: 'Your Datacircle account: credits, checkout, files, invites, API key.'
  - name: iBlinked
    description: >-
      LinkedIn Profile API: iBlinked's own request, sent to api.datacircle.dev
      with your Datacircle key and `X-Data-Provider: iblinked`.
  - name: Up2Data
    description: >-
      LinkedIn Profile API: Up2Data's own request, sent to api.datacircle.dev
      with your Datacircle key and `X-Data-Provider: up2data`.
paths:
  /v1/enrich/single:
    post:
      tags:
        - iBlinked
      summary: Enrich one LinkedIn profile
      description: >-
        iBlinked's own request (https://api.iblinked.fr/v1/enrich/single), sent
        to api.datacircle.dev with your Datacircle key and `X-Data-Provider:
        iblinked`. Nothing else changes.
      parameters:
        - name: X-Data-Provider
          in: header
          required: true
          description: >-
            names the provider: `iblinked`. With the host, the only change from
            the provider's own request.
          schema:
            type: string
            enum:
              - iblinked
            default: iblinked
          example: iblinked
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - token
              properties:
                token:
                  type: string
                  description: >-
                    the profile, as in iBlinked's docs: its member token
                    (`ACoAA…`, case-sensitive), its LinkedIn slug
                    (`williamhgates`) or profile URL; sent to iBlinked exactly
                    as you write it
                  minLength: 1
                  maxLength: 2048
                include:
                  type:
                    - array
                    - 'null'
                  items:
                    type: string
                  description: >-
                    as in iBlinked's docs: a list of strings, or `null`;
                    Datacircle always asks iBlinked for `all`, at the same
                    one-credit price
              additionalProperties: false
            example:
              token: williamhgates
              include:
                - all
      responses:
        '200':
          description: >-
            iBlinked's answer plus `datacircle_meta`; a profile iBlinked can't
            find is `data.found: false`, not charged
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IBlinkedEnrichResponse'
        '400':
          description: >-
            Not charged. No `token`, a body that isn't a JSON object, or an
            `X-Data-Provider` value that isn't `iblinked` or `up2data`
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Missing or invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '402':
          description: Balance too low
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                  - balance_usd
                properties:
                  error:
                    type: string
                    description: >-
                      Why the call was refused: your balance can't cover it. Not
                      charged.
                  balance_usd:
                    type: number
                    description: >-
                      Your balance now, in USD (`balance_usd` in `GET
                      /credits/`). `POST /checkout/` buys more.
                additionalProperties: false
        '404':
          description: >-
            No `X-Data-Provider` header, or a path Datacircle doesn't call for
            that provider (e.g. `X-Data-Provider: iblinked` on
            `/v1/profiles/enrich`); not charged
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: >-
            Not charged. A body field iBlinked doesn't take (`live` and
            `webhook_url` included: Datacircle doesn't pass them on), or an
            `include` that isn't a list of strings: refused as iBlinked refuses
            it, before anything is sent. Or iBlinked's own refusal, passed on
            (e.g. `invalid_token`, a `token` over 2048 characters).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IBlinkedError'
        '503':
          description: >-
            iBlinked is down or busy (`maintenance`, `fleet_unavailable`,
            `slug_resolution_unavailable`, `temporarily_unavailable`), passed on
            as is. Not charged; send the same request again in a few seconds
            (`detail.retry_after_seconds` when iBlinked gives it).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IBlinkedUnavailable'
      x-codeSamples:
        - lang: bash
          label: curl
          source: |-
            curl -X POST "https://api.datacircle.dev/v1/enrich/single" \
              -H "Authorization: Token $DATACIRCLE_API_KEY" \
              -H "X-Data-Provider: iblinked" \
              -H "Content-Type: application/json" \
              -d '{"token": "williamhgates", "include": ["all"]}'
        - lang: python
          label: Python
          source: |-
            import os

            import requests

            response = requests.post(
                "https://api.datacircle.dev/v1/enrich/single",
                headers={"Authorization": f"Token {os.environ['DATACIRCLE_API_KEY']}", "X-Data-Provider": "iblinked"},
                json={'token': 'williamhgates', 'include': ['all']},
            )
            print(response.json())
components:
  schemas:
    IBlinkedEnrichResponse:
      type: object
      description: >-
        iBlinked's own response to POST /v1/enrich/single, plus
        `datacircle_meta`
      required:
        - success
        - data
        - error
        - metadata
        - datacircle_meta
      properties:
        success:
          type: boolean
          description: >-
            iBlinked's own flag: always `true` in a `200`, a profile it can't
            find included (`data.found: false`).
        data:
          anyOf:
            - $ref: '#/components/schemas/IBlinkedProfile'
            - $ref: '#/components/schemas/IBlinkedNotFound'
          description: >-
            The profile, or `{"found": false, "token": ...}` when iBlinked has
            no such profile (not charged).
        error:
          type: 'null'
          description: >-
            Always `null` in a `200`. iBlinked's errors come with their own
            status: see `422` and `503`.
        metadata:
          type: object
          properties:
            last_refreshed_at:
              type: string
              description: >-
                When iBlinked last read this profile from LinkedIn (ISO 8601);
                absent with `data.found: false`.
            request_id:
              type: string
              description: >-
                iBlinked's id of this request: quote it to report a wrong
                answer.
            served_from:
              type: string
              description: >-
                Where iBlinked served this answer from: `cache` (its stored
                copy, as fresh as `last_refreshed_at`); with `data.found:
                false`, why nothing was served: `not_found` (LinkedIn has no
                such profile), `not_yet_available` (a slug iBlinked never
                collected: send the member token) or `no_valid_identifier`.
            tier:
              type: string
              description: >-
                iBlinked's price tier for this answer, e.g. `cache`; absent from
                most `data.found: false` answers.
            unit_cost:
              type: integer
              description: >-
                iBlinked's price of one profile, in iBlinked credits. What you
                were charged is `datacircle_meta.credits_cost`: 0.001 USD per
                credit iBlinked billed, 0 when it billed none (not found, or
                Datacircle answered from what it holds). Absent from most
                `data.found: false` answers.
          required:
            - request_id
            - served_from
          additionalProperties: false
          description: iBlinked's metadata about this answer.
        datacircle_meta:
          $ref: '#/components/schemas/DatacircleMeta'
      additionalProperties: false
    Error:
      type: object
      required:
        - error
      properties:
        error:
          type: string
          description: What went wrong, in plain words.
    IBlinkedError:
      type: object
      description: iBlinked's own error answer, as it sends it
      required:
        - detail
      properties:
        detail:
          description: >-
            A list of what is wrong with the body (iBlinked's validation, and
            Datacircle's own check of the same rules), or one error with a
            stable code.
          anyOf:
            - type: array
              items:
                type: object
                required:
                  - type
                  - loc
                  - msg
                  - input
                properties:
                  type:
                    type: string
                    description: >-
                      The rule broken, e.g. `extra_forbidden` (a field iBlinked
                      doesn't take), `list_type`, `string_type`,
                      `string_too_long`.
                  loc:
                    type: array
                    items:
                      type:
                        - string
                        - integer
                    description: Where in the request, e.g. `["body", "include", 0]`.
                  msg:
                    type: string
                    description: What is wrong, in words.
                  input:
                    description: The value you sent there.
                  ctx:
                    type: object
                    properties:
                      max_length:
                        type: integer
                        description: The longest `token` iBlinked takes (2048 characters).
                    additionalProperties: false
                    description: The rule's limit, with `string_too_long`.
                additionalProperties: false
            - type: object
              required:
                - error
                - detail
              properties:
                error:
                  type: string
                  description: >-
                    iBlinked's stable error code, e.g. `invalid_token` (a member
                    token `ACoAA…` with no member in it).
                detail:
                  type: string
                  description: iBlinked's message.
              additionalProperties: false
        datacircle_meta:
          $ref: '#/components/schemas/DatacircleMeta'
          description: >-
            With an answer iBlinked sent; absent when Datacircle refused the
            body itself.
      additionalProperties: false
    IBlinkedUnavailable:
      type: object
      description: iBlinked is down or busy, passed on as is.
      properties:
        detail:
          type: object
          description: Most of them (`fleet_unavailable`, `slug_resolution_unavailable`).
          required:
            - error
            - detail
          properties:
            error:
              type: string
              description: >-
                iBlinked's code, e.g. `fleet_unavailable` (no capacity to
                collect a profile it doesn't hold).
            detail:
              type: string
              description: iBlinked's message.
            retry_after_seconds:
              type: integer
              description: Seconds to wait before sending the same request again.
            retry_with:
              type: string
              description: >-
                With `slug_resolution_unavailable`: send the member token
                instead of the slug.
          additionalProperties: false
        success:
          type: boolean
          description: >-
            `false`, with `maintenance` and `temporarily_unavailable` (iBlinked
            keeps its normal envelope for them).
        error:
          type: object
          description: With `maintenance` and `temporarily_unavailable`.
          required:
            - code
          properties:
            code:
              type: string
              description: '`maintenance` or `temporarily_unavailable`.'
        datacircle_meta:
          $ref: '#/components/schemas/DatacircleMeta'
    IBlinkedProfile:
      type: object
      properties:
        certifications:
          type: array
          items:
            type: object
            properties:
              authority:
                type:
                  - string
                  - 'null'
                description: Who issued it; `null` when not listed.
              company_id:
                type:
                  - integer
                  - 'null'
                description: >-
                  LinkedIn company id of the issuer; `0` or `null` when LinkedIn
                  links none.
              ended_on:
                type:
                  - string
                  - 'null'
                description: When it expires, as LinkedIn shows it; `null` when it doesn't.
              license_number:
                type:
                  - string
                  - 'null'
                description: License or credential number; `null` when not listed.
              name:
                type: string
                description: The certification's name.
              position:
                type: integer
                description: Its order on the profile, from 0.
              started_on:
                type:
                  - string
                  - 'null'
                description: >-
                  When it was issued, as LinkedIn shows it; `null` when not
                  listed.
              url:
                type:
                  - string
                  - 'null'
                description: The credential's URL; `null` when not listed.
            required:
              - authority
              - company_id
              - ended_on
              - license_number
              - name
              - position
              - started_on
              - url
            additionalProperties: false
          description: Licenses and certifications on the profile; empty when none.
        courses:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
                description: The course's name.
              number:
                type:
                  - string
                  - 'null'
                description: The course's number; `null` when not listed.
              position:
                type: integer
                description: Its order on the profile, from 0.
            required:
              - name
              - number
              - position
            additionalProperties: false
          description: Courses listed on the profile; empty when none.
        current_companies:
          type: array
          items:
            type: object
            properties:
              company_id:
                type:
                  - integer
                  - 'null'
                description: >-
                  LinkedIn company id; `null` when the company has no LinkedIn
                  page.
              company_name:
                type: string
                description: The company's name as on the profile.
              entreprise:
                type:
                  - object
                  - 'null'
                properties:
                  company_type:
                    type:
                      - string
                      - 'null'
                    description: >-
                      The company's type as on its LinkedIn page, e.g.
                      `Privately Held`, `Public Company`, `Nonprofit`; `null`
                      when not listed.
                  country_code:
                    type:
                      - string
                      - 'null'
                    description: >-
                      Headquarters country, ISO 3166-1 alpha-2 (e.g. `US`);
                      `null` when the company page lists none.
                  description:
                    type:
                      - string
                      - 'null'
                    description: >-
                      The About text of the company's LinkedIn page; `null` when
                      empty.
                  follower_count:
                    type:
                      - integer
                      - 'null'
                    description: >-
                      Followers of the company's LinkedIn page; `null` when
                      unknown.
                  founded_year:
                    type:
                      - integer
                      - 'null'
                    description: Year the company was founded; `null` when not listed.
                  hq_city:
                    type:
                      - string
                      - 'null'
                    description: >-
                      Headquarters city; `null` when the company page lists
                      none.
                  hq_region:
                    type:
                      - string
                      - 'null'
                    description: Headquarters state or region; `null` when not listed.
                  industry:
                    type:
                      - string
                      - 'null'
                    description: >-
                      The company's LinkedIn industry; `null` when its page
                      lists none.
                  linkedin_url:
                    type: string
                    description: The company's LinkedIn page URL.
                  logo_url:
                    type:
                      - string
                      - 'null'
                    description: >-
                      The company's logo (a LinkedIn CDN link, which expires);
                      `null` when there is none.
                  name:
                    type: string
                    description: The company's name.
                  region:
                    type: string
                    description: >-
                      iBlinked's world region of the headquarters, e.g. `na`
                      (North America).
                  revenue_range:
                    type: 'null'
                    description: 'Always `null`: iBlinked doesn''t fill it today.'
                  slug:
                    type: string
                    description: 'The company page''s slug: linkedin.com/company/<slug>.'
                  specialties:
                    type:
                      - array
                      - 'null'
                    items:
                      type: string
                    description: >-
                      Specialties listed on the company's LinkedIn page; `null`
                      when none.
                  staff_count:
                    type: integer
                    description: LinkedIn members who list this company as their employer.
                  staff_count_range:
                    type: string
                    description: The company's size band on LinkedIn, e.g. `51-200`.
                  tagline:
                    type:
                      - string
                      - 'null'
                    description: The company page's tagline; `null` when none.
                  website_url:
                    type:
                      - string
                      - 'null'
                    description: The company's website; `null` when not listed.
                required:
                  - company_type
                  - country_code
                  - description
                  - follower_count
                  - founded_year
                  - hq_city
                  - hq_region
                  - industry
                  - linkedin_url
                  - logo_url
                  - name
                  - region
                  - revenue_range
                  - slug
                  - specialties
                  - staff_count
                  - staff_count_range
                  - tagline
                  - website_url
                additionalProperties: false
                description: The company's LinkedIn page; `null` when it has none.
              is_top_card:
                type: boolean
                description: >-
                  `true` when LinkedIn shows this company in the profile's
                  header.
              titles:
                type: array
                items:
                  type: string
                description: The member's current titles at this company.
            required:
              - company_id
              - company_name
              - entreprise
              - is_top_card
              - titles
            additionalProperties: false
          description: Every company the member works at now, one entry per company.
        current_company_id:
          type:
            - integer
            - 'null'
          description: >-
            LinkedIn company id of the member's main current company; `null`
            when it has no LinkedIn page.
        current_company_name:
          type: string
          description: The member's main current company.
        current_title:
          type: string
          description: The member's title at `current_company_name`.
        first_name:
          type: string
          description: The member's first name.
        follower_count:
          type: integer
          description: The member's LinkedIn followers.
        geo_id:
          type: integer
          description: LinkedIn's geo id of `location`.
        headline:
          type: string
          description: The line under the member's name on the profile.
        honors:
          type: array
          items:
            type: object
            properties:
              issued_on:
                type:
                  - string
                  - 'null'
                description: >-
                  When it was received, as LinkedIn shows it (e.g. `04/2024`);
                  `null` when not listed.
              issuer:
                type:
                  - string
                  - 'null'
                description: Who gave it; `null` when not listed.
              position:
                type: integer
                description: Its order on the profile, from 0.
              title:
                type: string
                description: The honor's title.
            required:
              - issued_on
              - issuer
              - position
              - title
            additionalProperties: false
          description: Honors and awards on the profile; empty when none.
        industry:
          type:
            - string
            - 'null'
          description: The member's LinkedIn industry; `null` when the profile shows none.
        industry_id:
          type:
            - integer
            - 'null'
          description: LinkedIn's id of `industry`; `null` when `industry` is.
        job_function:
          type:
            - string
            - 'null'
          description: >-
            iBlinked's job function for the member's current role; `null` when
            it has none.
        last_name:
          type: string
          description: The member's last name.
        last_refreshed_at:
          type: string
          description: When iBlinked last read this profile from LinkedIn (ISO 8601).
        location:
          type: string
          description: The member's location as LinkedIn shows it.
        location_country:
          type: string
          description: Country of `location`, ISO 3166-1 alpha-2 (e.g. `US`).
        member_id:
          type: integer
          description: The member's numeric LinkedIn id.
        num_connections:
          type: integer
          description: The member's LinkedIn connections, as iBlinked read them.
        patents:
          type: array
          items:
            type: object
            properties:
              $type:
                type: string
                description: LinkedIn's internal type of the record.
              id:
                type: integer
                description: LinkedIn's id of the patent.
              inventors:
                type: array
                items:
                  type: object
                  properties:
                    $type:
                      type: string
                      description: LinkedIn's internal type of the record.
                    linkedInMember:
                      type: string
                      description: LinkedIn URN of the inventor's member profile.
                    linkedInMemberUrn:
                      type: string
                      description: >-
                        LinkedIn URN of the inventor's member profile (same as
                        `linkedInMember`).
                    member:
                      type: string
                      description: LinkedIn URN of the inventor's profile.
                    memberUrn:
                      type: string
                      description: >-
                        LinkedIn URN of the inventor's profile (same as
                        `member`).
                    name:
                      type: string
                      description: >-
                        The inventor's name; only when the inventor isn't on
                        LinkedIn (then there is no `member`).
                  required:
                    - $type
                  additionalProperties: false
                description: >-
                  The patent's inventors: a LinkedIn member (`member` and the
                  URNs), or only a `name` when the inventor isn't on LinkedIn.
              issueDateOn:
                type: object
                properties:
                  $type:
                    type: string
                    description: >-
                      LinkedIn's internal type of the record
                      (`com.linkedin.common.Date`).
                  year:
                    type: integer
                    description: The year.
                  month:
                    type: integer
                    description: The month, 1 to 12.
                  day:
                    type: integer
                    description: >-
                      The day of the month; absent when LinkedIn shows only a
                      month.
                required:
                  - $type
                  - year
                  - month
                additionalProperties: false
                description: >-
                  When the patent was issued; absent when not given (e.g. a
                  pending one).
              issuer:
                type: string
                description: Patent office, as a country code (e.g. `us`).
              number:
                type: string
                description: >-
                  The patent or application number, as the member wrote it (e.g.
                  `7,641,152`); absent when none.
              pending:
                type: boolean
                description: '`true` for an application not granted yet.'
              title:
                type: string
                description: The patent's title.
              url:
                type: string
                description: Link to the patent, as the member gave it; absent when none.
            required:
              - $type
              - id
              - inventors
              - issuer
              - pending
              - title
            additionalProperties: false
          description: Patents on the profile; empty when none.
        personal_website:
          type:
            - string
            - 'null'
          description: The website the member lists on the profile; `null` when none.
        photo_root_url:
          type:
            - string
            - 'null'
          description: >-
            First part of the photo URL: `photo_root_url` + `photo_segment` =
            `photo_url`; `null` when no photo.
        photo_segment:
          type:
            - string
            - 'null'
          description: >-
            Second part of the photo URL (size and signature); `null` when no
            photo.
        photo_url:
          type:
            - string
            - 'null'
          description: >-
            The member's profile photo (a LinkedIn CDN link, which expires);
            `null` when no photo.
        publications:
          type: array
          items:
            type: object
            properties:
              authors_count:
                type: integer
                description: How many authors the publication lists.
              description:
                type:
                  - string
                  - 'null'
                description: The publication's description; `null` when none.
              name:
                type: string
                description: The publication's title.
              position:
                type: integer
                description: Its order on the profile, from 0.
              published_on:
                type:
                  - string
                  - 'null'
                description: >-
                  When it was published, as LinkedIn shows it; `null` when not
                  listed.
              publisher:
                type:
                  - string
                  - 'null'
                description: Its publisher; `null` when not listed.
              url:
                type:
                  - string
                  - 'null'
                description: Its URL; `null` when not listed.
            required:
              - authors_count
              - description
              - name
              - position
              - published_on
              - publisher
              - url
            additionalProperties: false
          description: Publications on the profile; empty when none.
        recommendations:
          type: array
          items:
            type: object
            properties:
              created:
                type: integer
                description: When it was written, Unix time in milliseconds.
              recommender_urn:
                type: string
                description: LinkedIn URN of who wrote it.
              relationship:
                type:
                  - string
                  - 'null'
                description: >-
                  How the recommender knew the member, as LinkedIn's code (e.g.
                  `RECOMMENDER_SENIOR_THAN_RECOMMENDEE`); `null` when LinkedIn
                  gives none.
              text:
                type: string
                description: The recommendation's text.
            required:
              - created
              - recommender_urn
              - relationship
              - text
            additionalProperties: false
          description: Recommendations the member received; empty when none.
        region:
          type: string
          description: iBlinked's world region of the member, e.g. `na` (North America).
        sections:
          type: object
          properties:
            educations:
              type: array
              items:
                type: object
                properties:
                  activities:
                    type:
                      - string
                      - 'null'
                    description: Activities and societies; `null` when not listed.
                  degree_name:
                    type:
                      - string
                      - 'null'
                    description: The degree; `null` when not listed.
                  description:
                    type:
                      - string
                      - 'null'
                    description: The entry's description; `null` when none.
                  ecole:
                    type:
                      - object
                      - 'null'
                    properties:
                      address_country:
                        type:
                          - string
                          - 'null'
                        description: >-
                          The school's country, ISO 3166-1 alpha-2 (e.g. `US`);
                          `null` when its page lists no address.
                      address_locality:
                        type:
                          - string
                          - 'null'
                        description: >-
                          The school's city; `null` when its page lists no
                          address.
                      address_postal:
                        type:
                          - string
                          - 'null'
                        description: The school's postal code; `null` when not listed.
                      address_region:
                        type:
                          - string
                          - 'null'
                        description: The school's state or region; `null` when not listed.
                      address_street:
                        type:
                          - string
                          - 'null'
                        description: The school's street address; `null` when not listed.
                      description:
                        type:
                          - string
                          - 'null'
                        description: >-
                          The About text of the school's LinkedIn page; `null`
                          when empty.
                      linkedin_url:
                        type: string
                        description: The school's LinkedIn page URL.
                      logo_url:
                        type:
                          - string
                          - 'null'
                        description: >-
                          The school's logo (a LinkedIn CDN link, which
                          expires); `null` when it has none.
                      school_type:
                        type:
                          - string
                          - 'null'
                        description: >-
                          The school's type as on its LinkedIn page, e.g.
                          `Educational Institution`; `null` when not listed.
                      slogan:
                        type:
                          - string
                          - 'null'
                        description: The school page's tagline; `null` when none.
                      slug:
                        type: string
                        description: 'The school page''s slug: linkedin.com/school/<slug>.'
                      staff_count:
                        type:
                          - integer
                          - 'null'
                        description: >-
                          LinkedIn members who list this school as their
                          employer; `null` when LinkedIn shows none.
                      student_count:
                        type: 'null'
                        description: 'Always `null`: iBlinked doesn''t fill it today.'
                      website:
                        type:
                          - string
                          - 'null'
                        description: The school's website; `null` when its page lists none.
                    required:
                      - address_country
                      - address_locality
                      - address_postal
                      - address_region
                      - address_street
                      - description
                      - linkedin_url
                      - logo_url
                      - school_type
                      - slogan
                      - slug
                      - staff_count
                      - student_count
                      - website
                    additionalProperties: false
                    description: The school's LinkedIn page; `null` when it has none.
                  ended_on:
                    type:
                      - string
                      - 'null'
                    description: >-
                      When it ended, `YYYY-MM-DD` (January 1st when LinkedIn
                      shows only a year); `null` when not listed.
                  field_of_study:
                    type:
                      - string
                      - 'null'
                    description: The field of study; `null` when not listed.
                  grade:
                    type:
                      - string
                      - 'null'
                    description: The grade; `null` when not listed.
                  is_top_card:
                    type: boolean
                    description: >-
                      `true` when LinkedIn shows this school in the profile's
                      header.
                  kind:
                    type: string
                    description: iBlinked's kind of entry, e.g. `institution`.
                  school_id:
                    type:
                      - integer
                      - 'null'
                    description: >-
                      LinkedIn id of the school; `null` when it has no LinkedIn
                      page.
                  school_name:
                    type: string
                    description: The school's name as on the profile.
                  started_on:
                    type:
                      - string
                      - 'null'
                    description: >-
                      When it started, `YYYY-MM-DD` (January 1st when LinkedIn
                      shows only a year); `null` when not listed.
                required:
                  - activities
                  - degree_name
                  - description
                  - ecole
                  - ended_on
                  - field_of_study
                  - grade
                  - is_top_card
                  - kind
                  - school_id
                  - school_name
                  - started_on
                additionalProperties: false
              description: Education history; empty when none.
            experiences:
              type: array
              items:
                type: object
                properties:
                  company_id:
                    type:
                      - integer
                      - 'null'
                    description: >-
                      LinkedIn company id; `null` when the company has no
                      LinkedIn page.
                  company_name:
                    type: string
                    description: The company's name as on the profile.
                  description:
                    type:
                      - string
                      - 'null'
                    description: The role's description; `null` when none.
                  employment_status:
                    type:
                      - string
                      - 'null'
                    description: >-
                      The employment type (e.g. full-time, part-time); `null`
                      when not listed.
                  ended_on:
                    type:
                      - string
                      - 'null'
                    description: >-
                      When the role ended, `YYYY-MM-DD`; `null` for a current
                      role.
                  entreprise:
                    type:
                      - object
                      - 'null'
                    properties:
                      company_type:
                        type:
                          - string
                          - 'null'
                        description: >-
                          The company's type as on its LinkedIn page, e.g.
                          `Privately Held`, `Public Company`, `Nonprofit`;
                          `null` when not listed.
                      country_code:
                        type:
                          - string
                          - 'null'
                        description: >-
                          Headquarters country, ISO 3166-1 alpha-2 (e.g. `US`);
                          `null` when the company page lists none.
                      description:
                        type:
                          - string
                          - 'null'
                        description: >-
                          The About text of the company's LinkedIn page; `null`
                          when empty.
                      follower_count:
                        type:
                          - integer
                          - 'null'
                        description: >-
                          Followers of the company's LinkedIn page; `null` when
                          unknown.
                      founded_year:
                        type:
                          - integer
                          - 'null'
                        description: Year the company was founded; `null` when not listed.
                      hq_city:
                        type:
                          - string
                          - 'null'
                        description: >-
                          Headquarters city; `null` when the company page lists
                          none.
                      hq_region:
                        type:
                          - string
                          - 'null'
                        description: Headquarters state or region; `null` when not listed.
                      industry:
                        type:
                          - string
                          - 'null'
                        description: >-
                          The company's LinkedIn industry; `null` when its page
                          lists none.
                      linkedin_url:
                        type: string
                        description: The company's LinkedIn page URL.
                      logo_url:
                        type:
                          - string
                          - 'null'
                        description: >-
                          The company's logo (a LinkedIn CDN link, which
                          expires); `null` when there is none.
                      name:
                        type: string
                        description: The company's name.
                      region:
                        type: string
                        description: >-
                          iBlinked's world region of the headquarters, e.g. `na`
                          (North America).
                      revenue_range:
                        type: 'null'
                        description: 'Always `null`: iBlinked doesn''t fill it today.'
                      slug:
                        type: string
                        description: 'The company page''s slug: linkedin.com/company/<slug>.'
                      specialties:
                        type:
                          - array
                          - 'null'
                        items:
                          type: string
                        description: >-
                          Specialties listed on the company's LinkedIn page;
                          `null` when none.
                      staff_count:
                        type: integer
                        description: >-
                          LinkedIn members who list this company as their
                          employer.
                      staff_count_range:
                        type: string
                        description: The company's size band on LinkedIn, e.g. `51-200`.
                      tagline:
                        type:
                          - string
                          - 'null'
                        description: The company page's tagline; `null` when none.
                      website_url:
                        type:
                          - string
                          - 'null'
                        description: The company's website; `null` when not listed.
                    required:
                      - company_type
                      - country_code
                      - description
                      - follower_count
                      - founded_year
                      - hq_city
                      - hq_region
                      - industry
                      - linkedin_url
                      - logo_url
                      - name
                      - region
                      - revenue_range
                      - slug
                      - specialties
                      - staff_count
                      - staff_count_range
                      - tagline
                      - website_url
                    additionalProperties: false
                    description: The company's LinkedIn page; `null` when it has none.
                  is_current:
                    type: boolean
                    description: '`true` for a role the member still holds.'
                  is_top_card:
                    type: boolean
                    description: >-
                      `true` when LinkedIn shows this company in the profile's
                      header.
                  location:
                    type:
                      - string
                      - 'null'
                    description: Where the role is; `null` when not listed.
                  started_on:
                    type:
                      - string
                      - 'null'
                    description: >-
                      When the role started, `YYYY-MM-DD` (January 1st when
                      LinkedIn shows only a year); `null` when the profile shows
                      no start date.
                  title:
                    type: string
                    description: The member's title in this role.
                required:
                  - company_id
                  - company_name
                  - description
                  - employment_status
                  - ended_on
                  - entreprise
                  - is_current
                  - is_top_card
                  - location
                  - started_on
                  - title
                additionalProperties: false
              description: Work history, current roles included; empty when none.
            languages:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                    description: The language.
                  proficiency:
                    type:
                      - string
                      - 'null'
                    description: >-
                      LinkedIn's proficiency code, e.g. `ELEMENTARY`,
                      `NATIVE_OR_BILINGUAL`; `null` when the member chose none.
                required:
                  - name
                  - proficiency
                additionalProperties: false
              description: Languages on the profile; empty when none.
            skills:
              type: array
              items:
                type: object
                properties:
                  assessment_verified:
                    type:
                      - boolean
                      - 'null'
                    description: >-
                      `true` when the member passed LinkedIn's assessment for
                      this skill; `null` when unknown.
                  endorsement_count:
                    type: integer
                    description: How many members endorsed this skill.
                  name:
                    type: string
                    description: The skill.
                required:
                  - assessment_verified
                  - endorsement_count
                  - name
                additionalProperties: false
              description: Skills on the profile; empty when none.
          additionalProperties: false
          description: >-
            The profile's lists. iBlinked leaves out a list it has nothing for,
            never `[]`: `educations`, `skills` and `languages` are often absent;
            `experiences` goes by the same rule.
        seniority:
          type:
            - string
            - 'null'
          description: >-
            iBlinked's seniority level for the member's current role; `null`
            when it has none.
        served_from:
          type: string
          description: >-
            Where iBlinked served this profile from, e.g. `cache` (its stored
            copy, as fresh as `last_refreshed_at`).
        slug:
          type: string
          description: 'The profile''s public slug: linkedin.com/in/<slug>.'
        sub_role:
          type:
            - string
            - 'null'
          description: >-
            iBlinked's normalized `current_title`, lowercase (e.g. `co chair`);
            `null` when iBlinked has none.
        summary:
          type:
            - string
            - 'null'
          description: The profile's About text; `null` when empty.
        test_scores:
          type: array
          items:
            type: object
            properties:
              $type:
                type: string
                description: >-
                  LinkedIn's internal type of the record
                  (`com.linkedin.talent.common.TestScore`).
              dateOn:
                type: object
                properties:
                  $type:
                    type: string
                    description: >-
                      LinkedIn's internal type of the record
                      (`com.linkedin.common.Date`).
                  year:
                    type: integer
                    description: The year.
                  month:
                    type: integer
                    description: The month, 1 to 12.
                  day:
                    type: integer
                    description: >-
                      The day of the month; absent when LinkedIn shows only a
                      month.
                required:
                  - $type
                  - year
                  - month
                additionalProperties: false
                description: When the test was taken.
              description:
                type: string
                description: The member's text about it; absent when none.
              id:
                type: integer
                description: LinkedIn's id of the test score.
              name:
                type: string
                description: The test's name (e.g. `IICRC`).
              score:
                type: string
                description: The score, as the member wrote it (e.g. `90`, `97A`).
            required:
              - $type
              - dateOn
              - id
              - name
              - score
            additionalProperties: false
          description: Test scores on the profile; empty when none.
        token:
          type: string
          description: >-
            iBlinked's id of the profile, the LinkedIn member token (`ACoAA…`):
            send it as `token` to fetch the same profile.
        volunteering:
          type: array
          items:
            type: object
            properties:
              cause:
                type:
                  - string
                  - 'null'
                description: >-
                  The cause, as LinkedIn's code (e.g. `environment`); `null`
                  when none is given.
              company_id:
                type:
                  - integer
                  - 'null'
                description: >-
                  LinkedIn company id of the organization; `null` when it has no
                  LinkedIn page.
              company_name:
                type: string
                description: The organization.
              description:
                type:
                  - string
                  - 'null'
                description: The description; `null` when none.
              ended_on:
                type:
                  - string
                  - 'null'
                description: >-
                  When it ended, as LinkedIn shows it (e.g. `01/2020`); `null`
                  when ongoing.
              position:
                type: integer
                description: Its order on the profile, from 0.
              role:
                type: string
                description: The member's role.
              started_on:
                type:
                  - string
                  - 'null'
                description: >-
                  When it started, as LinkedIn shows it (e.g. `11/2018`); `null`
                  when not listed.
            required:
              - cause
              - company_id
              - company_name
              - description
              - ended_on
              - position
              - role
              - started_on
            additionalProperties: false
          description: Volunteering on the profile; empty when none.
        websites_extra:
          type: array
          items:
            type: object
            properties:
              category:
                type: string
                description: LinkedIn's category of the website, e.g. `COMPANY`.
              url:
                type: string
                description: The website.
            required:
              - category
              - url
            additionalProperties: false
          description: Other websites on the profile; empty when none.
      required:
        - certifications
        - courses
        - current_companies
        - current_company_id
        - current_company_name
        - current_title
        - first_name
        - follower_count
        - geo_id
        - headline
        - honors
        - industry
        - industry_id
        - job_function
        - last_name
        - last_refreshed_at
        - location
        - location_country
        - member_id
        - num_connections
        - patents
        - personal_website
        - photo_root_url
        - photo_segment
        - photo_url
        - publications
        - recommendations
        - region
        - sections
        - seniority
        - served_from
        - slug
        - sub_role
        - summary
        - test_scores
        - token
        - volunteering
        - websites_extra
      additionalProperties: false
      description: iBlinked's profile, as iBlinked answers it
    IBlinkedNotFound:
      type: object
      properties:
        found:
          type: boolean
          description: 'Always `false`: iBlinked has no such profile. Not charged.'
        token:
          type: string
          description: The `token` you sent.
      required:
        - found
        - token
      additionalProperties: false
      description: iBlinked has no such profile; not charged
    DatacircleMeta:
      type: object
      description: Datacircle's only addition to the provider's answer
      required:
        - provider
        - credits_cost
        - credits_remaining
      properties:
        provider:
          type: string
          enum:
            - iblinked
            - up2data
          description: which provider answered
        credits_cost:
          type: number
          description: >-
            the credit this call cost, in USD: the provider's price, no markup;
            0 when Datacircle answers from what it already holds
        credits_remaining:
          type: number
          description: >-
            the credit you have left after this call, in USD (`balance_usd` in
            `GET /credits/`)
      additionalProperties: false
  securitySchemes:
    token:
      type: apiKey
      in: header
      name: Authorization
      description: '`Token <your API key>`'

````

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