Error Reference

Common error codes, their causes, and resolution steps for eCW FHIR API issues.

Debugging Errors

Errors are grouped by HTTP status code. The most common issue is the 400 "FHIR app authentication is not enabled" error, which means the practice has not completed activation.

400

Bad Request

invalid_request

Missing required parameters in the request

A required parameter like response_type, client_id, or redirect_uri is missing or malformed.

app_not_activated

FHIR app authentication is not enabled

The practice has not activated your app. See the Practice Activation guide.

invalid_scope

Requested scope is invalid or not registered

The scope string is malformed, not supported, or was not registered for this app.

unsupported_response_type

Wrong response_type value

The response_type is not "code". Only the authorization code flow is supported.

401

Unauthorized

invalid_client

Client authentication failed

The client_id is not recognized or does not match any registered app.

jwks_kid_mismatch

JWT key ID does not match any key in JWKS

The "kid" header in your JWT does not match any key ID in your published JWKS endpoint.

jwks_url_inaccessible

Cannot reach JWKS URL

eCW servers cannot access your JWKS endpoint. Verify the URL is publicly accessible and responding.

jwks_not_whitelisted

JWKS URL is not in the allowed list

Your JWKS endpoint URL has not been whitelisted on eCW servers. Contact eCW support.

jwks_malformed

JWKS response is invalid

The response from your JWKS URL is not valid JSON Web Key Set format.

invalid_token

Access token is expired or malformed

The Bearer token in the Authorization header is expired, revoked, or not a valid JWT.

403

Forbidden

refresh_expired

Refresh token has expired

The refresh token has passed its 90-day validity period. User must re-authorize.

refresh_revoked

Refresh token has been revoked

The refresh token was already used (single-use) or explicitly revoked.

wrong_client

Refresh token does not belong to this client

The refresh token was issued to a different client_id.

500

Internal Server Error

access_denied

Authorization was denied

The eCW server encountered an internal error processing the request. May also appear as access_denied if the user denied consent.