Skip to main content

Documentation Index

Fetch the complete documentation index at: https://conductorone-groman-network-requirements-updates.mintlify.app/llms.txt

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

What is c1i?

c1i (pronounced “see-one-eye” — it looks like cli, get it?) is an agent-oriented command-line interface for the C1 API. It’s purpose-built for automation, scripting, and AI agent workflows. Unlike Cone, which is designed for interactive human use, c1i prioritizes machine-readable output and predictable behavior:
  • Structured output: All data commands produce NDJSON (newline-delimited JSON) — never mixed or human-formatted output.
  • Self-documenting API: The docs commands let agents explore and understand the C1 API without credentials or external documentation.
  • Predictable pagination: List commands auto-paginate by default, with --page-token available for manual control.
  • Raw API escape hatch: The api command can call any C1 API endpoint directly, with optional NDJSON pagination.

c1i vs Cone

C1 provides two CLI tools for different use cases:
Conec1i
Designed forHumansAgents, scripts, and automation
Output formatTables, interactive promptsNDJSON, JSON
Key workflowsSearch, get, drop entitlementsList, query, and manage all C1 objects
API coverageAccess request workflowsBroad API access with raw endpoint escape hatch
InteractiveYes (prompts, formatted output)No (structured, parseable output only)
Use Cone when you’re working at the terminal interactively. Use c1i when you’re building automation, writing scripts, or integrating C1 into an AI agent workflow.
Using an AI coding agent? Run c1i docs skill to generate a skill file that teaches your agent how to use c1i. See Use c1i with AI agents for setup instructions for Claude Code, Cursor, and other agents.

Install c1i

Install c1i using Go:
go install github.com/ConductorOne/c1i@latest
Or download a binary from the latest GitHub release.

Configure your C1 URL

c1i needs to know your C1 tenant URL. You can provide it in any of these ways (listed in order of precedence):
  1. Flag: --url https://example.conductor.one
  2. Environment variable: C1I_URL=https://example.conductor.one
  3. Config file: Create ~/.c1i.yaml with:
url: https://example.conductor.one
All of the following URL formats are equivalent:
  • https://example.conductor.one
  • example.conductor.one
  • example (expands to https://example.conductor.one)

Authenticate

To authenticate c1i:
1
Run c1i auth login, passing your tenant URL if it’s not already configured:
c1i auth login --url example.conductor.one
2
A browser window opens with an authorization code. Verify the code matches the one shown in your terminal, then click Authorize.
3
c1i stores your credentials in the system keychain. You’re ready to start using c1i.
You can also authenticate non-interactively using API credentials:
c1i auth login --client-id <your-client-id> --client-secret <your-client-secret>
To check whether you have valid credentials:
c1i auth status

Explore the API without credentials

The docs commands work without authentication, so you can explore the C1 API before logging in:
# Search documentation
c1i docs search "access requests"

# List all API endpoints
c1i docs endpoints

# View the schema for a specific endpoint
c1i docs endpoint /api/v1/users

# Fetch a full documentation page
c1i docs page /getting-started

Output conventions

c1i is designed to produce output that’s easy for programs to parse:
  • List commands (users list, apps list, etc.) output NDJSON — one JSON object per line.
  • The api command outputs pretty-printed JSON by default, or NDJSON when called with --paginate.
  • The docs commands output varies by subcommand: NDJSON for search results, plain text for pages, JSON for endpoint schemas, and YAML for the OpenAPI spec.
List commands auto-paginate by default. To control pagination manually, use the --page-token flag. See the c1i command reference for a complete list of commands, subcommands, and flags.