Skip to main content
AI/MLjeremylongshore

clari-install-auth

'Configure Clari API authentication with API key and set up export access.

Stars
2,267
Source
jeremylongshore/claude-code-plugins-plus-skills
Updated
2026-05-31
Slug
jeremylongshore--claude-code-plugins-plus-skills--clari-install-auth
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/jeremylongshore/claude-code-plugins-plus-skills/HEAD/plugins/saas-packs/clari-pack/skills/clari-install-auth/SKILL.md -o .claude/skills/clari-install-auth.md

Drops the SKILL.md into .claude/skills/clari-install-auth.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Clari Install & Auth

Overview

Set up Clari API access for exporting forecast data, pipeline snapshots, and revenue intelligence to your data warehouse. Clari uses API key authentication via the apikey header, with the primary API at api.clari.com/v4/.

Prerequisites

  • Clari enterprise account with API access enabled
  • Admin or RevOps role for API key generation
  • Target data warehouse (Snowflake, BigQuery, or Redshift) for exports

Instructions

Step 1: Generate API Token

  1. Log in to Clari at https://app.clari.com
  2. Navigate to User Settings > API Token
  3. Click Generate New API Token
  4. Copy and store the token securely
# Store securely -- never commit
export CLARI_API_KEY="your-api-token-here"

# Verify the key works
curl -s -H "apikey: ${CLARI_API_KEY}" \
  https://api.clari.com/v4/export/forecast/list \
  | jq '.forecasts | length'

Step 2: Configure Environment

# .env -- NEVER commit this file
CLARI_API_KEY=your-api-token
CLARI_BASE_URL=https://api.clari.com/v4
CLARI_ORG_ID=your-org-id

# .gitignore
.env
.env.local

Step 3: Test API Connectivity

import requests
import os

api_key = os.environ["CLARI_API_KEY"]
headers = {"apikey": api_key, "Content-Type": "application/json"}

# List available forecasts
response = requests.get(
    "https://api.clari.com/v4/export/forecast/list",
    headers=headers,
)
response.raise_for_status()

forecasts = response.json()["forecasts"]
for fc in forecasts:
    print(f"  {fc['forecastName']} (ID: {fc['forecastId']})")

Step 4: Copilot API Setup (Optional)

Clari Copilot (conversation intelligence) has a separate API:

# Copilot uses OAuth2 -- different from the forecast API
# Register at https://api-doc.copilot.clari.com

export CLARI_COPILOT_CLIENT_ID="your-client-id"
export CLARI_COPILOT_CLIENT_SECRET="your-client-secret"

# Get access token
curl -X POST https://api.copilot.clari.com/oauth/token \
  -d "grant_type=client_credentials" \
  -d "client_id=${CLARI_COPILOT_CLIENT_ID}" \
  -d "client_secret=${CLARI_COPILOT_CLIENT_SECRET}"

Error Handling

Error Cause Solution
401 Unauthorized Invalid or expired token Regenerate at User Settings > API Token
403 Forbidden Insufficient permissions Contact Clari admin for API access
404 Not Found Wrong API version or endpoint Use /v4/ prefix
Connection refused IP allowlist Check with IT for API access from your network

Resources

Next Steps

Proceed to clari-hello-world to export your first forecast.