> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usefini.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Overview
> Section hub for reading and managing tags through Fini's public API.
Tags are the individual values inside a tag group. There is no top-level public `list all tags` route. Instead, the API lets you fetch one tag by ID, list the tags inside one group, or list tags across a specific set of group IDs.
<Info>
If you need every tag in the workspace, first call [Tag groups](/en/api-reference/tag-groups) to collect the group IDs you care about, then call `GET /v2/tag-groups/tags/public` with those `tagGroupIds`.
</Info>
<Warning>
Path semantics are asymmetric in the current controller:
* `POST /v2/tag-groups/{id}/tags/public` uses `{id}` as the **tag group ID**
* `PUT /v2/tag-groups/tags/{id}/public` uses `{id}` as the **tag ID**
* `DELETE /v2/tag-groups/tags/{id}/public` uses `{id}` as the **tag ID**
</Warning>
## Reference pages
<CardGroup cols={3}>
<Card title="Get tag" icon="eye" href="/en/api-reference/get-tag">
`GET /v2/tags/{id}/public` - fetch one tag by ID.
</Card>
<Card title="List tags in group" icon="list" href="/en/api-reference/list-tags-in-group">
`GET /v2/tag-groups/{id}/tags/public` - list the tags in one tag group.
</Card>
<Card title="List tags across groups" icon="layer-group" href="/en/api-reference/list-tags-across-groups">
`GET /v2/tag-groups/tags/public` - list tags across one or more tag groups.
</Card>
<Card title="Create tag" icon="plus" href="/en/api-reference/create-tag">
`POST /v2/tag-groups/{id}/tags/public` - create a tag inside one tag group.
</Card>
<Card title="Update tag" icon="pen" href="/en/api-reference/update-tag">
`PUT /v2/tag-groups/tags/{id}/public` - update one tag by tag ID.
</Card>
<Card title="Delete tag" icon="trash" href="/en/api-reference/delete-tag">
`DELETE /v2/tag-groups/tags/{id}/public` - delete one tag by tag ID.
</Card>
</CardGroup>
## Endpoint map
| Method | Path | Scope | Purpose |
| - | - | - | - |
| `GET` | `/v2/tags/:id/public` | `read` | Fetch one tag by ID. |
| `GET` | `/v2/tag-groups/:id/tags/public` | `read` | List the tags inside one tag group. |
| `GET` | `/v2/tag-groups/tags/public` | `read` | List tags across one or more tag groups as a flat array. |
| `POST` | `/v2/tag-groups/:id/tags/public` | `write` | Create a tag inside a tag group. The path parameter is the tag group ID. |
| `PUT` | `/v2/tag-groups/tags/:id/public` | `write` | Update one tag. The path parameter is the tag ID. |
| `DELETE` | `/v2/tag-groups/tags/:id/public` | `write` | Delete one tag. The path parameter is the tag ID. |
## Tag object
<ResponseField name="id" type="string">
Tag ID.
</ResponseField>
<ResponseField name="createdAt" type="string">
ISO 8601 creation timestamp.
</ResponseField>
<ResponseField name="tagGroupId" type="string">
ID of the tag group that owns this tag.
</ResponseField>
<ResponseField name="tagName" type="string">
Tag label.
</ResponseField>
<ResponseField name="tagDescription" type="string">
Optional tag description or instruction text.
</ResponseField>
<Note>
Use the child pages in this section for the detailed request and response reference for each route.
</Note>
## Related topics
- [Overview](/en/api-reference/agents.md)
This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.
Tags

