Update Project
Update settings and configuration for an existing project.
Path Parameters
The project ID (e.g., prj_abc123).
Request Body
All fields are optional. Only provided fields will be updated.
Project display name.
Project description.
Branch to build from.
Project settings. Partial updates supported.
Enable/disable AI assistant.
Enable/disable full-text search.
Enable/disable usage analytics.
Response
Returns the updated project object.
Example
curl -X PATCH https://api.syntext.dev/v1/projects/prj_abc123 \
-H "Authorization: Bearer stx_abc12345_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Updated API Docs",
"settings": {
"aiEnabled": false
}
}'
import { Syntext } from '@syntext/sdk'
const client = new Syntext('stx_abc12345_...')
const project = await client.projects.update('prj_abc123', {
name: 'Updated API Docs',
settings: {
aiEnabled: false,
},
})
from syntext import Syntext
client = Syntext("stx_abc12345_...")
project = client.projects.update(
"prj_abc123",
name="Updated API Docs",
settings={"ai_enabled": False},
)
Response
{
"data": {
"id": "prj_abc123",
"name": "Updated API Docs",
"slug": "api-docs",
"description": "Documentation for our REST API",
"url": "https://api-docs-docs.syntext.dev",
"settings": {
"aiEnabled": false,
"searchEnabled": true,
"analyticsEnabled": true
},
"createdAt": "2026-01-15T12:00:00Z",
"updatedAt": "2026-06-28T11:00:00Z"
}
}
Error Responses
404 Not Found
Returned when the project does not exist.
{
"error": {
"code": "not_found",
"message": "Project does not exist"
}
}
400 Bad Request
Returned when a field value is invalid.
{
"error": {
"code": "invalid_request",
"message": "Invalid field value",
"details": {
"field": "slug",
"issue": "Slug must be URL-safe (lowercase letters, numbers, and hyphens)"
}
}
}
403 Forbidden
Returned when you don't have permission to update this project.
{
"error": {
"code": "forbidden",
"message": "You do not have permission to update this project"
}
}