Leadfeeder API
    • Leadfeeder API
    • Authentication
    • Getting Started
    • Rate Limits
    • Relationships
    • Company ID Lifecycle
    • OpenAPI Specification Access
    • List of NACE / WZ codes
    • List of Industries
    • AI & MCP (Beta)
      • Overview of the Leadfeeder MCP Server
      • Quickstart
      • Connect your AI tool
      • Authentication and permissions
    • Account
      • List Accounts
    • Companies
      • Get Company Details
      • Create Company Enrichment Job
      • Estimate Company Enrichment Job
      • Retrieve Companies
      • Company Financial Reports
      • Get Company Enrichment Job Status
      • Retrieve Company IPs
      • Match Companies
      • Search Companies
      • Search Company Signals
      • Update a Company
      • Remove Company from Lists
      • Add Company to Lists
      • Unassign Tags from Company
      • Assign Tags to Company
    • Contacts
      • Get Contact Details
      • Create Find Contact Data Job
      • Estimate Find Contact Data Job
      • Retrieve Contacts
      • Get Find Contact Data Job Status
      • Search Contacts
      • Update a Contact
      • Remove Contact from Lists
      • Add Contact to Lists
    • Web Visits
      • How to Create Custom Feed
      • Custom Feed - Filter Reference
      • Search Web Visits
      • Retrieve Custom Feeds
      • Retrieve Visitor Companies
      • Create a Custom Feed
      • Get Custom Feed Details
      • Update Custom Feed
      • Delete a Custom Feed
      • Retrieve Custom Feeds Folders
      • Retrieve Web Visits Tracker Script
    • Campaigns
      • Retrieve Campaigns
      • Get Campaign Details
      • Update Campaign
      • Retrieve Campaign Stats
    • IP
      • Enrich Company IP Address
    • Buyer Personas
      • Retrieve Buyer Personas
      • Create a Buyer Persona
      • Get Buyer Persona Details
      • Update a Buyer Persona
      • Delete a Buyer Persona
    • Ideal Customer Profiles
      • Retrieve Ideal Customer Profiles
      • Create an Ideal Customer Profile
      • Retrieve Company ICP Matches
      • Delete an Ideal Customer Profile
      • Get Ideal Customer Profile Details
      • Update an Ideal Customer Profile
    • Tags
      • Retrieve Tags
      • Create Tag
      • Create Batch Add Tags Job
      • Get Batch Add Tags Job
      • Create Batch Remove Tags Job
      • Delete Tag
      • Get Batch Remove Tags Job
      • Get Tag Details
      • Update Tag
    • Lists
      • Retrieve Lists
      • Create a List
      • Create Batch Add to List Job
      • Get List Details
      • Get Batch Add to List Job
      • Delete List
      • Create Batch Remove from List Job
      • Get Batch Remove from List Job
      • Retrieve Company List Memberships
      • Retrieve Contact List Memberships
      • Update List
      • Retrieve List Items
    • Custom Fields
      • Retrieve Custom Fields
      • Create Custom Field
      • Get Custom Field Details
      • Delete Custom Field
      • Update Custom Field
    • Users
      • Get Current User
    • Usage
      • Get Endpoints Usage
    • Reference Data
      • Get Geo Suggestions
      • Get Countries with Regions
    • Settings
      • Update Cookie Consent Settings
      • Get Data Processing Settings
      • Get Cookie Consent Settings
      • Update Data Processing Settings
    • Schemas
      • AccountCompanyV1
      • AccountSummaryV1
      • AccountV1
      • ApiUsageV1
      • BatchAddTagsJobV1
      • BatchAddToListJobV1
      • BatchRemoveFromListJobV1
      • BatchRemoveTagsJobV1
      • BuyerPersonaRequestV1
      • BuyerPersonaV1
      • CampaignLocationV1
      • CampaignSettingsV1
      • CampaignStatsV1
      • CampaignSummaryV1
      • CampaignV1
      • CompaniesAdvancedSearchFilterItem
      • CompanyFinancialsV1
      • CompanyIpV1
      • CompanyLocationV1
      • CompanyMatchV1
      • CompanySummaryV1
      • CompanyV1
      • ContactFilterGroupsV1
      • ContactSummaryV1
      • ContactV1
      • CookieConsentSettingsV1
      • CountryV1
      • CustomFeedFolderV1
      • CustomFeedRequestV1
      • CustomFeedV1
      • CustomFieldV1
      • DataProcessingSettingsV1
      • CRMUserV1
      • EnrichedIpV1
      • EnrichmentJobV1
      • CRMOrganizationV1
      • ErrorObjectV1
      • CRMContactV1
      • FindContactDataJobV1
      • GeoSuggestionV1
      • ICPV1
      • CRMLeadV1
      • IcpRequestV1
      • CRMConnectionV1
      • IpAddressExtendedV1
      • CRMSuggestionV1
      • IpLocationV1
      • ListV1
      • CRMGroupConnectionV1
      • LocationV1
      • MaskedCompanySummaryV1
      • MaskedContactSummaryV1
      • NetworkV1
      • SignalV1
      • TagV1
      • UserV1
      • VisitLocationV1
      • WebVisitV1
      • WebVisitsTrackerScriptV1

    Authentication

    All requests to the Leadfeeder API must be authenticated. There are two ways to do it, and both give you access to the same API.
    API keys are tied to a single user and do not expire. They are the fastest way to get started.
    OAuth 2.0 is tied to an application. Users sign in with their own Leadfeeder account and approve the access the application asks for, and the application receives a short-lived token limited to the scopes it was granted.

    Choosing an authentication method#

    Use an API key for a script you run yourself, a one-off data pull, or an internal tool with a single operator.
    Use OAuth 2.0 when the integration is used by more than one person, when it connects Leadfeeder to another system such as a CRM, when you need to limit exactly what it can read and write, or when long-lived credentials are not acceptable in your production environment.
    Existing API key integrations keep working unchanged. You can run both side by side.
    Not sure which you need? See What is OAuth for the Leadfeeder API? in the Help Center.

    Getting your API key#

    To generate an API key:
    1.
    Log in to the Leadfeeder platform
    2.
    Navigate to Settings ⚙ → Personal → API Keys
    3.
    Create a new API key
    Note: If you do not see the API keys section, your user may not have the required permissions.
    Please contact your account administrator to grant access.

    API Key Authentication#

    Each Leadfeeder user can generate their own API keys.
    A valid API key must be included in every request using the X-Api-Key header.
    Example

    Accounts and Permissions#

    With a valid API key, you can access all Leadfeeder accounts your user has permissions for.
    Most endpoints require an account_id parameter to specify which account’s data should be retrieved.
    To find available accounts, call the /accounts endpoint and use the id from the desired account.
    Example
    If you only need the ID of one account, you can copy it directly from
    Settings ⚙ → Account in the app. See Getting Started for the steps.

    Error Handling#

    If the API key is missing or invalid, the API will return a 403 Forbidden error.
    Missing API Key#
    {
      "code": "missing_token",
      "message": "You need to pass a header named `X-Api-Key` that contains a valid API key."
    }
    Invalid API Key#
    {
      "code": "invalid_api_key",
      "message": "The provided API key is invalid. Please generate a new API key."
    }
    Missing or expired access token#
    Returned when the access token does not carry the scope the endpoint requires.
    {
        "code": "invalid_token",
        "message": "The access token is missing, expired, or invalid. Request a new token."
    }
    Missing scope#
    {
        "code": "insufficient_scope",
        "message": "The access token does not include the scope required for this endpoint."
    }
    Missing scope#
    Returned when the scope is present but the signed-in user does not have the matching permission in Leadfeeder.
    {
        "code": "forbidden",
        "message": "The authenticated user does not have permission to perform this action."
    }

    OAuth 2.0 authentication#

    OAuth lets an application call the API on behalf of a Leadfeeder user, with access limited to the scopes that user approved.

    Register an application#

    Before you can use OAuth, someone with the Applications Management permission needs to register an application in Settings > Company > Developer Access > Applications. Registering it produces a Client ID and a Client Secret. See How to create and manage an OAuth application for the full walkthrough.

    Endpoints#

    SettingValue
    Authorization URLhttps://api.leadfeeder.com/v1/oauth/authorize
    Access Token URLhttps://api.leadfeeder.com/v1/oauth/token
    Refresh Token URLhttps://api.leadfeeder.com/v1/oauth/token
    Grant typeAuthorization Code with PKCE
    Code challenge methodSHA-256
    Client authenticationSend client credentials in the request body
    Scope formatSpace separated list
    The Client Credentials grant is not supported. The Leadfeeder API operates at the level of an individual user, so every request is made on behalf of a signed-in person.

    Using the access token#

    Send the token as a bearer token on every request. As with API keys, most endpoints also need account_id.
    GET /v1/companies/{id}?account_id=12345 HTTP/1.1 Host: api.leadfeeder.com Authorization: Bearer YOUR_ACCESS_TOKEN

    Scopes#

    Every endpoint in this reference states the scope it requires. See OAuth applications and scopes for the full list and how scopes combine with platform permissions.
    Modified at 2026-08-26 06:58:05
    Previous
    Leadfeeder API
    Next
    Getting Started
    Built with