xai-auth

Original🇺🇸 English
Translated
1 scriptsChecked / no sensitive code detected

xAI Grok API authentication and setup. Use when configuring xAI API access, setting up API keys, or troubleshooting authentication issues.

5installs
Added on

NPX Install

npx skill4agent add adaptationio/skrillz xai-auth

Tags

Translated version includes tags in frontmatter

xAI Grok API Authentication

Complete guide for setting up and managing xAI API authentication for Grok models with Twitter/X integration.

Quick Start

1. Get API Key

  1. Go to console.x.ai
  2. Sign in with your X (Twitter) account
  3. Navigate to "API Keys" section
  4. Click "Create API Key"
  5. Copy and save the key (starts with
    xai-
    )

2. Set Environment Variable

bash
# Add to .bashrc, .zshrc, or .env
export XAI_API_KEY="xai-your-key-here"

3. Test Connection

bash
curl https://api.x.ai/v1/models \
  -H "Authorization: Bearer $XAI_API_KEY"

Authentication Methods

Method 1: Environment Variable (Recommended)

python
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.getenv("XAI_API_KEY"),
    base_url="https://api.x.ai/v1"
)

Method 2: Direct Key

python
from openai import OpenAI

client = OpenAI(
    api_key="xai-your-key-here",
    base_url="https://api.x.ai/v1"
)

Method 3: Using xai-sdk

python
from xai_sdk import Client

client = Client(api_key=os.getenv("XAI_API_KEY"))

API Compatibility

xAI API is fully compatible with OpenAI SDK:
python
# Just change base_url - everything else works the same
from openai import OpenAI

client = OpenAI(
    api_key=os.getenv("XAI_API_KEY"),
    base_url="https://api.x.ai/v1"  # Only difference
)

response = client.chat.completions.create(
    model="grok-3-fast",  # Use Grok models
    messages=[{"role": "user", "content": "Hello!"}]
)

Free Credits

$150/Month Free Credits

  1. Go to console.x.ai
  2. Navigate to Settings → Data Sharing
  3. Enable data sharing opt-in
  4. Receive $150/month in API credits

Credit Usage

ActionCost
Grok 4.1 Fast (input)$0.20/1M tokens
Grok 4.1 Fast (output)$0.50/1M tokens
X Search / Web Search$5/1,000 calls
Code Execution$5/1,000 calls

Configuration File

Create
.env.xai
:
bash
# xAI API Configuration
XAI_API_KEY=xai-your-key-here
XAI_BASE_URL=https://api.x.ai/v1
XAI_DEFAULT_MODEL=grok-3-fast

Error Handling

Common Errors

ErrorCauseSolution
no credits
No credits on accountAdd credits or enable free tier
invalid_api_key
Wrong or expired keyGenerate new key at console.x.ai
rate_limit_exceeded
Too many requestsImplement backoff, reduce frequency
model_not_found
Invalid model nameCheck available models

Python Error Handling

python
from openai import OpenAI, APIError, RateLimitError

client = OpenAI(
    api_key=os.getenv("XAI_API_KEY"),
    base_url="https://api.x.ai/v1"
)

try:
    response = client.chat.completions.create(
        model="grok-3-fast",
        messages=[{"role": "user", "content": "Hello"}]
    )
except RateLimitError:
    print("Rate limit hit, waiting...")
    time.sleep(60)
except APIError as e:
    print(f"API error: {e}")

Security Best Practices

  1. Never commit API keys to git
  2. Use environment variables instead of hardcoding
  3. Rotate keys regularly via console.x.ai
  4. Use separate keys for dev/prod environments
  5. Add to .gitignore:
    .env
    .env.*
    **/secrets.*

Rate Limits

ModelRequests/MinTokens/Min
Grok 4.1 Fast60100,000
Grok 43050,000
Grok 3 Mini100200,000

Endpoints

EndpointDescription
https://api.x.ai/v1/chat/completions
Chat completions
https://api.x.ai/v1/models
List available models
https://api.x.ai/v1/responses
Agent Tools API

Related Skills

  • xai-models
    - Model selection guide
  • xai-x-search
    - Twitter/X search
  • xai-sentiment
    - Sentiment analysis

References