Skip to main content

Manage Tags

/api/external/tags, api/external/tags/:id

info

This API requires authentication with an API key. See our API Authentication article for more details.


The tags API allows for fetching, creating, and updating a workspace's tags.

List All Tags

Retrieve a list of all tags.

GET https://your-workspace.revision.app/api/external/tags

This returns a JSON response with an array of all of your tags, following this example structure:

[
{
"id": "ZxuuNkpG9I31",
"name": "Demo Tag",
"desc": "With a really cool description",
"color": "purple"
},
{
"id": "zEnyt0WpKkkm",
"name": "Other Demo Tag",
"desc": null,
"color": "green",
"apiContext": "2026-01-01 01:01:01"
}
]

Get Tag

Retrieve a specific tag by ID.

GET https://your-workspace.revision.app/api/external/tags/{id}

This returns a JSON response with the tag:

{
"id": "ZxuuNkpG9I31",
"name": "Demo Tag",
"desc": "With a really cool description",
"color": "purple"
}

Create Tag

Create a new tag.

POST https://your-workspace.revision.app/api/external/tags

Example of creating a new tag:

{
"name": "Production Ready",
"desc": "Components that are ready for production deployment",
"color": "green"
}

Update Tag

Update an existing tag.

PATCH https://your-workspace.revision.app/api/external/tags/{id}

Example of updating an existing tag:

{
"name": "Production Ready",
"desc": "Updated description for production components",
"color": "blue"
}
Partial Updates

When updating, you only need to send the fields you want to change. Omitted fields remain unchanged. Set a field to null to clear its value.

Upsert Batch Tags

Create or update multiple tags in a single batch operation.

PATCH https://your-workspace.revision.app/api/external/tags/upsert-batch

Example of upserting multiple tags:

[
{
"name": "Infrastructure",
"desc": "Core infrastructure components",
"color": "blue"
},
{
"id": "ZxuuNkpG9I31",
"name": "Updated Tag Name",
"desc": "Now with a description!",
"color": "purple"
},
{
"name": "External",
"desc": "External services and dependencies",
"color": "orange"
}
]
tip

In batch operations, include an id to update an existing tag, or omit it to create a new one.

Delete Tag

Not Implemented

This endpoint is not yet implemented and will return a 501 status code.

DELETE https://your-organization.revision.app/api/external/tags/{id}

Data Types

ValueDescription
id?: stringSystem-generated ID. Use this to update existing tags.
name: stringThe tag's name.
desc?: stringOptional description of the tag.
color: stringTag color: "gray", "red", "orange", "yellow", "green", "blue", or "purple".
apiContext?: stringOptional tracking field. Defaults to current timestamp.

Examples

Creating a new tag

curl -X POST https://your-workspace.revision.app/api/external/tags \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-api-key-here" \
-d '{
"name": "Production Ready",
"desc": "Components that are ready for production deployment",
"color": "green"
}'

Getting a tag by ID

curl -X GET https://your-workspace.revision.app/api/external/tags/ZxuuNkpG9I31 \
-H "Authorization: Bearer a0e08cad-184b-48a4-miku-14776a549b79"

Updating an existing tag

curl -X PATCH https://your-workspace.revision.app/api/external/tags/ZxuuNkpG9I31 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-api-key-here" \
-d '{
"name": "Production Ready",
"desc": "Updated description for production components",
"color": "blue"
}'

Upserting batch tags

curl -X PATCH https://your-workspace.revision.app/api/external/tags/upsert-batch \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-api-key-here" \
-d '[
{
"name": "Infrastructure",
"desc": "Core infrastructure components",
"color": "blue"
},
{
"id": "ZxuuNkpG9I31",
"name": "Updated Tag",
"color": "purple"
}
]'