NOTE
Please use the table of contents on the right side of this page to quickly navigate to a desired section.
API Data Dictionary
The following data dictionary includes all the essential information you will need to integrate with our Claim Inquiry API and serves as a ready reference source should you encounter a problem. It is intended to support developers, analysts and stakeholders in understanding the structure, usage, and expected values of the data exchanged through the system.
Use this data dictionary:
- As a reference when integrating with or troubleshooting the API/data interface.
- Ensure all required fields are populated when constructing requests.
- Refer to the HTTP status codes section for guidance on resolving issues.
Query examples — See the following example queries or API requests that illustrate the usage and expected formats; useful for developers and testers to understand expected formats and usage patterns.
Request body — Defines the input parameters required for API calls or data queries. Includes field names, data types, required/optional status, and descriptions.
Parameters — Provide required and optional fields for the API calls.
Response body — Lists the fields returned in the response payload. Includes field names, data types, formats, and descriptions.
NOTE
Please note that our APIs are private and secure, and require unique credentials to generate a Bearer token and gain access to. Please (generate a Bearer token based on your API environment) to obtain access to our APIs.
URLs
| Sandbox | Production |
|---|---|
Generate Bearer token — https://sandbox-apigw.optum.com/apip/auth/sntl/v1/tokenHealth check — https://dev.real-payerapis-np.optum.com/oihub/dental/claim-inquiry/health-checkClaim Inquiry — https://dev.real-payerapis-np.optum.com/oihub/dental/claim-inquiry/v1/graphql | Generate Bearer token — https://apigw.optum.com/apip/auth/sntl/v1/tokenHealth check — https://dev.real-payerapis-np.optum.com/oihub/dental/claim-inquiry/health-checkClaim Inquiry — https://dev.real-payerapis-np.optum.com/oihub/dental/claim-inquiry/v1/graphql |
Generate a Bearer token
Click Generate Bearer Token for Optum Real Dental APIs, for steps, see Generate a Bearer Token.
Dental Claim Inquiry OpenAPI Spec
To download, click Dental Claim Inquiry OpenAPI spec.
Perform API health check
The /healthcheck endpoint verifies that the connection to the API server is established and the API is operational. Use your Bearer token to perform API health check.
TIP
- Choose an option to test/use our APIs, that is, in our developer portal TryIt! interface (you need to copy and paste the unexpired Bearer token generated for testing the Healthcheck) and/or in your development platform.
- Repeat the steps provided in the Perform API Healthcheck >> In your developer platform or In our developer portal TryIt! interface section.
You can use the example field values provided in the Parameters table).
In the developer portal TryIt! interface
NOTE
Currently, this API does not support the sandbox environment and developer portal's TryIt interface API testing.
In your development platform
- Download our OpenAPI Spec (for example, to access a product OpenAPI spec you are using/testing, go to the required API Overview section >> click Download OpenAPI Spec.) and import it into the API project in your development platform.
- Expand the API collection folder and click the
Get Tokenendpoint to generate a Bearer token. - Click the
Bodytab and enter your unique secure credentials provided.grant_type: client_credentialsclient_id: your client_idclient_secret: your client_secret
- Send the request to generate a Bearer token.
- Now, click the
/healthcheckendpoint and send it view if the connection to the API server was established.
Apply the same token across all transactions during the full token lifespan and automatically refresh the token just before it expires.
If the request was successful, the response shows such as, {"message": "Service is healthy"} in the RESPONSE box to indicate that the APIs are operational and are accessible. If the request failed, the reason shows in the RESPONSE box as listed in the HTTP Status Codes section at the end of this page or click the link in the TOC on the right.
Note that each API health message depends on the API being tested/used.
Run the Dental Claim Status Inquiry
/claim-inquiry/v1/graphql (link to Dental Claim Inquiry API) — Supports on-demand, real-time (RT) Dental Claim Status inquiries initiated by providers.
TIP
- Choose an option to test/use our APIs, that is, in our developer portal TryIt! interface (you need to copy and paste the unexpired Bearer token generated for testing the Healthcheck) and/or in your development platform.
- Repeat the steps provided in the Perform API Healthcheck >> In your developer platform or In our developer portal TryIt! interface section.
You can use the example field values provided in the Parameters table).
NOTE
Currently, this API does not support the sandbox environment and developer portal's TryIt interface API testing.
Parameter
| Parameter | In Developer Portal | In Development Platform | Description |
|---|---|---|---|
transactionId | N/A | Click the Params tab to add | Your transactionId generated when running the claim submission action API, for example, 5ZHN1777891946530211 (see the response example in the Dental Claim Actions API (required) |
payerId | N/A | Click the Params tab to add | Your 5-digit payer ID, example, 88848 (optional) |
providerTaxId | N/A | Click the Params tab to add in the header | Your 9-digit provider tax ID (required) |
NOTE
Check the Headers and Body parameters to make sure that the values comply with the parameters provided in the Parameters table.
IMPORTANT
Please do not submit PHI or PII data on the developer portal's Try It! interface.
{
"query": "query Search277CA($search277CAInput: Search277CAInput!) { search277CA(search277CAInput: $search277CAInput) { responseType x12ResponseData statuscode message } }",
"variables": {
"search277CAInput": {
"transactionId": "PTQK1781105790503302",
"payerId": "88848"
}
},
"operationName": "Search277CA"
}
{
"data": {
"search277CA": {
"responseType": "277CA",
"x12ResponseData": "ISA*00* *00* *ZZ*133052274 *ZZ*440545275 *260619*1414*^*00501*170141446*0*P*:~GS*HN*133052274*440545275*20260619*141446*1*X*005010X214~ST*277*000000001*005010X214~BHT*0085*08*000000001*20260619*1414*TH~HL*1**20*1~NM1*AY*2*ENSHEALTH*****46*841162764~TRN*1*000000001~DTP*050*D8*20260610~DTP*009*D8*20260619~HL*2*1*21*1~NM1*41*2*OPTUM*****46*440545275~TRN*2*3C24000000000000929F~STC*A1:19*20260619*WQ*55~QTY*AA*1~AMT*YY*55~HL*3*2*19*1~NM1*85*2*SESSER DENTAL CLINIC*****XX*7032834520~TRN*1*0~STC*A1:19**U*55~QTY*QC*1~AMT*YY*55~HL*4*3*PT~NM1*QC*1*JUDIS*ANTONIO*L***MI*354858865~TRN*2*GEHA06~STC*A7:400*20260619*U*55********H30011 The Sum of the Line Item Charge Amount (Loop 2400, SV1-02) is not equal to Total Claim Charge Amount (Loop 2300 CLM-02).~STC*A7:153*20260619*U*55********H24402 The value '1213232312' fails the check digit algorithm for the \\\"HIPAA National Provider ID (NPI)\\\".~REF*D9*3C2400000000000092A0~DTP*472*D8*20170724~SE*27*000000001~GE*1*1~IEA*1*170141446~",
"statuscode": "STS_000",
"message": "Claim is Rejected by the Payer"
}
}
}
If the request was successful, the response shows "200 Successful response" and the information (see the following example) shows in the RESPONSE box. If the request failed, the reason shows in the RESPONSE box as listed in the HTTP Status Codes section at the end of this page or click the HTTPS Status Codes hyperlink in the TOC on the right.
NOTE
Currently, this API does not support the sandbox environment and developer portal's TryIt interface API testing.
API Setup
For information about, setting your API test environment, please see API Setup.
Subscribe to live and mock data testing in sandbox
Please see Subscribe to live and mock data testing in sandbox.
Integrate our APIs in production environment
Please see Integrate our APIs in production environment.
HTTP Status Codes
The following table provides error codes, and messages.
| Status Code | Description |
|---|---|
| REQ_401 | Missing/invalid/expired credentials |
| REQ_403 | Missing/invalid/expired credentials |
| REQ_500 | Internal Server Error |
| REQ_503 | Failed after retries |