Skip to main content

API Quick Start

As a developer, you want to score products programmatically via the API so that you can integrate maturity scoring into your CI/CD pipeline, internal tools, or customer-facing applications.

Authentication

All authenticated endpoints accept a Bearer token in the Authorization header:
Generate an API key under Settings > API Keys in the platform. API keys are long-lived and suitable for backend integrations.
curl -H "Authorization: Bearer dac_your_api_key_here" \
  https://app.dacard.ai/api/scores
Never expose API keys in client-side code or public repositories. Use environment variables for all credentials.

Score a product

Send a POST request to /api/score with the product URL:
curl -X POST https://app.dacard.ai/api/score \
  -H "Authorization: Bearer dac_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://linear.app",
    "context": "Linear is a project management tool for software teams"
  }'
The response includes the full scoring result with all 27 dimensions:
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "url": "https://linear.app",
  "companyName": "Linear",
  "totalScore": 78,
  "stageName": "Leading",
  "dimensions": [
    {
      "dimensionId": "market_intelligence",
      "dimensionName": "Market Intelligence",
      "score": 4,
      "stageName": "Compounding",
      "evidence": "...",
      "confidence": "high",
      "reasoning": "..."
    }
  ],
  "strengths": ["delivery_velocity", "experience_design", "architecture_systems"],
  "gaps": ["cost_token_economics", "data_strategy_flywheel", "pricing_packaging"],
  "createdAt": "2026-04-07T12:00:00.000Z"
}
The optional context field helps the scoring engine understand products with minimal public content. Include a brief description of what the product does and who it serves.

Retrieve results

Scoring results are accessible by ID. This endpoint is public (no auth required), supporting shareable URLs:
curl https://app.dacard.ai/api/score/550e8400-e29b-41d4-a716-446655440000
List your score history:
curl -H "Authorization: Bearer dac_your_api_key_here" \
  https://app.dacard.ai/api/scores

F3 AI Product Assessment

Score using the F3 framework (AI-nativeness evaluation):
curl -X POST https://app.dacard.ai/api/score/product \
  -H "Authorization: Bearer dac_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://linear.app",
    "context": "Linear is a project management tool with AI features"
  }'

Lifecycle assessment

Retrieve lifecycle stage definitions (public, no auth):
curl https://app.dacard.ai/api/lifecycle/stages
Submit a lifecycle self-assessment:
curl -X POST https://app.dacard.ai/api/lifecycle/assessment \
  -H "Authorization: Bearer dac_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "productId": "550e8400-e29b-41d4-a716-446655440000",
    "answers": {
      "task_define_problem": "completed",
      "task_user_research": "in_progress",
      "task_competitive_analysis": "not_started"
    }
  }'

Rate limits and credits

ResourceCost
URL score10 credits per score
Chat message1 credit per message
API call0.1 credits per call
Credits reset monthly. Monitor usage:
curl -H "Authorization: Bearer dac_your_api_key_here" \
  https://app.dacard.ai/api/usage

Error codes

CodeStatusDescription
AUTH_REQUIRED401Missing or invalid authentication
FORBIDDEN403Insufficient permissions
NOT_FOUND404Resource not found
INVALID_URL400URL is malformed or unreachable
CRAWL_FAILED400Failed to crawl the target URL
QUOTA_EXCEEDED429Monthly credit limit reached
ANON_RATE_LIMIT429Anonymous rate limit (1 per IP per hour)

Health check

curl https://app.dacard.ai/api/health
Returns component-level status for database, auth, billing, scoring, and environment.

Next steps

Full API Reference

Complete endpoint documentation with request/response schemas.

Connect integrations

Pull real operational signals into scoring via integrations.

Webhooks reference

Stripe webhook events for billing lifecycle management.

Agent Studio

Automate intelligence gathering with autonomous agents.