Skip to main content

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 the response_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:
  • Response must be a string
  • Length must be within min_length and max_length bounds
  • Required responses cannot be empty strings
  • Response must be a valid option value from the options array
  • Required responses must include a selection
  • Only one option can be selected
  • 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
  • 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
  • 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
  • Response must be an object containing revised_text (string) and was_edited (boolean)
  • revised_text length must be within min_length and max_length bounds
  • Required responses cannot have an empty revised_text
  • max_length must 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