Skip to main content
PATCH
/
projects
/
{id}
Update a project
curl --request PATCH \
  --url https://api.corebill.io/v1/projects/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "title": "Website Redesign v2",
  "description": "<string>",
  "customer_id": "<string>",
  "assigned_to": [
    "<string>"
  ],
  "status": "completed",
  "priority": "low",
  "start_date": "2023-12-25",
  "due_date": "2023-12-25",
  "billing_type": "time_based",
  "budget_hours": 123,
  "budget_amount": 123,
  "hourly_rate": 123,
  "progress_percentage": 50,
  "is_archived": true,
  "metadata": {}
}
'
{
  "data": {
    "id": "pro_a1b2c3d4e5f6",
    "public_id": "PRO-2025-000001",
    "company_id": "com_a1b2c3d4e5f6",
    "customer_id": "cus_a1b2c3d4e5f6",
    "title": "Website Redesign",
    "description": "Complete redesign of the marketing website",
    "status": "in_progress",
    "priority": "high",
    "start_date": "2025-03-01",
    "due_date": "2025-05-01",
    "billing_type": "time_based",
    "budget_hours": 200,
    "budget_amount": 15000,
    "hourly_rate": 75,
    "progress_percentage": 45,
    "is_archived": false,
    "customer_name": "Acme Corp",
    "total_hours": 90.5,
    "total_revenue": 6787.5,
    "total_cost": 3393.75,
    "profit": 3393.75,
    "tasks_count": 12,
    "completed_tasks": 5,
    "created_at": "2025-03-01T10:00:00Z",
    "updated_at": "2025-04-15T14:30:00Z",
    "assigned_to": [
      "usr_abc123",
      "usr_def456"
    ],
    "created_by": "usr_abc123",
    "completed_at": "2023-11-07T05:31:56Z",
    "metadata": {},
    "public_token": "<string>"
  }
}

Authorizations

Authorization
string
header
required

API key authentication. Generate keys from the Corebill dashboard under the Developers section.

Example: Authorization: Bearer sk_live_abc123def456

Path Parameters

id
string
required

The project ID

Query Parameters

company_id
string
required

The company ID to scope the request to

Body

application/json

All fields are optional. Any combination can be updated.

title
string
Example:

"Website Redesign v2"

description
string
customer_id
string
assigned_to
string[]
status
enum<string>
Available options:
draft,
in_progress,
on_hold,
review,
completed,
cancelled
Example:

"completed"

priority
enum<string>
Available options:
low,
medium,
high,
urgent
start_date
string<date>
due_date
string<date>
billing_type
enum<string>
Available options:
time_based,
fixed_price,
mixed
budget_hours
number
budget_amount
number<double>
hourly_rate
number<double>
progress_percentage
integer
Required range: 0 <= x <= 100
is_archived
boolean
metadata
object

Response

Updated project

data
object
required

Project object returned in list endpoints