Leadspace Enrichment API

Single and bulk person and company enrichment

Business capability
Customer Data Management BC-420.10

Operations 2

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /enrichment/enrich/single Enrich one person or company record instantly · Enrich a single person and/or company record #
Ask an LLM
“How do I enrich a single lead or account and get the data back right away?”
“What fields are required to enrich one person, like first name, last name and email?”
Tell an agent
Enrich person {person} right now and return the matched details.
Look up firmographics for the single company {company}.
POST /enrichment/enrich/bulk Submit a batch of records for enrichment · Submit a bulk enrichment job #
Ask an LLM
“How do I enrich hundreds of leads at once in Leadspace?”
“What is the maximum number of records allowed in one bulk enrichment request?”
Tell an agent
Submit these records for bulk enrichment: {data}.
Queue bulk enrichment of {data} and notify {callbackUrl} when processing completes.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/leadspace:leadspace-enrichment-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

leadspace-enrichment-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Leadspace API v4 Enrichment API
  description: The Leadspace Enrichment API enriches person (lead/contact) and company (account) records against the Leadspace Universal Graph (v4 data graph). Single Direct requests are synchronous; Bulk requests accept up to 500 records per POST and are retrieved asynchronously by polling a results endpoint or via a callback URL. This document was generated by API Evangelist from Leadspace's published technical specifications; Leadspace does not publish a machine-readable OpenAPI definition.
  version: '4.0'
  contact:
    name: Leadspace Support
    url: https://support.leadspace.com/hc/en-us
    email: support@leadspace.com
  termsOfService: https://www.leadspace.com/service-support-terms
servers:
- url: https://apigw.leadspace.com
  description: Leadspace API gateway (production)
security:
- bearerAuth: []
tags:
- name: Enrichment
  description: Single and bulk person and company enrichment
paths:
  /enrichment/enrich/single:
    post:
      operationId: enrichSingleRecord
      summary: Enrich a single person and/or company record
      description: Synchronously enriches one record. Account enrichment requires a company name. Person enrichment requires first name, last name, and one of company name, email address, or website.
      tags:
      - Enrichment
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SingleEnrichmentRequest'
      responses:
        '200':
          description: The enrichment request was successfully processed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnrichmentResult'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '405':
          description: Invalid HTTP method
        '415':
          description: Bad or missing HTTP headers
        '427':
          $ref: '#/components/responses/InsufficientCredits'
        '429':
          $ref: '#/components/responses/RateLimitExceeded'
        '500':
          $ref: '#/components/responses/ServerError'
  /enrichment/enrich/bulk:
    post:
      operationId: enrichBulkRecords
      summary: Submit a bulk enrichment job
      description: Accepts up to 500 records per request and returns a polling URI. An optional callbackUrl receives a notification when processing completes.
      tags:
      - Enrichment
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkEnrichmentRequest'
      responses:
        '202':
          description: The bulk job was successfully accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkAccepted'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '427':
          $ref: '#/components/responses/InsufficientCredits'
        '500':
          $ref: '#/components/responses/ServerError'
      callbacks:
        bulkComplete:
          '{$request.body#/callbackUrl}':
            post:
              operationId: bulkCompleteCallback
              summary: Bulk completion callback
              requestBody:
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/BulkCallback'
              responses:
                '200':
                  description: Callback acknowledged
components:
  schemas:
    CompanyFunding:
      type: object
      properties:
        last_round_investor_count:
          type: number
        total_rounds_count:
          type: number
        last_round_date:
          type: string
        last_round_money_raised:
          type: string
        last_round_type:
          type: string
        cb_url:
          type: string
    AddressInput:
      type: object
      properties:
        country:
          type: string
        state:
          type: string
        city:
          type: string
        street:
          type: string
        postalcode:
          type: string
    EnrichedRecord:
      type: object
      properties:
        person:
          $ref: '#/components/schemas/EnrichedPerson'
        company:
          $ref: '#/components/schemas/EnrichedCompany'
        enrichment_status:
          type: string
          enum:
          - Not Enriched
          - Company Enriched
          - Person Enriched
          - Person & Company Enriched
        cdi_matched:
          type: string
        total_scores:
          type: array
          items:
            $ref: '#/components/schemas/ProfileScore'
        max_positive_total_score_profiles:
          type: array
          items:
            type: string
    BulkEnrichmentRequest:
      type: object
      required:
      - data
      properties:
        data:
          type: array
          maxItems: 500
          description: Up to 500 records per POST
          items:
            $ref: '#/components/schemas/SingleEnrichmentRequest'
        callbackUrl:
          type: string
          description: URL Leadspace calls back when bulk processing completes
        external_bulk_id:
          type: string
    PersonInput:
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        email:
          type: string
        title:
          type: string
        person_phone:
          type: string
        person_country:
          type: string
        linkedinUrl:
          type: string
    CompanyInput:
      type: object
      properties:
        lsid:
          type: string
          description: Leadspace company identifier; when supplied it is matched on first
        ugLsid:
          type: string
          description: Universal Graph company identifier
        name:
          type: string
        website:
          type: string
        companyLinkedinUrl:
          type: string
        address:
          $ref: '#/components/schemas/AddressInput'
    EnrichmentResult:
      type: object
      properties:
        status:
          type: string
          enum:
          - success
          - failure
        external_id:
          type: string
        data:
          $ref: '#/components/schemas/EnrichedRecord'
    ProfileScore:
      type: object
      properties:
        profile_name:
          type: string
        score:
          type: object
          properties:
            value:
              type: number
            bucket:
              type: string
              enum:
              - A
              - B
              - C
              - D
    EnrichedAddress:
      type: object
      properties:
        country:
          type: string
        state:
          type: string
        city:
          type: string
        region:
          type: string
        address:
          type: string
        zipcode:
          type: string
    DepartmentSize:
      type: object
      properties:
        hr:
          type: number
        sales:
          type: number
        mgmt:
          type: number
        product_mgmt:
          type: number
        it:
          type: number
        administration:
          type: number
        marketing:
          type: number
        operations:
          type: number
        rnd:
          type: number
        business_dev:
          type: number
        finance:
          type: number
    EnrichedCompany:
      type: object
      properties:
        ug_company_id:
          type: string
          description: Leadspace unique company identifier
        ls_id:
          type: string
          description: Legacy v3 company identifier that mirrors ug_company_id; scheduled for sunset in 2026
        name:
          type: string
        original_name:
          type: string
        description:
          type: string
        website:
          type: string
        phone:
          type: string
        industry:
          type: string
        sub_industry:
          type: string
        sic:
          type: string
        sicDescription:
          type: string
        naics:
          type: string
        naicsDescription:
          type: string
        ownership:
          type: string
        linkedin_profile:
          type: string
        latitude:
          type: string
        longitude:
          type: string
        primary_location:
          type: string
        address:
          $ref: '#/components/schemas/EnrichedAddress'
        employees:
          type: object
          properties:
            exact:
              type: number
            range:
              type: string
        revenue_dollar:
          type: object
          properties:
            exact:
              type: number
            range:
              type: string
        matching_confidence:
          type: object
          properties:
            level:
              type: string
              enum:
              - HIGH
              - MEDIUM
              - LOW
              - VERY LOW
        family_tree:
          $ref: '#/components/schemas/CompanyFamilyTree'
        department_size:
          $ref: '#/components/schemas/DepartmentSize'
        funding:
          $ref: '#/components/schemas/CompanyFunding'
        investors:
          $ref: '#/components/schemas/CompanyInvestors'
        signals:
          type: object
          properties:
            fortune_500_rank:
              type: number
            fortune_1000_rank:
              type: number
            g2k_rank:
              type: number
        intent_modeling_v4:
          $ref: '#/components/schemas/IntentModeling'
        domain_intent:
          type: string
        specialties:
          type: array
          items:
            type: string
        analytics:
          type: object
          properties:
            installed_base_technologies:
              type: array
              items:
                type: string
            web_site_technologies:
              type: array
              items:
                type: string
            company_technologies_categories:
              type: array
              items:
                type: string
            customTechnologiesCategories:
              type: array
              items:
                type: string
    Error:
      type: object
      description: General Leadspace JSON error envelope
      properties:
        error:
          type: string
          description: Error description
        tracking_id:
          type: string
          description: Leadspace tracking identifier for further inspection
        request_timestamp:
          type: string
          description: Timestamp assigned when the request reached Leadspace servers
        details:
          type: string
    SingleEnrichmentRequest:
      type: object
      properties:
        person:
          $ref: '#/components/schemas/PersonInput'
        company:
          $ref: '#/components/schemas/CompanyInput'
        external_id:
          type: string
          description: External identifier echoed back on the result. Not used for processing.
        custom_fields:
          type: array
          items:
            $ref: '#/components/schemas/CustomField'
    CustomField:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
    BulkAccepted:
      type: object
      properties:
        id:
          type: string
          description: The polling endpoint URI to extract the bulk results
          examples:
          - /v3/enrichment/results/a4b6e123-8905-4dff-a966-50c3ce8f78ft
    CompanyInvestors:
      type: object
      properties:
        cb_url:
          type: string
        last_investor_name:
          type: string
        company_investors:
          type: string
    CompanyFamilyTree:
      type: object
      description: The company hierarchy in addition to the matched company
      properties:
        companies:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                - DU
                - GU
                - SITE
                - PARENT
                - HQ
                - SU
              name:
                type: string
              ls_id:
                type: string
              website:
                type: string
              phone:
                type: string
              sic:
                type: string
              naics:
                type: string
              address:
                $ref: '#/components/schemas/EnrichedAddress'
    EnrichedPerson:
      type: object
      properties:
        ug_person_id:
          type: string
          description: Unique Leadspace person identifier
        first_name:
          type: string
        last_name:
          type: string
        title:
          type: string
        department:
          type: string
        level:
          type: string
          enum:
          - C Level
          - Board Level
          - VP Level
          - Director Level
          - Manager Level
          - Staff Level
        email:
          type: string
        original_email:
          type: string
        original_email_verification_status:
          type: string
          enum:
          - VALID
          - INVALID
          - UNKNOWN
          - CATCH-ALL
        verification_status:
          type: string
          enum:
          - Moved
          - Verified
          - Not Verified
        verification_source:
          type: string
          enum:
          - Social
          - Email
          - Social & Email
        linkedin_profile:
          type: string
        phone:
          type: string
        is_retired:
          type: string
        address:
          $ref: '#/components/schemas/EnrichedAddress'
        analytics:
          type: object
          properties:
            job_functions:
              type: array
              items:
                type: string
            technologies:
              type: array
              items:
                type: string
            scores:
              type: array
              items:
                $ref: '#/components/schemas/ProfileScore'
            max_positive_score_profiles:
              type: array
              items:
                type: string
    IntentModeling:
      type: object
      properties:
        model:
          type: string
        model_level:
          type: array
          items:
            type: string
            enum:
            - High
            - Medium
            - Low
            - NO_INTENT
        source:
          type: string
          description: Either LS Intent or Bombora
        cadence:
          type: string
        new_high_intent:
          type: string
        industries:
          type: array
          items:
            type: string
        top_metros:
          type: array
          items:
            type: string
        domain_origins:
          type: array
          items:
            type: string
    BulkCallback:
      type: object
      properties:
        bulkId:
          type: string
        callbackMethod:
          type: object
          properties:
            callbackUrl:
              type: string
            pollingUrl:
              type: string
        bulkStatus:
          type: string
          enum:
          - COMPLETED
          - INSUFFICIENT_CREDITS
          - INTERNAL_ERROR
        successRecords:
          type: integer
        personEnriched:
          type: integer
        companyEnriched:
          type: integer
  responses:
    RateLimitExceeded:
      description: Rate limit was exceeded
    ServerError:
      description: Server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: The request failed due to insufficient basic input, or the JSON format is invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Unauthorized request (wrong credentials or credentials have expired)
    InsufficientCredits:
      description: Insufficient credits, or the program ID is invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Authorization header in the form 'Bearer API_KEY'. The API key is either a perpetual token issued by Leadspace or an OAuth 2.0 token obtained from POST /oauth/authorize.
externalDocs:
  description: Leadspace Single Direct API v4 - Technical Specifications
  url: https://support.leadspace.com/hc/en-us/articles/23687993264284-Leadspace-Single-Direct-API-v4-Technical-Specifications