Projects are the top-level organizational unit in Varo Cloud. Every deployment, environment configuration, and integration belongs to a project. You can use the Projects API to programmatically create and manage projects across your organization, automate provisioning pipelines, and keep your infrastructure in sync with your internal tooling.
Base URL: https://inference.varo.cloud/v1
All requests require an Authorization: Bearer YOUR_API_KEY header.
GET /projects
Returns a paginated list of all projects in your organization.
Number of projects to return per page. Maximum value is 100.
Pagination cursor returned by a previous response. Pass this value to retrieve the next page of results.
curl -X GET "https://inference.varo.cloud/v1/projects?per_page=20" \
-H "Authorization: Bearer YOUR_API_KEY"
{
"data": [
{
"id": "proj_abc123",
"name": "storefront-api",
"region": "us-east-1",
"description": "Customer-facing storefront API service",
"status": "active",
"created_at": "2024-01-10T08:00:00Z",
"updated_at": "2024-01-14T12:30:00Z"
},
{
"id": "proj_def456",
"name": "internal-dashboard",
"region": "eu-west-1",
"description": "Internal analytics dashboard",
"status": "archived",
"created_at": "2023-11-05T09:15:00Z",
"updated_at": "2024-01-02T17:00:00Z"
}
],
"meta": {
"per_page": 20,
"next_cursor": "cur_ghi789"
}
}
Array of project objects matching the query.
The number of results returned per page.
Cursor value to pass in your next request to retrieve the following page. null if there are no further pages.
POST /projects
Creates a new project in your organization.
A unique, human-readable name for the project. Must be between 3 and 64 characters.
The cloud region in which to create the project (e.g. us-east-1, eu-west-1, ap-southeast-2).
An optional plain-text description of the project’s purpose. Maximum 255 characters.
curl -X POST "https://inference.varo.cloud/v1/projects" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "payments-service",
"region": "us-east-1",
"description": "Handles all payment processing workflows"
}'
{
"id": "proj_jkl012",
"name": "payments-service",
"region": "us-east-1",
"description": "Handles all payment processing workflows",
"status": "active",
"created_at": "2024-01-15T10:00:00Z",
"updated_at": "2024-01-15T10:00:00Z"
}
The unique identifier for the newly created project.
Initial status of the project. Always active on creation.
GET /projects/
Retrieves a single project by its ID.
The unique identifier of the project to retrieve.
curl -X GET "https://inference.varo.cloud/v1/projects/proj_abc123" \
-H "Authorization: Bearer YOUR_API_KEY"
{
"id": "proj_abc123",
"name": "storefront-api",
"region": "us-east-1",
"description": "Customer-facing storefront API service",
"status": "active",
"created_at": "2024-01-10T08:00:00Z",
"updated_at": "2024-01-14T12:30:00Z"
}
PUT /projects/
Updates the name or description of an existing project.
The unique identifier of the project to update.
A new name for the project. Must be between 3 and 64 characters.
A new description for the project. Maximum 255 characters. Pass an empty string to clear the existing description.
curl -X PUT "https://inference.varo.cloud/v1/projects/proj_abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "storefront-api-v2",
"description": "Refactored storefront API with improved caching"
}'
{
"id": "proj_abc123",
"name": "storefront-api-v2",
"region": "us-east-1",
"description": "Refactored storefront API with improved caching",
"status": "active",
"created_at": "2024-01-10T08:00:00Z",
"updated_at": "2024-01-15T11:45:00Z"
}
DELETE /projects/
Permanently deletes a project and all of its associated resources.
The unique identifier of the project to delete.
Deleting a project permanently removes all deployments, environment variables, and configuration associated with it. This action cannot be undone. Ensure you have backed up any critical data before proceeding.
curl -X DELETE "https://inference.varo.cloud/v1/projects/proj_abc123" \
-H "Authorization: Bearer YOUR_API_KEY"
A successful deletion returns 204 No Content with an empty response body.
Project Object
The following fields are present on every project object returned by the API.
Unique identifier for the project, prefixed with proj_.
The human-readable name of the project.
The cloud region where the project is hosted (e.g. us-east-1).
Optional description of the project. May be null if not set.
Current state of the project. One of active or archived.
ISO 8601 datetime string representing when the project was created.
ISO 8601 datetime string representing when the project was last modified.