## TL;DR

Use the sysparm_display_value query parameter. true returns display values for all fields, false returns the raw database values, and all returns both. Set it on the request when you need the human-readable text like the incident state name.

## Fix

1. Use the sysparm_display_value query parameter. true returns display values for all fields, false returns the raw database values, and all returns both.
   Expected: You get the expected result; the problem is gone.
2. Set it on the request when you need the human-readable text like the incident state name.
   Expected: You get the expected result; the problem is gone.

## When to use

- You are dealing with this situation.
- The symptom matches: ServiceNow REST API returns internal values instead of display text (sysparm_display_value).

## When NOT to use

- Unrelated issues with a different cause.
- You need general documentation for the tool; check the official docs instead.

## Compatibility

Reported per the linked source.

## Variant phrasings

### ServiceNow REST API returns internal values instead of display text (sysparm_display_value)

## Why it happens

Stack Overflow question (score 6): creating Incident records via the ServiceNow REST API works, but choice fields like state come back as internal values instead of readable text.

## Edge cases

- If your error message differs even slightly, this is probably a different issue; search the exact text.
- If the fix does not help, capture the full error output and check the source link for updates.