Response Types
HITL.sh supports six different response types that allow reviewers to provide structured feedback. Each response type has its own configuration options and validation rules, giving you flexibility to design the perfect review experience for your use case.Overview
When creating a request, you specify theresponse_type and response_config to define how reviewers will respond. The response type determines the UI reviewers see in the mobile app and how their responses are structured and validated.
Text
Free-form text responses with character limits and validation
Editable Draft
Send a draft for the reviewer to revise before sending back
Single Select
Choose one option from a predefined list with labels
Multi Select
Choose multiple options with minimum/maximum selection limits
Rating
Numeric ratings with custom scales, steps, and labeled endpoints
Number
Numeric input with ranges, decimal places, and formatting
Text Response
Free-form text input allowing reviewers to provide detailed written feedback.Configuration
string
Placeholder text shown in the input field
integer
default:"0"
Minimum number of characters required
integer
required
Maximum number of characters allowed (1-5000)
boolean
default:"false"
Whether the response is required
Example Request
Response Format
When a reviewer submits a text response, you’ll receive:Editable Text Response
Send a draft message for the reviewer to edit and revise before sending back. Perfect for AI-generated notifications, emails, or messages that need human polish.Configuration
string
required
The initial draft text that the reviewer will edit
string
Placeholder text shown in the editor
integer
default:"0"
Minimum characters required
integer
required
Maximum characters allowed (1-10000)
boolean
default:"false"
Whether a response is required
Example Request
Response Format
When a reviewer submits an editable text response, you’ll receive:Single Select Response
Allow reviewers to choose one option from a predefined list.Configuration
array
required
Array of options (1-20 options max). Can be simple strings or SelectOption objects.
boolean
default:"false"
Whether a selection is required
Example Request
Response Format
Multi Select Response
Allow reviewers to choose multiple options from a predefined list.Configuration
array
required
Array of options (1-20 options max). Can be simple strings or SelectOption objects.
integer
required
Maximum number of options that can be selected
integer
default:"1"
Minimum number of options that must be selected (auto-added when max_selections is provided)
boolean
default:"false"
Whether at least one selection is required
Example Request
Response Format
Rating Response
Numeric rating scale with configurable range and step values.Configuration
number
required
Maximum value of the rating scale
number
default:"1"
Minimum value of the rating scale (must be < scale_max)
number
default:"1"
Step increment for the rating scale (e.g., 0.5 for half-star ratings, 1 for full-star ratings)
boolean
default:"false"
Whether a rating is required
Example Request
Response Format
Number Response
Numeric input with validation and formatting options.Configuration
number
required
Maximum allowed value
number
default:"1"
Minimum allowed value (must be < max_value)
integer
default:"2"
Number of decimal places allowed (0-10)
boolean
default:"false"
Whether negative numbers are allowed
boolean
default:"false"
Whether a value is required
Example Request
Response Format
Validation Rules
HITL.sh validates all responses against the configured rules:Text Validation
Text Validation
- Response must be a string
- Length must be within min_length and max_length bounds
- Required responses cannot be empty strings
Single Select Validation
Single Select Validation
- Response must be a valid option value from the options array
- Required responses must include a selection
- Only one option can be selected
Multi Select Validation
Multi Select Validation
- All selected values must be valid options from the options array
- Number of selections must be within min_selections and max_selections bounds
- No duplicate selections allowed
Rating Validation
Rating Validation
- Response must be a number within scale_min and scale_max bounds
- Value must align with scale_step increments (e.g., only .0 and .5 for step=0.5)
- Required ratings cannot be null
Number Validation
Number Validation
- Response must be a number within min_value and max_value bounds
- Decimal places must not exceed configured decimal_places
- Negative numbers only allowed if allow_negative is true
Editable Text Validation
Editable Text Validation
- Response must be an object containing
revised_text(string) andwas_edited(boolean) revised_textlength must be within min_length and max_length bounds- Required responses cannot have an empty
revised_text max_lengthmust be between 1 and 10000
Best Practices
Choosing Response Types
1
Text for Complex Feedback
Use text responses when you need detailed explanations, qualitative feedback, or open-ended input that can’t be captured in predefined options.
2
Single Select for Decisions
Use single select for clear decisions with mutually exclusive options. Perfect for approval workflows, categorization, and status assignments.
3
Multi Select for Categorization
Use multi select when multiple aspects need to be evaluated simultaneously, such as content issues, feature requests, or compliance checklist items.
4
Rating for Quality Assessment
Use ratings for quantitative assessments where you need to measure quality, satisfaction, confidence levels, or performance on a scale.
5
Number for Quantitative Input
Use number responses for pricing, quantities, measurements, or any numeric data that needs validation and formatting.
6
Editable Text for Human Polish
Use editable text when you have AI-generated drafts — emails, notifications, or messages — that need a human to refine the tone, accuracy, or wording before delivery.
Configuration Tips
Keep Options Clear
Use descriptive labels and include helpful descriptions for select options. Consider adding colors for visual clarity.
Set Reasonable Limits
Configure appropriate min/max values, character limits, and selection bounds to prevent invalid or unusable responses.
Provide Good Defaults
Always specify meaningful default responses that represent the safest or most common expected outcome.
Consider Mobile UX
Remember that reviewers will interact with these response types on mobile devices. Keep options concise and touch-friendly.
Response Handling
When processing responses in your application:Next Steps
Create Your First Request
Start using these response types in your requests
Mobile App Guide
See how reviewers interact with these response types
Webhooks
Set up webhooks to receive responses in real-time
Simple Integration
Learn how to integrate HITL.sh with practical examples