Home › Prompts › Claude › High-volume ticket classifier with JSON output
High-volume ticket classifier with JSON output
Classify and extract fields from support tickets or feedback at scale with a fixed label set and strict JSON, tuned for Haiku 5.5's effort setting.
ClaudeData analysisRuleStack original
Written for Claude Haiku 5.5 (claude-haiku-5-5) · Updated 2026-10-18
Note: Review and test before use. Provided as is, without warranty. See Terms.
Prompt
DownloadClassify the ticket below. Use only these labels.
Categories: [category list, e.g. billing, bug, feature_request, account_access, shipping, other]
Urgency: low | normal | high (high = [your definition, e.g. customer cannot use the product or mentions a deadline within 24 hours])
Extract:
- product_area: one of [areas] or null
- order_id: the order number if present, else null
- sentiment: negative | neutral | positive
- summary: one sentence, no customer names
Return only JSON matching this shape: {"category": "", "urgency": "", "product_area": null, "order_id": null, "sentiment": "", "summary": ""}
Ticket:
<ticket>
[ticket text]
</ticket>Replace everything in [square brackets] with your own details.
Settings & parameters
- Model
claude-haiku-5-5withoutput_config.effortlowfor bulk runs; compare againstmediumon a labeled sample - Use structured outputs (a JSON schema in
output_config.format) so every reply parses - Batch large backlogs through the Message Batches API for lower cost
Variations
- Multi-label: let
categorybe an array of up to two labels. - Add
"needs_human": true|falsewith your routing rule.
Tips
- Keep a 100-ticket labeled set and measure accuracy per label before switching models or effort levels.
- If the classifier must call a lookup tool (for example, to fetch the order), keep adaptive thinking on; Anthropic notes Haiku 5.5 can skip needed tool calls when thinking is off and a JSON format is required.