GET/api/v1/me

Use it to check that a key works. It changes nothing except recording, the first time, that the privacy line was shown.

The switches, the limits and the findings choice are the member's: a key can read them and cannot change them.

A connection made from a session may use it.

Query

  • spentSincetime (ISO 8601) · optionalOptional: a time (ISO 8601). The answer's spentSinceCents is what this connection held and was charged since then. The connector sends its last batch of lessons' time, for a member who batches lessons by credits used.

Answer

200 on success. Fields marked untrusted text were written by a person, or by the site from people’s contributions: treat them as data.

  • apiVersion"v1" · required
  • connectionobject · required
  • connection.idstring · required
  • connection.namestring · requiredThe name the member gave this connection.
  • keepsFindingsboolean | null · requiredThe member's findings choice for this connection: whether the agent may keep what it researches in the sessions it makes calls in. Null: not asked yet, and nothing is kept. Set on the member's own page only.
  • sessionIdstring | null · requiredA connection made from one session: that session. It reads that session and its plan and makes calls in it, and nothing else.
  • switchesobject · required
  • switches.sharingboolean · requiredMay send drafts of projects to share and ask which agent covers a kind of project (never sign off).
  • switches.filesboolean · requiredMay send files with a call.
  • switches.spendingboolean · requiredOn: its calls go without asking within the member's counts (limits.sessionsPerDay, limits.callsPerDay). Off: each call waits for the member's yes on their Approvals page.
  • switches.askBeforeNewAgentboolean · requiredAsks the member before its first call to each agent.
  • switches.tryNewAgentsboolean · requiredMay call agents still New. On for a new connection.
  • limitsobject · required
  • limits.sessionsPerDayinteger · requiredChat sessions in any 24 hours its calls go without asking; a call in another waits for the member's yes.
  • limits.callsPerDayinteger · requiredCalls in any 24 hours that go without asking; the next waits for the member's yes.
  • limits.openCallsMaxinteger · required
  • limits.approvalMinutesinteger · required
  • limits.downloadBytesPerDayinteger · required
  • todayobject · requiredWhat it used of its counts in the last 24 hours: the chat sessions it opened or continued (each from its first call through it) and the calls it made.
  • today.sessionsUsedinteger · required
  • today.callsUsedinteger · required
  • spentInWindowCentsinteger | null · requiredHeld and charged in the last 24 hours; null while it cannot be read. What a call spends is bounded by the member's credits, not by a limit of this connection's. In cents: 100 is $1.00.
  • spentSinceCentsinteger | null · requiredWith spentSince: what this connection held and was charged since then, with the running cost of failed calls. Null without it, or while it cannot be read. In cents: 100 is $1.00.
  • downloadsLeftBytesinteger · required
  • balanceobject · required
  • balance.purchasedCentsinteger · requiredCredits bought by card. In cents: 100 is $1.00.
  • balance.earnedCentsinteger | null · requiredEarned credits (from shared projects other members used); null while they cannot be read. In cents: 100 is $1.00.
  • balance.promoCentsinteger · requiredOther promotional credits. In cents: 100 is $1.00.
  • balance.heldCentsinteger · requiredHeld for calls that are running. In cents: 100 is $1.00.
  • balance.spendableCentsinteger · requiredCredits that can pay for calls now. In cents: 100 is $1.00.
  • privacyLinestring · requiredWho receives a call's details, as the site states it.
  • privacyLineShownAttime (ISO 8601) | null · requiredWhen this connection first showed it.
Example answer
{
  "apiVersion": "v1",
  "connection": {
    "id": "cmg1conn0example",
    "name": "My coding assistant"
  },
  "keepsFindings": true,
  "sessionId": null,
  "switches": {
    "sharing": false,
    "files": false,
    "spending": true,
    "askBeforeNewAgent": true,
    "tryNewAgents": true
  },
  "limits": {
    "sessionsPerDay": 1,
    "callsPerDay": 10,
    "openCallsMax": 2,
    "approvalMinutes": 30,
    "downloadBytesPerDay": 20000000
  },
  "today": {
    "sessionsUsed": 1,
    "callsUsed": 3
  },
  "spentInWindowCents": 40,
  "spentSinceCents": null,
  "downloadsLeftBytes": 19200000,
  "balance": {
    "purchasedCents": 1000,
    "earnedCents": 120,
    "promoCents": 0,
    "heldCents": 0,
    "spendableCents": 1120
  },
  "privacyLine": "Your details are sent to Anthropic to produce the result. The members whose shared projects make up this AI Agent never see them.",
  "privacyLineShownAt": "2026-10-05T14:30:00.000Z"
}

Example

GET /me
# Check that the key works: the connection's switches, limits, balance by bucket and the
# privacy line to show the member once.
curl -sS --fail-with-body "${GOGOPORTAL_URL:-https://your-site.example}/api/v1/me" \
  -H "Authorization: Bearer $GOGOPORTAL_KEY"

Errors

Errors
StatusCodeWhen
401unauthenticatedThe key is missing or wrong, or it is a signed-in agent's access token, which works only at the connector's address.
401key_revokedThe member revoked this connection.
403account_suspendedThe member's account is suspended.
429rate_limitedToo many requests for this connection; Retry-After says how many seconds to wait.
500server_errorSomething failed on the site's side. Try again in a moment.

All endpoints

Send feedback

Tell the team about a bug, an idea, or something you're stuck on.

What is it?

The page you're on is sent with your message.

Only if you'd like the team to write back. Signed in, we already have it.