Quickstart

Get up and running with Egret in 5 minutes. This guide walks you through creating an account, getting an API key, and making your first RAG query.

1. Create an account

Sign up at getegret.com/signup. Every new account includes a Free plan with credits to explore the platform.

2. Get your API key

Navigate to Settings → API Keys in the dashboard. Click "Create Key", give it a name, and copy the key. You'll use this for all API requests.

export EGRET_API_KEY="egret_..."

3. Explore available domains

Domains are public — no authentication required to list them:

curl https://api.getegret.com/v1/domains/

Response:

[
  {
    "slug": "business-continuity",
    "name": "Business Continuity",
    "description": "Business Continuity and Disaster Recovery (BC/DR) regulatory guidelines, standards, and best practices across multiple jurisdictions.",
    "icon": "",
    "category_label": "Region",
    "display_order": 1
  }
]

Each domain has a slug (e.g. business-continuity) and is subdivided into categories (e.g. jurisdictions like us, sg). Use these values in your query request.

4. Explore categories within a domain

Each domain is divided into categories (jurisdictions or regions). Also public — no authentication required:

curl https://api.getegret.com/v1/domains/business-continuity/categories/

Response:

[
  {
    "code": "us",
    "name": "United States",
    "description": "US business continuity standards including NIST SP 800-34, FEMA guidelines, FFIEC BC handbook, and sector-specific requirements.",
    "icon": "🇺🇸",
    "display_order": 1,
    "document_count": 0,
    "last_synced_at": null,
    "full_s3_prefix": "business-continuity/us/",
    "is_active": true
  },
  {
    "code": "sg",
    "name": "Singapore",
    "description": "Singapore BC/DR requirements including MAS Technology Risk Management Guidelines, BCA BC framework, and CSA guidelines.",
    "icon": "🇸🇬",
    "display_order": 2,
    "document_count": 0,
    "last_synced_at": null,
    "full_s3_prefix": "business-continuity/sg/",
    "is_active": true
  }
]

Use the code value (e.g. us) as the category field in your query request.

5. Browse available models

Retrieve the list of models your plan supports. Authentication required:

curl https://api.getegret.com/v1/models/ \
  -H "Authorization: Bearer $EGRET_API_KEY"

Response:

[
    {
        "model": "us.anthropic.claude-3-5-haiku-20241022-v1:0",
        "name": "Egret Standard",
        "provider": "Anthropic",
        "tier": "standard",
        "credit_cost": 1,
        "max_input_tokens": 200000,
        "max_output_tokens": 4096,
        "supports_streaming": true,
        "is_default": true,
        "display_order": 1,
        "notes": "Fast, cost-effective. Best for standard advisory queries..."
    },
    {
        "model": "us.anthropic.claude-haiku-4-5-20251001-v1:0",
        "name": "Egret Premium",
        "provider": "Anthropic",
        "tier": "standard",
        "credit_cost": 2,
        "max_input_tokens": 200000,
        "max_output_tokens": 4096,
        "supports_streaming": true,
        "is_default": false,
        "display_order": 2,
        "notes": "Claude Haiku 4.5 delivers near-frontier performance..."
    },
    {
        "model": "us.anthropic.claude-3-7-sonnet-20250219-v1:0",
        "name": "Egret Advanced",
        "provider": "Anthropic",
        "tier": "premium",
        "credit_cost": 5,
        "max_input_tokens": 200000,
        "max_output_tokens": 4096,
        "supports_streaming": true,
        "is_default": false,
        "display_order": 3,
        "notes": "Highest quality analysis. Best for complex regulatory..."
    }
]

Pass the model_id in your query request to select a specific model. Omit it to use the default. Credit cost varies per model — see Billing for details.

6. Make your first query

Queries require authentication. Use your API key as a Bearer token:

curl -X POST https://api.getegret.com/v1/query/ \
  -H "Authorization: Bearer $EGRET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "What is Business Continuity Management according to the FFIEC IT Examination Handbook?",
    "domain": "business-continuity",
    "category": "us",
    "mode": "compliance",
    "model": "us.anthropic.claude-3-5-haiku-20241022-v1:0",
    "knowledge_scope": "public",
    "stream": false
  }'
FieldTypeRequiredDescription
querystringYesYour compliance question in plain language
domainstringYesDomain slug (e.g. business-continuity)
categorystringYesCategory code (e.g. us, sg)
modestringYesQuery mode (auto, advisory, compliance)
model_idstringNoModel to use — omit to use the default model
knowledge_scopestringNoFilter knowledge sources: all (default — public + private), public (regulatory library only), private (your organisation's documents only)
streambooleanNoSet true for Server-Sent Events streaming. Default: false

7. Read the response

The response includes the generated answer, source documents, follow-up suggestions, and usage stats:

{
  "response": "# Business Continuity Management (BCM)\n\nBCM is the process for management to oversee and implement resilience, continuity, and response capabilities...",
  "sources": [
    {
      "filename": "ffiec_itbooklet_businesscontinuitymanagement_v3.pdf",
      "excerpt": "BCM is the process for management to oversee and implement resilience, continuity, and response capabilities to safeguard employees, customers, and products and services.",
      "score": 0.8438505,
      "download_url": "https://egret-docs.s3.amazonaws.com/..."
    }
  ],
  "suggestions": [
    "What are the key differences between Business Continuity Planning and Business Continuity Management?",
    "How do organizations develop a comprehensive BCM strategy?",
    "What role does the board of directors play in BCM?"
  ],
  "context_quality": {
    "insufficient_context": false,
    "chunks_retrieved": 5,
    "avg_relevance_score": 0.815
  },
  "usage": {
    "input_tokens": 9042,
    "output_tokens": 597,
    "cost_usd": 0.0030067,
    "model": "us.anthropic.claude-3-5-haiku-20241022-v1:0"
  },
  "session_id": "53c719f0-4520-45e7-8406-3074c40bf9ce",
  "message_id": 120
}

Next steps