API reference navigation
GET /v1/me

Current principal

Access
Authenticated (self)
Cost
Free
Rate limit
Unlimited
Quota
None

The account, actor (member or API key), plan, subscription status, resolved entitlements, and the acting member profile (null for an API key).

Responses

  • 200 The resolved principal and profile
    • accountId string required

      The account this credential acts on. A credential is bound to exactly one account; you cannot choose or switch it on a request.

    • actor one of required

      Who is acting: a person or a key. Both are first-class and follow the same usage model.

    • plan string required

      The EFFECTIVE plan. During a trial this is the trialled plan, not a separate "trial" plan, so everything you may do flows from this field.

    • planStatus string required

      The subscription status behind that plan, mirroring Stripe. Metadata for display; capability comes from `plan`.

    • trialEndsAt string

      When a trial ends, as an ISO 8601 instant. Absent when not trialling.

    • entitlements array of string required

      Exactly what this credential may do, as `resource:verb` strings. This is the only thing the API screens: a missing permission is a 403 when your role lacks it and a 402 when your plan does not include it.

    • accountType string required

      Whether this is a customer account or an internal Vamo one.

    • userType string | null required

      Whether the acting person is a customer or Vamo staff. Null when the caller is an API key.

    • user Profile required

      The signed-in person. Null when the caller is an API key.

      • id string required

        The user id.

      • email string required

        The signed-in user’s email address.

      • name string | null required

        Their full display name. Null when not set.

      • firstName string | null required

        Given name. Null when not set.

      • lastName string | null required

        Family name. Null when not set.

      • image string | null required

        Avatar image URL. Null when not set.

  • 401 No or invalid credential
    • code string required

      Stable machine-readable error code. Branch on this, never on the numeric status.

      bad_requestunauthorizedsignature_requiredpayment_requiredforbiddennot_foundconflictgonepayload_too_largeunprocessable_entitytoo_many_requestsinternal_errornot_implementedbilling_unavailablenot_contactablemailbox_link_unavailablemailbox_requiredmail_engine_unavailablewebhook_publisher_unavailabledatabase_unavailableclient_error
    • message string required

      Human-readable explanation of the refusal.

    • status integer required

      The HTTP status code, repeated in the body.

    • remedy object

      A self-serve path forward, when one exists (a 402 points at the credit top-up).

      • kind string required

        What kind of remedy this is, so a client can route it: whether the caller can clear the condition through the API, or a person must act in the web app.

        topupconnect_mailbox
      • url string required

        Where to go to clear the condition: an API path, or a web app page when only a person can.

  • 403 Missing required entitlement
    • code string required

      Stable machine-readable error code. Branch on this, never on the numeric status.

      bad_requestunauthorizedsignature_requiredpayment_requiredforbiddennot_foundconflictgonepayload_too_largeunprocessable_entitytoo_many_requestsinternal_errornot_implementedbilling_unavailablenot_contactablemailbox_link_unavailablemailbox_requiredmail_engine_unavailablewebhook_publisher_unavailabledatabase_unavailableclient_error
    • message string required

      Human-readable explanation of the refusal.

    • status integer required

      The HTTP status code, repeated in the body.

    • remedy object

      A self-serve path forward, when one exists (a 402 points at the credit top-up).

      • kind string required

        What kind of remedy this is, so a client can route it: whether the caller can clear the condition through the API, or a person must act in the web app.

        topupconnect_mailbox
      • url string required

        Where to go to clear the condition: an API path, or a web app page when only a person can.