---
title: "overlane auth status"
description: "Check sign-in status: whether you are signed in, and how, without revealing the token"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.overlane.app/llms.txt
> Use this file to discover all available pages before exploring further.

# overlane auth status

{/* Generated by apps/docs/scripts/generate.mjs (CLI pages from the command registry in packages/cli). Do not edit; run `pnpm --filter @overlane/docs gen`. */}

Reports where the stored sign-in is kept (the OS keychain or the 0600 file), whether it has expired, and, with a short timeout, which tenant the service says it belongs to. Works offline: the service fields then read "unreachable". Sign in with `overlane auth login`.

## Usage

```sh
overlane auth status [--service URL]
```

## Flags

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--service` | string | no |  | The service address to check (default: OVERLANE_SERVICE_URL, then the project's binding, then the hosted service) |

## Examples

```sh
overlane auth status
overlane auth status --text
```

## Behavior

- Effect: `read` (changes nothing).
- Needs credentials: no. Uses the network: yes.
- Supports `--dry-run`: no. Accepts `--force`: no.
- Machine-readable description: `overlane schema auth status`.

## Result

With `--json` (the default when stdout is not a terminal) the command prints this JSON Schema's shape on stdout.

```json
{
  "type": "object",
  "properties": {
    "signedIn": {
      "type": "boolean"
    },
    "how": {
      "type": "string",
      "enum": [
        "keychain",
        "file",
        "none"
      ]
    },
    "service": {
      "type": "string"
    },
    "serviceFrom": {
      "type": "string",
      "enum": [
        "flag",
        "environment",
        "binding",
        "default"
      ]
    },
    "expired": {
      "type": "boolean"
    },
    "expiresAt": {
      "type": "string"
    },
    "canRefresh": {
      "type": "boolean"
    },
    "identity": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "tenantId": {
              "type": "string"
            },
            "userId": {
              "type": "string"
            },
            "scopes": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "required": [
            "tenantId",
            "userId",
            "scopes"
          ],
          "additionalProperties": false
        },
        {
          "type": "string",
          "const": "unreachable"
        },
        {
          "type": "string",
          "const": "unauthenticated"
        }
      ]
    },
    "next": {
      "type": "string"
    }
  },
  "required": [
    "signedIn",
    "how",
    "service",
    "serviceFrom",
    "identity",
    "next"
  ],
  "additionalProperties": false
}
```

See [exit codes](/cli/#exit-codes) for the status the process returns.

Source: https://docs.overlane.app/cli/auth-status/index.mdx
