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

# Get account

> Authenticated organization, access, plan, quotas, webhook configuration, Slack status, and notification preferences.

Returns the authenticated organization's account summary. It is read-only: the request does not change quotas, notification preferences, webhook settings, or Slack state. Customer API keys are scoped to their own organization; the platform key can use `X-FreshTalent-Org-Id` as described in [Authentication](/authentication).

This endpoint reports the configured default webhook URL as a boolean only. The Gateway does not push events to that URL. Poll [List events](/api-reference/events/list) for membership-scoped profile diffs.

## Inputs

There are no path parameters, query parameters, or request body fields.

## Response

```json 200 theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "data": {
    "org": {
      "id": "a7590925-3e96-4f89-898c-bf7ed02fbd97",
      "name": "Acme",
      "slug": "acme",
      "plan": "unlimited",
      "trial_ends_at": null
    },
    "access": { "allowed": true },
    "quota": {
      "daily_uniques": {
        "limit": null,
        "remaining": null,
        "enforced": false
      },
      "watch_slots": {
        "included": 1000,
        "used": 234,
        "max": 1000,
        "remaining": 766
      }
    },
    "webhook": { "configured": true },
    "slack": { "connected": true, "team_name": "Acme" },
    "signals": {
      "fields": [
        "open_to_work",
        "between_roles",
        "left_company",
        "joined_company",
        "removed_position"
      ],
      "email_enabled": true,
      "slack_enabled": true
    }
  }
}
```

This endpoint does not require active subscription access, so a valid key can still read `access.allowed: false` after a trial ends.

Schema details:

* `org.id` is a UUID string; `org.name`, `org.slug`, and `org.plan` are strings. `signals.fields` and `signals.emails` are not interchangeable: this summary returns field names, not recipient addresses.

* `org.trial_ends_at` and `slack.team_name` are `string | null`. `access.allowed` and all other booleans are non-nullable.

* `quota.daily_uniques.limit` and `.remaining` are `integer | null`; `.enforced` is currently always `false` in the Gateway response.

* `quota.watch_slots.included`, `.used`, `.max`, and `.remaining` are integers. `used` counts distinct `watching` LinkedIn URLs that are not already represented in the index graph. `remaining` is never below zero.

* `watch_slots.included` is `0` for `free` and `index`, and `1000` for `unlimited`. `max` uses a positive organization `max_people_monitored` setting when present, otherwise the plan inclusion when positive, otherwise the default `1000`.

* `webhook.configured` means a default webhook URL exists in the organization settings. The URL and secret are never returned here.

* `signals.fields` contains the stored, deduplicated signal field names. The Gateway recognizes `open_to_work`, `between_roles`, `exploring`, `left_company`, `joined_company`, `removed_position`, `headline`, `about`, and `role_description`. `email_enabled` and `slack_enabled` are booleans.

## Errors and retries

| Status | Meaning                                | Recovery                                                                    |
| ------ | -------------------------------------- | --------------------------------------------------------------------------- |
| `400`  | Invalid platform-org scoping header    | Send a valid UUID in `X-FreshTalent-Org-Id`, or omit it for a customer key. |
| `401`  | Missing, malformed, or revoked API key | Supply a valid key.                                                         |
| `429`  | Shared Gateway limit exceeded          | Honor `Retry-After` and back off.                                           |
| `5xx`  | Gateway or dependency failure          | Retry this read with bounded backoff.                                       |

This read is safe to retry on transient network failure, `429`, or `5xx`. Do not retry `400` or `401` unchanged. The default Gateway limit is 300 requests per minute per client IP, not per API key.

<RequestExample>
  ```bash cURL theme={"theme":{"light":"github-light","dark":"github-dark"}}
  curl --fail-with-body --max-time 30 "https://api.freshtalent.ai/v1/me" \
    -H "Authorization: Bearer $FRESHTALENT_API_KEY"
  ```

  ```js JavaScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
  const response = await fetch("https://api.freshtalent.ai/v1/me", {
    signal: AbortSignal.timeout(30_000), headers: { Authorization: `Bearer ${process.env.FRESHTALENT_API_KEY}` },
  });
  if (!response.ok) throw new Error(`FreshTalent HTTP ${response.status}`);
  const account = (await response.json()).data;
  console.log(account.org.slug, account.quota.watch_slots.remaining);
  ```

  ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
  import json
  import os
  from urllib.request import Request, urlopen

  request = Request(
      "https://api.freshtalent.ai/v1/me",
      headers={"Authorization": "Bearer " + os.environ["FRESHTALENT_API_KEY"]},
  )
  with urlopen(request, timeout=30) as response:
      account = json.load(response)["data"]
  print(account["org"]["slug"], account["quota"]["watch_slots"]["remaining"])
  ```
</RequestExample>

## Related

* [Get notification preferences](/api-reference/signals/get-preferences)
* [Update notification preferences](/api-reference/signals/update-preferences)
* [List events](/api-reference/events/list)
* [Authentication](/authentication) and [Rate limits](/rate-limits)
