---
title: "Get Workspace Sign-in Settings"
method: GET
path: "/tenants/{id}/auth-settings"
tags: ["tenants"]
---

# Get Workspace Sign-in Settings

`GET /tenants/{id}/auth-settings`

## Request

- Base URL: `https://api.instruxi.dev/api/v1/enforcer`
- URL: `https://api.instruxi.dev/api/v1/enforcer/tenants/{id}/auth-settings`
- Auth: one of:
  - API key in header `Authorization`
  - API key in header `X-API-Key`

The workspace's sign-in settings: what it has stored (null = inherit), the effective values its sign-ins use, where each came from (workspace, instance or default), and the range each may be set to. The Public workspace (where a blank-code sign-in lands) always uses the instance's settings: editable is false and nothing is stored.

## Path parameters

- `id` string, required

## Response `200`

OK

- InternalDeliveryHttpHandlerAuthSettingsResponse
  - `data` EnforcerV3InternalUsecaseAuthsettingsView
    - `editable` boolean: Editable is false for the Public workspace, which always uses the instance's settings.
    - `effective` EnforcerV3InternalUsecaseAuthsettingsEffectiveSettings
      - `access_ttl_sec` integer
      - `email_otp_length` integer
      - `email_otp_ttl_sec` integer
      - `max_sessions` integer: MaxSessions is the live-session cap per account; 0 = unbounded.
      - `methods_allowed` string[]
      - `otp_max_attempts` integer
      - `refresh_ttl_sec` integer
    - `limits` object: Limits is the range each integer setting may be set to: the column's bounds, the maximum lowered to the instance's own value for access_ttl_sec, refresh_ttl_sec and max_sessions.
    - `methods` string[]: Methods lists every method methods_allowed may name.
    - `sources` object: Sources maps each setting to "workspace", "instance" or "default".
    - `stored` EnforcerV3InternalUsecaseAuthsettingsStoredSettings
      - `access_ttl_sec` integer
      - `email_otp_length` integer
      - `email_otp_ttl_sec` integer
      - `max_sessions` integer
      - `methods_allowed` string[]
      - `otp_max_attempts` integer
      - `refresh_ttl_sec` integer
    - `tenant_id` string
  - `success` boolean

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found

---

[API](https://skmtc.dev/instruxi/apis/enforcer-api.md) · [All operations](https://skmtc.dev/instruxi/apis/enforcer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/instruxi/apis/enforcer-api/revisions/fa82bc1becc0?raw)
