{"items":[{"type":"separator","label":"API Overview"},{"type":"link","fsPath":"index.md","metadata":{"type":"markdown"},"label":"Intro","link":"/","routeSlug":"/"},{"type":"group","label":"Quickstart","items":[{"type":"link","fsPath":"api-overview/create-an-account.md","metadata":{"type":"markdown"},"label":"Create an Account","link":"/api-overview/create-an-account","routeSlug":"/api-overview/create-an-account"},{"type":"link","fsPath":"api-overview/send-your-first-request.md","metadata":{"type":"markdown"},"label":"Send Your First Request","link":"/api-overview/send-your-first-request","routeSlug":"/api-overview/send-your-first-request"}]},{"type":"link","fsPath":"api-overview/authentication.md","metadata":{"type":"markdown"},"label":"Authentication","link":"/api-overview/authentication","routeSlug":"/api-overview/authentication"},{"type":"link","fsPath":"api-overview/credit-pricing.md","metadata":{"type":"markdown"},"label":"API Credit Pricing","link":"/api-overview/credit-pricing","routeSlug":"/api-overview/credit-pricing"},{"type":"link","fsPath":"api-overview/recipes.md","metadata":{"type":"markdown"},"label":"Recipes","link":"/api-overview/recipes","routeSlug":"/api-overview/recipes"},{"type":"separator","label":"API Reference"},{"type":"link","label":"Forager public API","link":"/openapi","routeSlug":"/openapi"},{"type":"group","label":"Job Posts","link":"/openapi/job-posts","routeSlug":"/openapi/job-posts","items":[{"label":"Job post event search","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/job-posts/datastorage_job_search_create","routeSlug":"/openapi/job-posts/datastorage_job_search_create","metadata":{"seo":{"title":"Job post event search","description":"Job post event search."}},"httpPath":"/api/{account_id}/datastorage/job_search/"},{"label":"Job post event search totals","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/job-posts/datastorage_job_search_totals_create","routeSlug":"/openapi/job-posts/datastorage_job_search_totals_create","metadata":{"seo":{"title":"Job post event search totals","description":"Job post event search totals."}},"httpPath":"/api/{account_id}/datastorage/job_search/totals/"}]},{"type":"group","label":"Organizations","link":"/openapi/organizations","routeSlug":"/openapi/organizations","items":[{"label":"Organization search","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/organizations/datastorage_organization_search_create","routeSlug":"/openapi/organizations/datastorage_organization_search_create","metadata":{"seo":{"title":"Organization search","description":"Organization search."}},"httpPath":"/api/{account_id}/datastorage/organization_search/"},{"label":"Organization search totals","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/organizations/datastorage_organization_search_totals_create","routeSlug":"/openapi/organizations/datastorage_organization_search_totals_create","metadata":{"seo":{"title":"Organization search totals","description":"Organization search totals."}},"httpPath":"/api/{account_id}/datastorage/organization_search/totals/"}]},{"type":"group","label":"People","link":"/openapi/people","routeSlug":"/openapi/people","items":[{"label":"Person detail lookup","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/people/datastorage_person_detail_lookup_create","routeSlug":"/openapi/people/datastorage_person_detail_lookup_create","metadata":{"seo":{"title":"Person detail lookup","description":"Do Person details lookup."}},"httpPath":"/api/{account_id}/datastorage/person_detail_lookup/"},{"label":"Person detail lookup by email","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/people/datastorage_person_detail_reverse_lookup_by_email_create","routeSlug":"/openapi/people/datastorage_person_detail_reverse_lookup_by_email_create","metadata":{"seo":{"title":"Person detail lookup by email","description":"Do reverse lookup of person details by email."}},"httpPath":"/api/{account_id}/datastorage/person_detail_reverse_lookup/by_email/"},{"label":"Person detail lookup by phone","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/people/datastorage_person_detail_reverse_lookup_by_phone_number_create","routeSlug":"/openapi/people/datastorage_person_detail_reverse_lookup_by_phone_number_create","metadata":{"seo":{"title":"Person detail lookup by phone","description":"Do reverse lookup of person details by phone number."}},"httpPath":"/api/{account_id}/datastorage/person_detail_reverse_lookup/by_phone_number/"},{"label":"Person role search","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/people/datastorage_person_role_search_create","routeSlug":"/openapi/people/datastorage_person_role_search_create","metadata":{"seo":{"title":"Person role search","description":"The Person Role Search endpoint lets you search for individuals based on their roles, titles, time periods, and associated organizations. You can filter by attributes like role title or description, current status, start/end dates, person name, skills, industry, and location. The response returns matching person records along with their role history and linked organization details (e.g. name, domain, founding date)."}},"httpPath":"/api/{account_id}/datastorage/person_role_search/"},{"label":"Person role search totals","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/people/datastorage_person_role_search_totals_create","routeSlug":"/openapi/people/datastorage_person_role_search_totals_create","metadata":{"seo":{"title":"Person role search totals","description":"Organization person role search totals."}},"httpPath":"/api/{account_id}/datastorage/person_role_search/totals/"}]},{"type":"group","label":"Phones","link":"/openapi/phones","routeSlug":"/openapi/phones","items":[{"label":"Phone numbers lookup","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/phones/datastorage_person_contacts_lookup_phone_numbers_create","routeSlug":"/openapi/phones/datastorage_person_contacts_lookup_phone_numbers_create","metadata":{"seo":{"title":"Phone numbers lookup","description":"The Person Phone Numbers Lookup endpoint retrieves phone numbers associated with an individual in the Forager dataset. It allows you to input identifying information (such as Linkedin handle or Forager ID) and returns available phone numbers. This API is useful for enriching person records, supporting lead generation, and verifying phone contact details within your applications."}},"httpPath":"/api/{account_id}/datastorage/person_contacts_lookup/phone_numbers/"}]},{"type":"group","label":"Personal Emails","link":"/openapi/personal-emails","routeSlug":"/openapi/personal-emails","items":[{"label":"Personal emails lookup","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/personal-emails/datastorage_person_contacts_lookup_personal_emails_create","routeSlug":"/openapi/personal-emails/datastorage_person_contacts_lookup_personal_emails_create","metadata":{"seo":{"title":"Personal emails lookup","description":"The Person Personal Emails Lookup endpoint retrieves personal email addresses associated with an individual in the Forager dataset. It allows you to input identifying information (such as Linkedin handle or Forager ID) and returns available personal contact emails. The endpoint returns only addresses on free webmail / consumer providers (Gmail, Outlook, Yahoo, iCloud, Proton, and similar). Addresses on corporate domains, educational domains (e.g., .edu, .ac.uk), and any other custom domains are excluded — including custom domains a person uses for personal purposes — to keep deliverability of the returned set high. If the filtered set is empty, the endpoint returns 200 OK with an empty body and does not consume credits."}},"httpPath":"/api/{account_id}/datastorage/person_contacts_lookup/personal_emails/"}]},{"type":"group","label":"Work Emails","link":"/openapi/work-emails","routeSlug":"/openapi/work-emails","items":[{"label":"Single work email lookup","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/work-emails/v2_datastorage_person_contacts_lookup_work_emails_create","routeSlug":"/openapi/work-emails/v2_datastorage_person_contacts_lookup_work_emails_create","metadata":{"seo":{"title":"Single work email lookup","description":"Start a work email lookup and return immediately with a job id. Identify the person either by first_name, last_name and domain, or by linkedin_public_identifier, in which case the name and the domain of their current employer are taken from the Forager dataset. The lookup itself runs asynchronously because proving an address is deliverable takes longer than a request should wait: poll the returned status_check_url until status is completed or failed. Credits are charged once, only when an address is found, and polling is always free. This endpoint is rate limited for interactive use - for enrichment runs use the bulk endpoint, which is both faster and cheaper for us to serve."}},"httpPath":"/api/v2/{account_id}/datastorage/person_contacts_lookup/work_emails/"},{"label":"Single work email lookup result","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/work-emails/v2_datastorage_person_contacts_lookup_work_emails_retrieve","routeSlug":"/openapi/work-emails/v2_datastorage_person_contacts_lookup_work_emails_retrieve","metadata":{"seo":{"title":"Single work email lookup result","description":"Return the current state of a work email lookup. status describes the job (queued, running, awaiting_provider, completed, failed) and result describes the outcome once it is terminal (found or not_found). While the job is not terminal a Retry-After header suggests when to poll again. Polling never consumes credits."}},"httpPath":"/api/v2/{account_id}/datastorage/person_contacts_lookup/work_emails/{job_id}/"},{"label":"Bulk work email lookup","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/work-emails/v2_datastorage_person_contacts_lookup_work_emails_bulk_create","routeSlug":"/openapi/work-emails/v2_datastorage_person_contacts_lookup_work_emails_bulk_create","metadata":{"seo":{"title":"Bulk work email lookup","description":"Submit many work email lookups in one request. Items already answered by our cache are resolved immediately at no vendor cost and reported as resolved_from_cache; duplicates within the request collapse into a single lookup. Your credit balance must cover the whole batch, otherwise the batch is rejected and nothing is charged. Poll the batch for progress and its items endpoint for per-lookup results."}},"httpPath":"/api/v2/{account_id}/datastorage/person_contacts_lookup/work_emails/bulk/"},{"label":"Bulk work email lookup status and results","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/work-emails/v2_datastorage_person_contacts_lookup_work_emails_bulk_retrieve","routeSlug":"/openapi/work-emails/v2_datastorage_person_contacts_lookup_work_emails_bulk_retrieve","metadata":{"seo":{"title":"Bulk work email lookup status and results","description":"Return a bulk work email lookup batch. Poll until status is completed, at which point results holds one result per submitted lookup, in the order they were submitted, each with the same shape as a single lookup result. results is empty until then, so a partial answer is never mistaken for a whole one."}},"httpPath":"/api/v2/{account_id}/datastorage/person_contacts_lookup/work_emails/bulk/{batch_id}/"}]},{"type":"group","label":"Websites","link":"/openapi/websites","routeSlug":"/openapi/websites","items":[{"label":"Website Details Lookup","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/websites/datastorage_website_detail_lookup_create","routeSlug":"/openapi/websites/datastorage_website_detail_lookup_create","metadata":{"seo":{"title":"Website Details Lookup","description":"The Website Details Lookup endpoint retrieves detailed information about a specific website, including its domain, web rank, traffic, and associated web technologies. This API is useful for analyzing website performance, understanding technology stack, and integrating website data into your applications."}},"httpPath":"/api/{account_id}/datastorage/website_detail_lookup/"}]},{"type":"group","label":"Users","link":"/openapi/users","routeSlug":"/openapi/users","items":[{"label":"Credit Balance Change Log","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/users/subscriptions_balance_change_logs_list","routeSlug":"/openapi/users/subscriptions_balance_change_logs_list","metadata":{"seo":{"title":"Credit Balance Change Log","description":"The Credit Balance Change Log endpoint provides a list of all credit balance change logs related to the current subscription. It returns a list of credit balance change logs, including the change type, change sum, and change data. This endpoint is useful for tracking and analyzing credit consumption patterns, monitoring usage, and ensuring proper subscription management."}},"httpPath":"/api/{account_id}/subscriptions/balance_change_logs/"},{"label":"Credit Consumption Totals","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/users/subscriptions_balance_change_logs_totals_retrieve","routeSlug":"/openapi/users/subscriptions_balance_change_logs_totals_retrieve","metadata":{"seo":{"title":"Credit Consumption Totals","description":"The Credit Consumption Totals endpoint calculates the total amount of credits spent during a specified timeframe. It returns the sum of all credit changes that have been made to the subscription balance during the given period. This endpoint is useful for tracking and analyzing credit consumption patterns, monitoring usage, and ensuring proper subscription management."}},"httpPath":"/api/{account_id}/subscriptions/balance_change_logs/totals/"},{"label":"List API keys","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/users/api_keys_list","routeSlug":"/openapi/users/api_keys_list","metadata":{"seo":{"title":"List API keys","description":"API view for managing API keys."}},"httpPath":"/api/api_keys/"},{"label":"Create a new API key","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/users/api_keys_create","routeSlug":"/openapi/users/api_keys_create","metadata":{"seo":{"title":"Create a new API key","description":"Handle creation of a new API key."}},"httpPath":"/api/api_keys/"},{"label":"View API key details","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/users/api_keys_retrieve","routeSlug":"/openapi/users/api_keys_retrieve","metadata":{"seo":{"title":"View API key details","description":"API view for managing API keys."}},"httpPath":"/api/api_keys/{prefix}/"},{"label":"Delete API key","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/users/api_keys_destroy","routeSlug":"/openapi/users/api_keys_destroy","metadata":{"seo":{"title":"Delete API key","description":"API view for managing API keys."}},"httpPath":"/api/api_keys/{prefix}/"},{"label":"View user information","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/users/users_current_retrieve","routeSlug":"/openapi/users/users_current_retrieve","metadata":{"seo":{"title":"View user information","description":"A view to retrieve current user details."}},"httpPath":"/api/users/current/"}]},{"type":"group","label":"Autocomplete","link":"/openapi/autocomplete","routeSlug":"/openapi/autocomplete","items":[{"label":"Industries lookup","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/autocomplete/v1_industry_lookup","routeSlug":"/openapi/autocomplete/v1_industry_lookup","metadata":{"seo":{"title":"Industries lookup","description":"Industries objects lookup."}},"httpPath":"/api/{account_id}/datastorage/autocomplete/industries/"},{"label":"Organizations lookup","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/autocomplete/v1_organization_lookup","routeSlug":"/openapi/autocomplete/v1_organization_lookup","metadata":{"seo":{"title":"Organizations lookup","description":"Organizations objects lookup."}},"httpPath":"/api/{account_id}/datastorage/autocomplete/organizations/"},{"label":"Organization keywords lookup","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/autocomplete/v1_organization_keyword_lookup","routeSlug":"/openapi/autocomplete/v1_organization_keyword_lookup","metadata":{"seo":{"title":"Organization keywords lookup","description":"Organization keywords objects lookup."}},"httpPath":"/api/{account_id}/datastorage/autocomplete/organization_keywords/"},{"label":"Locations lookup","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/autocomplete/v1_location_lookup","routeSlug":"/openapi/autocomplete/v1_location_lookup","metadata":{"seo":{"title":"Locations lookup","description":"Locations objects lookup."}},"httpPath":"/api/{account_id}/datastorage/autocomplete/locations/"},{"label":"Person skills lookup","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/autocomplete/v1_person_skill_lookup","routeSlug":"/openapi/autocomplete/v1_person_skill_lookup","metadata":{"seo":{"title":"Person skills lookup","description":"Person skills objects lookup."}},"httpPath":"/api/{account_id}/datastorage/autocomplete/person_skills/"},{"label":"Web technologies lookup","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/autocomplete/v1_web_technology_lookup","routeSlug":"/openapi/autocomplete/v1_web_technology_lookup","metadata":{"seo":{"title":"Web technologies lookup","description":"Web technologies objects lookup."}},"httpPath":"/api/{account_id}/datastorage/autocomplete/web_technologies/"}]},{"type":"group","label":"Feedback","link":"/openapi/feedback","routeSlug":"/openapi/feedback","items":[{"label":"Submit personal-email verification feedback","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/feedback/datastorage_feedback_personal_emails_create","routeSlug":"/openapi/feedback/datastorage_feedback_personal_emails_create","metadata":{"seo":{"title":"Submit personal-email verification feedback","description":"Submit verification feedback for a personal email address returned by a Forager person lookup. Required fields: email (lowercased and stripped before storage) and contact_status (one of valid or invalid). Optional: is_correct_person (boolean) — omit it, or send null, when the exchange never revealed whose address it is; an invalid address bounces before anyone can confirm a name. Omitted and null are both stored and returned as null, meaning \"unknown\", which is deliberately distinct from false (\"this is the wrong person\"). Also optional: name (the person's name the email belongs to, e.g. John Doe) and person_id. Every submission creates a new row with 201 Created."}},"httpPath":"/api/{account_id}/datastorage/feedback/personal_emails/"},{"label":"Submit phone-number verification feedback","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/feedback/datastorage_feedback_phone_numbers_create","routeSlug":"/openapi/feedback/datastorage_feedback_phone_numbers_create","metadata":{"seo":{"title":"Submit phone-number verification feedback","description":"Submit verification feedback for a phone number returned by a Forager person lookup. Required fields: phone_number (any format; it is normalised to E.164 before storage) and contact_status (one of connected or disconnected, reflecting the live-call outcome). Optional: is_correct_person (boolean — did the call confirm the number belongs to the matched person). Omit it, or send null, when the call could not answer that question — a disconnected number never reaches anyone, so there is nobody to identify. Omitted and null are both stored and returned as null, meaning \"unknown\", which is deliberately distinct from false (\"this is the wrong person\"). Also optional: name (the person's name the caller believes the number belongs to, e.g. John Doe) and person_id (associate the row with a specific Forager person ID). Every submission creates a new row with 201 Created; repeat submissions for the same contact are preserved as separate rows."}},"httpPath":"/api/{account_id}/datastorage/feedback/phone_numbers/"},{"label":"Submit work-email verification feedback","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/openapi/feedback/datastorage_feedback_work_emails_create","routeSlug":"/openapi/feedback/datastorage_feedback_work_emails_create","metadata":{"seo":{"title":"Submit work-email verification feedback","description":"Submit verification feedback for a work email address returned by a Forager person lookup. Required fields: email and contact_status (one of valid or invalid). Optional: is_correct_person — omit it, or send null, when the exchange never revealed whose address it is; null means \"unknown\" and is deliberately distinct from false (\"this is the wrong person\"). Also optional: name and person_id. Reports for the same address via both the work and personal endpoints store two distinct rows distinguished by email type."}},"httpPath":"/api/{account_id}/datastorage/feedback/work_emails/"}]},{"type":"separator","label":"Data Feeds"},{"type":"link","fsPath":"data-license/v2/data-feed-overview.md","metadata":{"type":"markdown"},"label":"Data Feed V2 Overview","link":"/data-license/v2/data-feed-overview","routeSlug":"/data-license/v2/data-feed-overview"},{"type":"link","fsPath":"data-license/v2/output-data-file-details.md","metadata":{"type":"markdown"},"label":"Output Data File Details","link":"/data-license/v2/output-data-file-details","routeSlug":"/data-license/v2/output-data-file-details"},{"type":"link","fsPath":"data-license/v2/schema/index.md","metadata":{"type":"markdown"},"label":"Schema","link":"/data-license/v2/schema","routeSlug":"/data-license/v2/schema"},{"type":"link","fsPath":"data-license/v2/faq.md","metadata":{"type":"markdown"},"label":"Frequently Asked Questions","link":"/data-license/v2/faq","routeSlug":"/data-license/v2/faq"},{"type":"group","label":"Data Delivery","items":[{"type":"link","fsPath":"data-license/v2/data-delivery-snowflake.md","metadata":{"type":"markdown"},"label":"Data Delivery Using Snowflake","link":"/data-license/v2/data-delivery-snowflake","routeSlug":"/data-license/v2/data-delivery-snowflake"},{"type":"link","fsPath":"data-license/v2/data-delivery-s3.md","metadata":{"type":"markdown"},"label":"Data Delivery Using S3","link":"/data-license/v2/data-delivery-s3","routeSlug":"/data-license/v2/data-delivery-s3"},{"type":"link","fsPath":"data-license/v2/data-delivery-gcs.md","metadata":{"type":"markdown"},"label":"Data Delivery Using GCS","link":"/data-license/v2/data-delivery-gcs","routeSlug":"/data-license/v2/data-delivery-gcs"}]}]}