---
title: "Get the account the API key belongs to"
method: GET
path: "/v1/accounts/me"
tags: ["Accounts"]
---

# Get the account the API key belongs to

`GET /v1/accounts/me`

## Request

- Base URL: `https://api.honkio.ca`
- URL: `https://api.honkio.ca/v1/accounts/me`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Returns the same document as GET /v1/accounts/{id}, resolving the account from the API key so no id is needed, plus `caller`: the calling key's mode and, for an OAuth connection, the client it was granted to.

Requires `account:r`.

## Response `200`

The account the API key belongs to, and who is calling.

- AccountMeDocument: The account document from GET /v1/accounts/{id}, plus who is calling.
  - `account` object, required: An account, as signup and PATCH /v1/accounts/{id} return it.
    - `id` string, required
    - `name` string, required
    - `email` string, required
    - `stripe_customer_id` string, nullable, required
    - `email_verified_at` string, date-time, nullable, required
    - `status` 'PENDING_PAYMENT' | 'ACTIVE' | 'SUSPENDED' | 'CLOSED', required
    - `balance_cents` integer, required: Credit balance in cents CAD.
    - `verified_phone` string, nullable, required
    - `phone_verified_at` string, date-time, nullable, required
    - `email_undeliverable` boolean, required: True when platform email to this address is bouncing or being marked as spam.
    - `email_undeliverable_at` string, date-time, nullable, required: The bounce or complaint that made the address unreachable.
    - `email_undeliverable_reason` string, nullable, required: BOUNCE or COMPLAINT.
    - `terms_accepted_at` string, date-time, nullable, required: When the owner accepted the Terms of Service and Privacy Policy.
    - `terms_version` string, nullable, required: The Terms version (last-updated date) that was accepted.
    - `created_at` string, date-time, required
    - `monthly_rent_cents` integer, required: Monthly rent owed on every number not yet released (ACTIVE and SUSPENDED).
    - `low_balance` boolean, required: True when the credit balance would not cover next month's phone-number rent.
    - `phone_number_limit` integer, required: Maximum phone numbers this account may hold.
    - `phone_numbers_used` integer, required: Numbers currently held (ACTIVE and SUSPENDED).
    - `email_domain_limit` integer: Maximum live sending domains this account may hold. Present only while email is available.
    - `email_domains_used` integer: Live sending domains held (every status but FAILED). Present only while email is available.
    - `inbound_email_daily_cap` integer: Received emails this account may accept per rolling 24 h before further mail is stored rejected and uncharged (0 = unlimited); the account's own override, or the platform default. Present only while email is available.
    - `inbound_email_received_24h` integer: Received emails counted against the cap above, in the current rolling 24 h window. Present only while email is available.
    - `inbound_email_daily_mb_cap` integer: Billable MB of received email (each message's started MB above the first, the part priced per MB) this account may accept per rolling 24 h; a message that would go past it is stored rejected (daily_mb_cap) and uncharged (0 = unlimited). The account's own override, or the platform default. Present only while email is available.
    - `inbound_email_mb_received_24h` integer: Billable MB counted against the MB cap above, in the current rolling 24 h window. Present only while email is available.
    - `inbound_sms_daily_cap` integer, required: Received texts this account may accept per rolling 24 h before further texts are stored uncharged and not delivered as message.received (0 = unlimited); the account's own override, or the platform default.
    - `inbound_sms_received_24h` integer, required: Received texts counted against the cap above, in the current rolling 24 h window.
  - `api_keys` object[], required: The account's active USER keys (dashboard session keys are not listed).
    - `id` string, required
    - `keyPrefix` string, required: Non-secret prefix for display and identification.
    - `mode` 'LIVE' | 'TEST', required
    - `label` string, nullable, required
    - `createdAt` string, date-time, required
    - `lastUsedAt` string, date-time, nullable, required
    - `defaultDeny` boolean, required: Present on GET /v1/accounts/me and /v1/accounts/{id}; absent from the login response.
    - `permissions` ApiKeyPermissions, required: Per-resource permissions. Each key is a resource name; value is a string of allowed operation letters: r=read, w=write/create, m=modify/update, d=delete. A missing key denies all access to that resource.
    - `email_domain_ids` string[], nullable, required: The email domains this key may send from (ids from /v1/email-domains): null when unrestricted, [] when restricted to none (its domains were deleted). Present on GET /v1/accounts/me and /v1/accounts/{id}; absent from the login response.
    - `oauth_grant` boolean, required: True when an OAuth connection holds this key: it can be revoked but not rotated (409 CONFLICT, details.reason "oauth_grant"). Present on GET /v1/accounts/me and /v1/accounts/{id}; absent from the login response.
  - `features` object, required: Platform capabilities currently available to this account.
    - `email` boolean, required: True when the email product is live; false while it is still gated.
  - `caller` AccountCaller, required: Who is calling: the key's mode and, for an OAuth connection, its client.
    - `mode` 'LIVE' | 'TEST', required: The mode of the key that made this request. A TEST key is a sandbox: nothing it sends reaches a carrier or is charged.
    - `oauth_client` object, nullable, required: The OAuth client this request's access token was granted to; null when the request used an API key.
      - `id` string, required: The client id: its metadata document URL, or a dcr_ id for a client that registered itself.
      - `name` string, required: The client name shown on the consent page when the connection was approved.

## Other responses

- `401`: Missing, invalid, revoked or expired API key.
- `402`: The account has no balance, or a LIVE key was used before the first top-up.
- `403`: The API key lacks the permission this operation requires, or the account is suspended or closed.
- `404`: NOT_FOUND: no such resource on this account.
- `429`: Rate limit reached: 100 requests per second per account, or a route-specific limit (Retry-After set where one applies).
- `500`: Unexpected server error.

---

[API](https://skmtc.dev/honkio/apis/honkio-api.md) · [All operations](https://skmtc.dev/honkio/apis/honkio-api/llms.txt) · [OpenAPI document](https://skmtc.dev/honkio/apis/honkio-api/revisions/ce4ed3fe9691?raw)
