---
title: "The identity account view for a session bearer. Read-only: key metadata, balance, usage and credit history; never key plaintext, which does not exist server-side."
method: GET
path: "/v1/console/self"
tags: ["console"]
---

# The identity account view for a session bearer. Read-only: key metadata, balance, usage and credit history; never key plaintext, which does not exist server-side.

`GET /v1/console/self`

## Request

- Base URL: `https://api.mapmap.ai`
- URL: `https://api.mapmap.ai/v1/console/self`
- Auth: none declared

## Response `200`

Identity view for the session

- ConsoleSelfResponse: Response for `GET /v1/console/self`, the identity account view.
  - `balance_millipence` integer, required: Prepaid balance in internal millipence.
  - `balance_pence` integer, required: Prepaid balance in pence (floor of the millipence balance).
  - `created_at` string, required: RFC 3339 identity creation timestamp.
  - `email` string, required: Delivery email of the identity.
  - `history` LedgerEntry[], required: Credit history, oldest first.
    - `balance_after_millipence` integer, required: Balance after this credit was applied, in millipence.
    - `created_at` string, required: RFC 3339 timestamp.
    - `delta_millipence` integer, required: Credited amount in millipence.
    - `reason` string, required: Idempotency reason, e.g. `stripe:cs_…`.
  - `keys` ConsoleKey[], required: Keys of this identity, newest first (metadata only).
    - `created_at` string, required: RFC 3339 creation timestamp.
    - `expires_at` string, nullable: RFC 3339 expiry (provisional keys only).
    - `key_id` string, required: Key id (UUID), safe to display; it is not a credential.
    - `label` string, required: Human-readable label (the `label` given at issuance, or the email).
    - `pending` boolean, required: `true` for a live key that does not act for the account yet: an unconfirmed key on an account somebody has verified, which anyone who typed the address may have asked for. The owner confirms it (`POST /v1/console/keys/{key_id}/confirm`) or revokes it (`POST /v1/console/keys/{key_id}/revoke`).
    - `request` KeyRequestView, required: What the owner is shown about one key request.
      - `app` string, nullable: The MapMap app the request SAID it came from (its label is one of the apps'), or `null` for any other label, which is never repeated.
      - `device` string, required: Coarse device class read from the user agent.
      - `requested_at` string, required: RFC 3339 time the key was requested.
      - `requested_at_text` string, required: The same time in words, UTC: "1 October 2026 at 14:05 UTC".
      - `source` string, required: One sentence for a person: "The request said it came from the MapMap Nav app." or "The request did not say which app it came from."
    - `revoked_at` string, nullable: RFC 3339 revocation timestamp, if revoked.
    - `state` string, required: Lifecycle state: `provisional` or `verified`.
    - `used_this_month` integer, required: Requests recorded for this key this calendar month (flushed rows).
  - `monthly_quota` integer, required: Monthly quota currently applied to verified keys of this identity.
  - `used_this_month` integer, required: Requests used across the identity this calendar month.

## Other responses

- `401`: Missing, unknown, revoked or expired session
- `501`: Console not configured

---

[API](https://skmtc.dev/mapmap/apis/sn-gateway.md) · [All operations](https://skmtc.dev/mapmap/apis/sn-gateway/llms.txt) · [OpenAPI document](https://skmtc.dev/mapmap/apis/sn-gateway/revisions/2293be8b4c38?raw)
