Skip to main content

Documentation Index

Fetch the complete documentation index at: https://conductorone-ian-account-to-user-pipeline.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Key commands:Run c1i help in your terminal to show all available commands.Run c1i <command> --help or c1i <command> -h for help with a specific command.

Overview

c1i interacts with the C1 API to manage users, apps, accounts, entitlements, tasks, and access requests. Usage:
c1i [command]
CommandSubcommandsDescription
docssearch page endpoints endpoint openapi skillExplore API documentation (no auth required).
authlogin logout status whoamiManage authentication.
userslistSearch and list C1 users.
appslistList applications.
accountslist set-ownerManage application accounts.
entitlementslistSearch and list application entitlements.
taskslist approve deny commentManage access request tasks.
requestscreate grant create revokeCreate access requests.
connectorslistList connectors.
apiMake raw C1 API requests.
versionPrint the c1i version.
completionbash fish powershell zshGenerate a shell completion script.

Global flags

FlagDescription
--url stringC1 tenant URL.
-h, --helpHelp for any command.

Docs

Explore C1 API documentation and schemas. These commands do not require authentication. Usage:
c1i docs [command]
SubcommandDescription
searchSearch C1 documentation by keyword.
pageFetch a full documentation page.
endpointsList all API endpoints.
endpointShow the full request/response schema for an endpoint.
openapiDump the raw OpenAPI spec (YAML).
skillExport documentation for AI agents (SKILL.md format).
Search C1 documentation by keyword. Usage:
c1i docs search <query>

page

Fetch a full documentation page by path. Usage:
c1i docs page <path>

endpoints

List all available API endpoints. Optionally filter by a pattern. Usage:
c1i docs endpoints [--filter <pattern>]
FlagDescription
--filter stringFilter endpoints by pattern.

endpoint

Show the full request and response schema for a specific API endpoint. Usage:
c1i docs endpoint <path>

openapi

Dump the raw OpenAPI spec in YAML format. Usage:
c1i docs openapi

skill

Export a self-contained skill file that teaches AI coding agents how to use c1i. The output covers all commands, output formats, API discovery workflows, and common endpoints. Usage:
c1i docs skill
FlagDescription
-o, --output stringWrite to a file instead of stdout.
Examples:
# Print the skill file to stdout
c1i docs skill

# Write directly to a file for Claude Code
c1i docs skill -o .claude/skills/c1i/SKILL.md

# Write as a Cursor project rule
c1i docs skill -o .cursor/rules/c1i.md
For step-by-step setup instructions for Claude Code, Cursor, and other agents, see Use c1i with AI agents.

Auth

Manage authentication credentials. Usage:
c1i auth [command]
SubcommandDescription
loginAuthenticate via browser or API credentials.
logoutRemove stored credentials for the current URL.
statusCheck if valid credentials are stored and report the storage backend.
whoamiShow the authenticated principal’s identity, roles, permissions, and feature flags.

login

Authenticate to C1. Opens a browser for OAuth device flow authorization, or accepts credentials directly. Usage:
c1i auth login [flags]
FlagDescription
--url stringC1 tenant URL.
--client-id stringClient ID (for non-interactive auth).
--client-secret stringClient secret (for non-interactive auth).
Examples:
# Browser-based login
c1i auth login --url example.conductor.one

# Credential-based login
c1i auth login --client-id <id> --client-secret <secret>
For non-interactive scripts and CI environments, you can skip stored credentials entirely by setting C1I_CLIENT_ID and C1I_CLIENT_SECRET (alongside C1I_URL) as environment variables. Both must be set; partial values are ignored. See Credential storage for the full precedence order.

logout

Remove stored c1i credentials for the current URL from both the OS keyring and the file fallback. Environment variables (C1I_CLIENT_ID, C1I_CLIENT_SECRET) are not affected. Usage:
c1i auth logout

status

Check whether valid C1 credentials are stored and working. Reports which source (environment, keyring, or file) served the active credentials. Usage:
c1i auth status

whoami

Show the authenticated principal — user ID, display name, email, and counts of roles, permissions, and tenant feature flags. Useful for agents and scripts that need to confirm identity before making other API calls. Usage:
c1i auth whoami [flags]
FlagDescription
-v, --verboseInclude the full roles, permissions, and features arrays.
By default, whoami returns a compact summary. Use --verbose when you need the full role and permission lists.

Credential storage

c1i reads credentials from the first source that has them, in this order:
  1. Environment variablesC1I_CLIENT_ID and C1I_CLIENT_SECRET (combined with C1I_URL). Both must be set. Used for non-interactive scripts, CI, and containers. Never written to disk.
  2. OS keyring — Keychain (macOS), Credential Manager (Windows), or Secret Service (Linux). Default when available.
  3. File fallback — a 0600 JSON file under your config directory:
    • Linux: ~/.config/c1i/credentials/
    • macOS: ~/Library/Application Support/c1i/credentials/
    • Windows: %AppData%\c1i\credentials\
The file fallback is used automatically when no OS keyring is available — typical on headless Linux servers, Docker or LXC containers, CI runners, and WSL without a desktop environment. c1i auth login writes to the keyring when it can and to the file otherwise; c1i auth status reports the active source.

Users

Manage C1 users.

list

Search and list C1 users. Outputs NDJSON. Usage:
c1i users list [flags]
FlagDescription
--query stringSearch query.
--email stringFilter by email address.
--status stringFilter by status: enabled, disabled, or deleted.
--page-size intNumber of results per page (max 100; values higher than 100 are clamped client-side).
--page-token stringPagination token for manual pagination.
--limit intCap the total number of results emitted (0 = unlimited). Auto-pagination stops fetching new pages once the cap is reached.
Example:
c1i users list --email user@example.com

Apps

Manage applications.

list

List applications. Outputs NDJSON. Usage:
c1i apps list [flags]
FlagDescription
--page-size intNumber of results per page (max 100; values higher than 100 are clamped client-side).
--page-token stringPagination token for manual pagination.
--limit intCap the total number of results emitted (0 = unlimited). Auto-pagination stops fetching new pages once the cap is reached.

Accounts

Manage application accounts (app users).

list

Search and list accounts for an application. Outputs NDJSON. Usage:
c1i accounts list --app-id <app-id> [flags]
FlagDescription
--app-id stringApplication ID. (Required.)
--status stringFilter by status.
--type stringFilter by type: user, service_account, or system_account.
--unmapped-onlyOnly show unmapped accounts.
--query stringSearch query.
--page-size intNumber of results per page (max 100; values higher than 100 are clamped client-side).
--page-token stringPagination token for manual pagination.
--limit intCap the total number of results emitted (0 = unlimited). Auto-pagination stops fetching new pages once the cap is reached.

set-owner

Set the owner of an application account. Usage:
c1i accounts set-owner --app-id <app-id> --app-user-id <app-user-id> --user-id <user-id>
FlagDescription
--app-id stringApplication ID. (Required.)
--app-user-id stringApp user ID. (Required.)
--user-id stringC1 user ID to set as owner. (Required.)

Entitlements

Manage application entitlements.

list

Search and list application entitlements. Outputs NDJSON. Usage:
c1i entitlements list [flags]
FlagDescription
--app-id stringFilter by application ID.
--query stringSearch query.
--page-size intNumber of results per page (max 100; values higher than 100 are clamped client-side).
--page-token stringPagination token for manual pagination.
--limit intCap the total number of results emitted (0 = unlimited). Auto-pagination stops fetching new pages once the cap is reached.

Tasks

Manage access request tasks. Usage:
c1i tasks [command]
SubcommandDescription
listSearch and list tasks.
approveApprove a task.
denyDeny a task.
commentAdd a comment to a task.

list

Search and list access request tasks. Outputs NDJSON. Usage:
c1i tasks list [flags]
FlagDescription
--state stringFilter by state: open or closed.
--query stringSearch query.
--assigned-to-meOnly show tasks assigned to the current user.
--page-size intNumber of results per page (max 100; values higher than 100 are clamped client-side).
--page-token stringPagination token for manual pagination.
--limit intCap the total number of results emitted (0 = unlimited). Auto-pagination stops fetching new pages once the cap is reached.

approve

Approve an access request task. Usage:
c1i tasks approve --task-id <task-id> [flags]
FlagDescription
--task-id stringTask ID. (Required.)
--comment stringComment to include with the approval.

deny

Deny an access request task. Usage:
c1i tasks deny --task-id <task-id> [flags]
FlagDescription
--task-id stringTask ID. (Required.)
--comment stringComment to include with the denial.

comment

Add a comment to a task. Usage:
c1i tasks comment --task-id <task-id> --comment <comment>
FlagDescription
--task-id stringTask ID. (Required.)
--comment stringComment text. (Required.)

Requests

Create access requests. Usage:
c1i requests create [command]

create grant

Create a grant access request. Usage:
c1i requests create grant --app-id <app-id> --entitlement-id <entitlement-id> [flags]
FlagDescription
--app-id stringApplication ID. (Required.)
--entitlement-id stringEntitlement ID. (Required.)
--user-id stringUser ID (defaults to current user).
--duration stringRequested access duration.
--description stringJustification for the request.
--emergencyRequest emergency access.

create revoke

Create a revoke access request. Usage:
c1i requests create revoke --app-id <app-id> --entitlement-id <entitlement-id> [flags]
FlagDescription
--app-id stringApplication ID. (Required.)
--entitlement-id stringEntitlement ID. (Required.)
--user-id stringUser ID (defaults to current user).
--description stringJustification for the request.

Connectors

Manage connectors.

list

List connectors for an application. Outputs NDJSON. Usage:
c1i connectors list --app-id <app-id> [flags]
FlagDescription
--app-id stringApplication ID. (Required.)
--page-size intNumber of results per page (max 100; values higher than 100 are clamped client-side).
--page-token stringPagination token for manual pagination.
--limit intCap the total number of results emitted (0 = unlimited). Auto-pagination stops fetching new pages once the cap is reached.

API

Make raw C1 API requests. This is an escape hatch for accessing any API endpoint not covered by the built-in commands. Usage:
c1i api --path <path> [flags]
FlagDescription
--path stringAPI endpoint path. (Required.)
--method stringHTTP method: GET, POST, PUT, or DELETE. (Default: GET.)
--body stringRequest body (JSON).
--paginateAuto-paginate and output results as NDJSON.
--limit intWith --paginate, cap the total number of NDJSON rows emitted (0 = unlimited). Errors if used without --paginate.
Examples:
# GET request
c1i api --path /api/v1/apps

# POST request — passing --body switches the method to POST automatically
c1i api --path /api/v1/search/tasks --body '{"taskStates":["TASK_STATE_OPEN"]}'

# Paginate through results as NDJSON
c1i api --path /api/v1/apps --paginate

# Paginate a POST search endpoint
c1i api --path /api/v1/search/tasks --body '{"taskStates":["TASK_STATE_OPEN"]}' --paginate
If you call a POST-only endpoint with GET (for example a /search/* path with no --body), c1i prints a one-line hint suggesting --body or --method=POST so you can recover without consulting the schema.

Pagination and limits

c1i list commands (and c1i api --paginate) auto-paginate by default — they keep fetching pages until the cursor is empty, so you don’t have to manage tokens manually. Three flags control how much data flows:
FlagEffect
--page-size NPer-call batch size. The C1 API caps this at 100; c1i clamps client-side, so --page-size 500 is treated as 100. Default is 50.
--page-token TOKENResume from a specific cursor. When set, c1i fetches a single page and exits — auto-pagination is disabled.
--limit NCap the total number of results emitted across all pages (0 = unlimited). Auto-pagination stops fetching new pages once the cap is reached, and c1i tightens the per-call request size when --limit is smaller than --page-size so it doesn’t over-fetch.
Examples:
# Peek at the first 5 users without fetching everyone
c1i users list --limit 5

# Cap a wide query — useful for cost control or quick previews
c1i tasks list --state open --limit 25

# --limit also works with the raw api command, but only with --paginate
c1i api --path /api/v1/search/tasks --body '{"taskStates":["TASK_STATE_OPEN"]}' --paginate --limit 10
c1i api --path X --limit N without --paginate errors immediately — the non-paginated path returns a single response, so there’s nothing to cap.

Version

Print the c1i version. Usage:
c1i version
You can also use c1i --version.

Completion

Generate a shell completion script. Output is the script itself, which you can write to a file or source directly. Supported shells are bash, zsh, fish, and PowerShell. Usage:
c1i completion <shell>
Examples:
# bash
c1i completion bash > /etc/bash_completion.d/c1i

# zsh
c1i completion zsh > "${fpath[1]}/_c1i"

# fish
c1i completion fish > ~/.config/fish/completions/c1i.fish

# PowerShell
c1i completion powershell > $PROFILE
For shell-specific install steps, run c1i completion <shell> --help.