Get the authenticated account
Verifies the PAT and returns the authenticated account's basic info.
On this page
Verifies the PAT and returns the authenticated account's basic info. Use it to verify a token and confirm which account it belongs to, for example on an integration's connection screen.
Unlike every other endpoint, /me does NOT plan-gate. Free-plan PATs authenticate successfully here so an integration can detect a free-plan account and prompt the user to upgrade.
Endpoint
http
GET /api/v1/me
Authentication
Bearer Personal Access Token. See Authentication.
Example request
curl https://www.voicegram.io/api/v1/me \
-H "Authorization: Bearer vg_pat_<your-token>"Responses
200OK
Account info
| Field | Type | Required | Description |
|---|---|---|---|
account_id | string (uuid) | yes | Stable account identifier |
account_name | string | yes | Display name of the account (or "Unnamed Account" if unset). |
plan_name | enum ("free", "starter", "pro", "business", "enterprise") | yes | Plan slug. Free-plan accounts can call /me but no other endpoint. |
plan_tier_index | integer | yes | Position of plan_name in the canonical tier ordering [free, starter, pro, business, enterprise]. Useful for "is plan at least X?" checks without coupling to the slug list. |
plan_retention_days | integer | null | yes | How many days completed voicegrams are retained for this account before the audio is deleted. null means unlimited retention (Business / Enterprise). This is the account's own retention window, useful for surfacing "your recordings are kept for N days" in an integration. |
json
{
"account_id": "550e8400-e29b-41d4-a716-446655440000",
"account_name": "Acme Corp",
"plan_name": "pro",
"plan_tier_index": 2,
"plan_retention_days": 365
}
401Unauthorized
The PAT is missing, malformed, expired, or revoked.
See Errors for the shared error response shape.
Need help? Email support@voicegram.io.