Skip to content
varsafe
Esc
↑↓navigate↵open⌘Jpreview

Get the CLI grant behind the credential

Returns what the person who approved this CLI credential consented to: the teams it may act on, the scopes it holds per team, and any project or environment restriction. This is what varsafe whoami prints.

GET/me/cli
Responses
200Success.
accountobjectrequired
Show properties
userIdstringrequired
emailstring<email>required
namestring | nullrequired
grantobjectrequired
Show properties
idstring<uuid>required
namestring | nullrequired
createdAtstring<date-time>required
lastUsedAtstring<date-time> | anyrequired
Show properties
Any of:
string<date-time>
string<date-time>
any
any
lastUsedIpstring | nullrequired
expiresAtstring<date-time> | anyrequired
Show properties
Any of:
string<date-time>
string<date-time>
any
any
teamsobject[]required
Show properties
Array of object
teamIdstring<uuid>required
teamNamestringrequired
scopesstring[]required
projectSelectionstringrequired
Allowed:allsubset
environmentSelectionstringrequired
Allowed:allsubset
400The request failed validation. `field` names the offending input.
statusCodeintegerrequired
HTTP status code, repeated in the body.
min -9007199254740991 · max 9007199254740991
codestringrequired
Stable machine-readable error code, e.g. `SECRET_NOT_FOUND` or `FORBIDDEN`. Branch on this, never on the message.
messagestringrequired
Human-readable explanation. Wording may change.
fieldstring
The offending request field, present on validation failures.
401No credential was presented, or it is invalid or revoked.
statusCodeintegerrequired
HTTP status code, repeated in the body.
min -9007199254740991 · max 9007199254740991
codestringrequired
Stable machine-readable error code, e.g. `SECRET_NOT_FOUND` or `FORBIDDEN`. Branch on this, never on the message.
messagestringrequired
Human-readable explanation. Wording may change.
fieldstring
The offending request field, present on validation failures.
403The credential is valid but lacks the required scope, role or team access.
statusCodeintegerrequired
HTTP status code, repeated in the body.
min -9007199254740991 · max 9007199254740991
codestringrequired
Stable machine-readable error code, e.g. `SECRET_NOT_FOUND` or `FORBIDDEN`. Branch on this, never on the message.
messagestringrequired
Human-readable explanation. Wording may change.
fieldstring
The offending request field, present on validation failures.
404The resource does not exist, or is not visible to this credential.
statusCodeintegerrequired
HTTP status code, repeated in the body.
min -9007199254740991 · max 9007199254740991
codestringrequired
Stable machine-readable error code, e.g. `SECRET_NOT_FOUND` or `FORBIDDEN`. Branch on this, never on the message.
messagestringrequired
Human-readable explanation. Wording may change.
fieldstring
The offending request field, present on validation failures.
429Rate limited. Retry after the interval named in the response.
statusCodeintegerrequired
HTTP status code, repeated in the body.
min -9007199254740991 · max 9007199254740991
codestringrequired
Stable machine-readable error code, e.g. `SECRET_NOT_FOUND` or `FORBIDDEN`. Branch on this, never on the message.
messagestringrequired
Human-readable explanation. Wording may change.
fieldstring
The offending request field, present on validation failures.
500Unexpected server error. The body never carries internal detail.
statusCodeintegerrequired
HTTP status code, repeated in the body.
min -9007199254740991 · max 9007199254740991
codestringrequired
Stable machine-readable error code, e.g. `SECRET_NOT_FOUND` or `FORBIDDEN`. Branch on this, never on the message.
messagestringrequired
Human-readable explanation. Wording may change.
fieldstring
The offending request field, present on validation failures.
Request
curl -X GET "https://api.varsafe.dev/me/cli"
Response
{
  "account": {
    "userId": "string",
    "email": "<email>",
    "name": "string"
  },
  "grant": {
    "id": "<uuid>",
    "name": "string",
    "createdAt": "2024-01-01T00:00:00Z",
    "lastUsedAt": "2024-01-01T00:00:00Z",
    "lastUsedIp": "string",
    "expiresAt": "2024-01-01T00:00:00Z",
    "teams": [
      {
        "teamId": "<uuid>",
        "teamName": "string",
        "scopes": [
          "secrets:read"
        ],
        "projectSelection": "all",
        "environmentSelection": "all"
      }
    ]
  }
}