Tringify

Tags

Tags are short, free-form labels merchants use to organize products. A tag belongs to a single store and is referenced by its slug across the rest of the API. The Store API exposes the full create/read/update/delete surface for tags plus search and bulk operations.

Required scope

Read endpoints require read_products. Write endpoints require write_products, which implicitly grants read.

The tag object

Every tag response includes the canonical fields below. Bulk operations return arrays of the same shape; partial updates return only the fields that changed.

json
{
  "id": "tag_01HW8M9ZAB7KE3R6FQXCD",
  "store_id": "store_01HW6T7P3J7MK0V1Q5W8B",
  "name": "Summer Sale",
  "slug": "summer-sale",
  "created_at": "2026-05-14T09:30:00Z",
  "updated_at": "2026-05-14T09:30:00Z"
}

Endpoints

The Tags resource exposes the following endpoints under the Store API base URL.

GET/api/v1/tags
GET/api/v1/tags/:id
POST/api/v1/tags
PUT/api/v1/tags/:id
DELETE/api/v1/tags/:id
POST/api/v1/tags/bulk
DELETE/api/v1/tags/bulk
GET/api/v1/tags/search
GET/api/v1/tags/limits

Quick example

Create a tag with curl. Replace $TOKEN with a valid Store API token that has the write_products scope.

bash
curl -X POST https://api.tringify.com/api/v1/tags \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Summer Sale"}'

Response on success returns 201 Created with the tag envelope shown above. The slug is generated from the name if you don't supply one.

Slug case-sensitivity

User-supplied slugs are lowercased on save to match the case-insensitive unique index. MyTag and mytag collide.

Errors

All Tag errors use the standard registered-code envelope. Common codes you should expect to handle:

  • tag_duplicate — name or slug collides with an existing tag in this store.
  • tag_not_found — the requested ID does not exist (or belongs to another store).
  • tag_name_invalid — the name failed validation (length, characters).
  • tag_in_use — the tag is referenced by products and can't be deleted without confirmation.