# Altllm Portal API Keys

Use this skill when the user asks to list, create, inspect, update, disable, re-enable...

- Repository: https://github.com/internet-court/internet-court-skill (7050 stars)
- Category: AI and agents
- License: see repository
- Last updated: 2026-10-26
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add internet-court/internet-court-skill --skill altllm-portal-api-keys -g -a claude-code -y`
Codex: `npx skills add internet-court/internet-court-skill --skill altllm-portal-api-keys -g -a codex -y`
Cursor: `npx skills add internet-court/internet-court-skill --skill altllm-portal-api-keys -g -a cursor -y`
Gemini CLI: `npx skills add internet-court/internet-court-skill --skill altllm-portal-api-keys -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add internet-court/internet-court-skill`

## Description

Use this skill when the user asks to list, create, inspect, update, disable, re-enable, or revoke AltLLM Portal API keys for external agents or applications. Do NOT use for wallet login, billing history, or payment links.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# AltLLM Portal API Keys

Portal API key lifecycle management for the local `altllm` CLI.

## Shared Setup

> Before the first `altllm` command in a fresh checkout, read and follow:
> - `../_shared/preflight.md`
> - `../_shared/session-and-target.md`

## Command Index

| Command | Purpose |
|---|---|
| `list-api-keys` | List active and disabled keys |
| `create-api-key` | Create a new key, optionally with a model allowlist |
| `get-api-key` | Inspect one key |
| `update-api-key` | Rename a key, change status, or replace the model allowlist |
| `revoke-api-key` | Permanently revoke a key |

## Rules

- `create-api-key` returns the full key only once.
- If no model allowlist is passed, the Portal API applies its default AltLLM model set.
- Key permissions narrow accessible models, but gateway balance and tier checks still apply.
- Flex users can allowlist normal AltLLM models and Flex-only `altllm-flex-*` models; backend access checks remain authoritative.
- `update-api-key --status disabled` is reversible.
- `revoke-api-key` is permanent.
- `keys` is an alias for `list-api-keys`.

## Known Production Limitation

- The single-key Portal API routes are currently broken in production.
- Affected commands:
  - `get-api-key`
  - `update-api-key`
  - `revoke-api-key`
- Commands that still work:
  - `list-api-keys`
  - `create-api-key`
- Do not create temporary production smoke keys unless `revoke-api-key` is healthy or an approved cleanup path exists.

## Reference

See [references/cli-reference.md](references/cli-reference.md) for command examples and representative responses.

