Unable to GET newly created Patient records in Sandbox (only Patient id 9000000009 retrievable) — Request for help and valid Organisation _id for R4 FHIR API sandbox

Hello Support team,

I am testing the R4 FHIR API in the sandbox environment. I am able to create Patient resources (POST /Patient), but I cannot retrieve the newly created Patients using GET /Patient/{id}. The only Patient record I can successfully GET is the ID 9000000009. All other created Patient resources return 404 Not Found / OperationOutcome (or are not returned by searches).

Summary of the issue:

  • Environment: Sandbox (R4 FHIR)

  • Action performed: Created Patient via POST /Patient (response: [please paste status & response if available, e.g. 201 Created])

  • Problem: GET /Patient/{id} for the newly created resource returns 404 / OperationOutcome or search does not return the resource.

  • Exception: I can GET data for Patient id 9000000009 only.

  • Additional issue: I am also unable to GET Organisation resources (or specific Organisation by id).

    • Please advise whether sandbox exposes Organisation resources for testing and if there are any required Organisation _id values to use.

Requests / questions:

  1. Does the sandbox persist newly created Patient resources and allow retrieval via GET? If persistence is limited or ephemeral, can you provide details?

  2. Is there a known restriction that only certain test IDs (e.g. 9000000009) are accessible for reads in the sandbox?

  3. Please provide a valid Organisation _id (or a list of test Organisation ids) for sandbox testing of the R4 FHIR API, or explain how to create/get Organisations in the sandbox.

  4. Are there required scopes, headers, or client credentials that I must include to read created resources (for example specific OAuth scopes, Audience, or request headers)?

  5. If possible, please check server-side logs for my request timestamps below and advise why GET returns 404.

Hi Kapil,

Most NHS England Sandbox FHIR endpoints are mock/simulated and do not persist newly-created resources. They typically expose a small, fixed test dataset (often just a handful of IDs), which is why you can GET Patient/9000000009 but not the Patients you just POSTed.

If you need to create and then retrieve FHIR resources, move to INT (with proper onboarding, credentials, scopes, and environment-specific token audience). INT persists data for test scenarios.

Use the published sample IDs (like Patient/9000000009) for reads or contact the API team for the full list of sandbox-supported IDs.

For realistic Organisation lookups, use ODS FHIR API (preferably INT). If you specifically need Organisation examples within the same Sandbox, check that API’s Sandbox page or move to INT ODS FHIR for real test organisations.

Also ensure correct authorisation if the sandbox requires it. Make sure your token audience (aud) and base URL match the environment you are calling. In INT, ensure your app has the API added, correct scopes, and any required custom attributes.

Hope the above help.

Thanks,

NHS England API Platform team

Please note: The API Platform team can only address queries relevant to the NHS England API platform, including security, rate limiting, logging, monitoring and alerting. For any API specific queries, please reach out the relevant API teams.

1 Like