Skip to content

Get your customer account

The portal.account.get operation: GET /api/v1/portal/me in the REST API and the portal_account_get tool in the MCP server.

GET/api/v1/portal/me

Returns the signed-in customer's own account with the brand: email, name, business name, billing address and tax IDs with their latest check, and when they last signed in to the portal.

Customer portal only: the caller is the customer signed in to the brand's portal (portal:read).

At a glance

  • REST: GET /api/v1/portal/me
  • MCP tool: portal_account_get
  • Operation ID: portal.account.get
  • Scope: Brand
  • Permission: portal:read
  • Risk tier: read
  • Dry run: Not supported
  • Idempotency: Not needed (read only)
  • Modes: Test and live
  • Authentication: A customer signed in to the customer portal (API keys can't call it)
  • Since: M9

Request

Query parameters

This operation takes no query parameters.

Response

200 OK with a JSON object:

FieldTypeDescription
object"portal_account"
customerIdcus_… ID
livemodeboolean
emailstring
namestring or null
businessNamestring or null
typeone of individual, business, unknown
localestring or null
billingAddressobject or null
taxIdsarray of object
taxIds[].idstringThe tax ID's identity on your account: its canonical number.
taxIds[].typestring
taxIds[].valuestring
taxIds[].countrystring
taxIds[].statusone of valid, invalid, unavailable, format_only, unverifiedThe register's answer: valid, invalid, unavailable, format_only or unverified.
taxIds[].checkedAtdate-time
portalLastLoginAtdate-time or null

Examples

Your account

HTTP
GET /api/v1/portal/me
Authorization: Bearer or_test_…

Response (200):

JSON
{
  "object": "portal_account",
  "customerId": "cus_01m4tx5nj8emwbyf7y9vcf48b1",
  "livemode": false,
  "email": "ana@example.com",
  "name": "Ana Novak",
  "businessName": "Alpen Apps GmbH",
  "type": "business",
  "locale": null,
  "billingAddress": {
    "line1": "Ring 1",
    "line2": null,
    "city": "Wien",
    "postalCode": "1010",
    "region": null,
    "country": "AT"
  },
  "taxIds": [
    {
      "id": "ATU00000000",
      "type": "eu_vat",
      "value": "ATU00000000",
      "country": "AT",
      "status": "valid",
      "checkedAt": "2026-10-20T09:00:00.000Z"
    }
  ],
  "portalLastLoginAt": "2026-10-20T09:00:00.000Z"
}

Errors

CodeHTTP statusWhenWhat to do
validation_failed400A field or pagination value is malformed.Fix the fields listed in details.issues and send the request again.
livemode_not_allowed403The portal session is in the other mode than the request.Use test mode, or credentials for the target's mode. Developers need live access granted by an organization owner or admin.
permission_denied403The caller isn't a customer signed in to this brand's portal (operators and API keys use the customer operations).Ask an organization owner or admin for a role or scope that allows this action.

It can also return these common errors: api_version_unsupported, authentication_required, api_key_invalid, scope_required, resource_not_found, dry_run_not_supported, rate_limited, internal_error.