---
title: "Reveal contact details (standard)"
method: POST
path: "/v1/contact-details/single"
tags: ["Contact details"]
---

# Reveal contact details (standard)

`POST /v1/contact-details/single`

Standard synchronous contact reveal — the best balance of speed, cost, and coverage. Accepts a LinkedIn profile URL, slug, Sales Navigator URN, or numeric LinkedIn user ID; profile details are resolved automatically. For faster results at a higher credit cost, use the /contact-details/turbo/sync endpoint. For maximum coverage (async, slower, higher cost), use the /contact-details/exhaustive/start endpoint.

<span>⚡ <strong>Rate limit:</strong> 200 requests per 1 minute</span>

<span>💰 <strong>Cost:</strong> Pay only for the data you request:<br />• 5 credits for all phone numbers AND all emails<br />• 2 credits for work email only<br />• 2 credits for personal email only<br />• 3 credits for phone only<br />• 3 credits for all emails&nbsp;<span title="Pricing shown is default pricing. Actual pricing may vary. Partial reveals only bill for delivered data.">ⓘ</span></span>

<span>⏱ <strong>Recommended timeout:</strong> 2 minutes&nbsp;<span title="Recommended timeout: set your HTTP client timeout to at least 2 minutes for this endpoint.">ⓘ</span></span>

## Request body

- object
  - `apiKey` string, required — Your Fiber API key
  - `linkedinUrl` string, required — The person's LinkedIn identifier. Accepts a full LinkedIn profile URL (e.g. 'https://www.linkedin.com/in/williamhgates/'), a bare slug (e.g. 'williamhgates'), a Sales Navigator URN (e.g. 'ACwAAA-001MBbIvJon'), or a numeric LinkedIn user ID (e.g. '443105112').
  - `enrichmentType` object — The enrichment types to request. Credits are charged per selected type.
    - `getWorkEmails` boolean
    - `getPersonalEmails` boolean
    - `getPhoneNumbers` boolean
  - `patience` 'MINIMUM' | 'LOW' | 'MEDIUM' | 'HIGH' | 'EXTREME' | 'MAXIMUM' | 'null', nullable — How long to wait for email deliverability validation after a contact is found. Higher patience increases average response time but improves deliverability accuracy. MINIMUM is the least thorough bounce-detection option.
  - `validateEmails` boolean, nullable — Deprecated — use `patience` instead. When false, maps to patience: MINIMUM. Ignored if `patience` is also provided.

## Response `200`

Default Response

- object
  - `output` object, required
    - `profile` object, required
      - `name` string, nullable — The person's full name. Null when no resolved name is available.
      - `status` 'completed', required
      - `emails` object[], required
        - `email` string, required
        - `type` string, required
      - `phoneNumbers` object[], required
        - `number` string, required
        - `type` string, required
      - `success` boolean, required
      - `task_id` string, required
      - `linkedin_url` string, required
    - `done` boolean, required — Whether the enrichment is completed or not.
  - `chargeInfo` union, required
    - object — Credits were charged immediately for this operation
      - `method` 'charged-now', required
      - `creditsCharged` number, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — Credits will be charged after the operation completes
      - `method` 'charging-later', required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — Credits that were charged for an asynchronous operation
      - `method` 'charged-for-async-process', required
      - `creditsCharged` number, required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — No credits were charged for this operation
      - `method` 'free', required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — Credits were refunded for this operation
      - `method` 'credits-refunded', required
      - `creditsRefunded` number, required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
  - `warnings` object[], nullable — Warnings about extraneous fields in request
    - `field` string, required — Full path to extraneous field (e.g., 'searchParams.ExtraField')
    - `message` string, required — Warning message
  - `advice` string[], nullable — Tips, recommendations, and suggestions for using this API effectively.

## Other responses

- `400` — Default Response
- `401` — Default Response
- `402` — Default Response
- `403` — Default Response
- `404` — Default Response
- `422` — Default Response
- `429` — Default Response
- `500` — Default Response
- `503` — Default Response

---

[API](https://skmtc.net/fiber/apis/fiber-ai-api.md) · [All operations](https://skmtc.net/fiber/apis/fiber-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fiber/fiber-ai-api/revisions/87ad9a3ecc4c/schema)
