Skip to content

Request tags

Tags are short labels you attach to a request. They let you split your usage and spend by whatever matters to you: a feature of your product, an environment, one of your own customers. The cost of a request never changes; tags only say where it goes.

Add the X-OVR-Tags header with a comma-separated list, or put a tags array in the request body. With the OpenAI SDKs, pass the body field as an extra field:

Terminal window
curl https://<your-gateway>/v1/chat/completions \
-H "Authorization: Bearer $OVR_API_KEY" \
-H "Content-Type: application/json" \
-H "X-OVR-Tags: feature:chatbot,env:prod" \
-d '{"model": "gpt-4.1-mini", "messages": [{"role": "user", "content": "Hello"}]}'

Use one or the other for a given request, not both.

  • Up to 10 tags per request. Extra tags are ignored; the request is still served and billed.
  • A tag is at most 64 characters. Longer tags are ignored, not shortened.
  • Case is kept: Prod and prod are two different tags.
  • Any text works. A key:value convention (env:prod, customer:acme, feature:search) keeps your reports readable.
  • Tags are metadata we store with the request. Do not put personal data in them: no names, emails or identifiers of people. The text of your messages is never stored; tags are.
  • Logs: a Tags column, a Tag filter, and the detail of each request.
  • Statistics › Explore: group by Tag. A request with several tags counts under each of them, so the rows can add up to more than your total spend.
  • CSV export of Logs: a Tags column, with tags separated by ;.

Tags apply to the requests you send from now on. Earlier requests stay untagged and show as “No tag”.