Create Branch
Create a new branch using Avo API
The Create Branch API allows you to programmatically create new branches in your Avo workspace.
Endpoint
POST https://api.avo.app/workspaces/:workspaceId/branches/v1
:workspaceId
is the ID of your workspace. You’ll find it in the URL of your avo tab after /schemas/
.
Authentication
This endpoint requires an authorization header containing a Base64 encoded service account name and secret.
Rate Limit
We currently soft-enforce 1/req/s rate limit per service account for this endpoint. Please reach out to us if you have a use case in mind that requires a higher rate limit.
Parameters
- workspaceId
Locate your workspaceId in the URL
avo.app/schemas/:workspaceId
- Base64 encoding secret header
The base64 encoded token expects name:secret
See more on authorization
Request Body
The request body must be a JSON object with the following field:
{
"name": "my-new-branch"
}
Branch Name Rules
- The branch name must be in kebab case (lowercase letters, numbers, and hyphens only)
- The branch name cannot match any currently open branch in the workspace
- Valid examples:
feature-123
,bugfix-456
,release-1-0-0
- Invalid examples:
Feature Branch
,bugfix_456
,release@1.0.0
Response
On success, the API will return a 201 Created status code with the newly created branch details:
{
"branchId": "abc123def",
"branchName": "my-new-branch",
"branchUrl": "https://avo.app/schemas/abcd/branches/1234"
}
Error Responses
400 Bad Request
Returned when:
- The branch name is invalid (contains invalid characters)
- The branch name is empty
- The request body is malformed
{
"error": 'Invalid branch name, try "suggestedName" instead'
}
409 Conflict
Returned when:
- A branch with the same name already exists in the workspace
{
"error": "Branch with this name already exists"
}
401 Unauthorized
Returned when:
- The authorization header is missing or invalid
{
"error": "Unauthorized"
}
Example Usage
Request
$ curl -H "authorization: Basic <Base64 encoded token>" \
-H "Content-Type: application/json" \
-X POST https://api.avo.app/workspaces/:workspaceId/branches/v1 \
-d '{"name": "my-new-branch"}'
Response
{
"branchId": "abc123def",
"branchName": "my-new-branch",
"branchUrl": "https://avo.app/schemas/abcd/branches/abc123def"
}