Skip to main content

Overview

Projects allow you to organize work for clients with tasks and budget management. Projects can be associated with customers and support multiple billing types.

Create a Project

curl -X POST "https://api.corebill.io/v1/projects?company_id=com_abc123" \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Website Redesign",
    "description": "Complete redesign of the marketing website",
    "customer_id": "cus_abc123",
    "priority": "high",
    "billing_type": "time_based",
    "budget_hours": 200,
    "hourly_rate": 75.00,
    "start_date": "2025-03-01",
    "due_date": "2025-05-01"
  }'

Statuses

StatusDescription
draftNot yet started
in_progressActively being worked on
on_holdPaused
reviewUnder review
completedFinished
cancelledCancelled

Billing Types

TypeDescription
time_basedBill by hours tracked
fixed_priceFixed project price
mixedCombination of both

Tasks

Each project can have tasks with their own status, assignee, and time estimates.
# Create a task
curl -X POST "https://api.corebill.io/v1/projects/pro_abc123/tasks?company_id=com_abc123" \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Design homepage mockup",
    "priority": "high",
    "status": "todo",
    "estimated_hours": 8,
    "is_billable": true,
    "tags": ["design", "frontend"]
  }'

Task Statuses

backlog > todo > in_progress > in_review > completed | cancelled

ID Prefixes

ResourcePrefixExample
Projectpro_pro_a1b2c3d4e5f6
Tasktsk_tsk_a1b2c3d4e5f6