Agent-readable docs index: /llms.txt. Full docs in one file: /llms-full.txt. Download /docs.zip to grep all markdown files locally.

Lifecycle & API keys

The AI clients page in the portal contains connection URLs for interactive OAuth clients and API keys for advanced or headless clients.

Prefer OAuth

Use OAuth when the client supports it. OAuth keeps the user and workspace selection visible during authorization and avoids copying a long-lived secret.
After connecting:
  1. Confirm the selected Stackyapper workspace.
  2. Ask the client to list or inspect available tools.
  3. Run one small read-only request.
  4. Confirm the call and client name in Audit.

OAuth lifetimes

CredentialLifetime
OAuth access token1 hour, renewed automatically with a rotating refresh token
Authorization grantUp to 90 days, then the user must authorize the client again
Deployments and temporary connection interruptions do not reset an authorization.

API keys

Create an API client only when the software cannot complete the supported OAuth flow.
Give the client a name that identifies its owner and purpose, such as service-desk-codex or reporting-runner.
The full key is displayed once. Copy it directly into the intended client's secret store. Do not put it in chat, tickets, source control, screenshots, or shared notes.
The AI clients page shows whether an API client has never been used or when it was last used. Treat an unexpectedly unused or active client as a reason to verify its configuration and owner.

API key properties

PropertyBehavior
Formatsk_live_ followed by 64 hex characters
VisibilityPlaintext shown exactly once at creation; the list shows only the first 12 characters afterward
StorageOnly a SHA-256 hash is stored; a lost key cannot be recovered, only replaced
ExpiryKeys never expire; only revocation ends them
ScopeOne user in one workspace; the key stops working if that membership is removed or the workspace is not active
Active keysOne active key per user — creating a new key automatically revokes the previous one
Who can createAny signed-in member can create their own key; MSP-delegated sessions cannot, and the workspace's AI client admission policy can disable API-key clients entirely
RevocationSelf-service delete in the portal; keys are also revoked automatically when the member is removed from the workspace
Because keys never expire, rotate them on your own schedule: create a new key (which revokes the old one) and update the intended client immediately.

Revoke or rotate

Revoke a client when:
  • A device is lost or reassigned.
  • A key may have been copied to the wrong system.
  • A user or automation no longer needs access.
  • The client name or ownership cannot be established.
For API keys, rotation is create-then-update: creating a new key automatically revokes your previous one, so update the intended client with the new key right away. Confirm in Audit that new calls use the replacement.
Revocation stops future calls using that client credential. It does not revoke the user's other AI clients, provider credentials, or workspace membership.

Wrong workspace

If a client is connected to the wrong workspace:
  1. Revoke or disconnect the client.
  2. Select the intended workspace in Stackyapper.
  3. Start authorization again, and read the consent screen before approving it.
  4. Run a harmless read and verify its workspace in Audit.