From e0caf86d5f8665e34e9c68328b3e238b3a641f90 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Mon, 1 Dec 2025 15:46:38 +0000 Subject: [PATCH 01/15] NPA-5880: Added int environment variables for Postman --- postman/INT.postman_environment.json | 75 ++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 postman/INT.postman_environment.json diff --git a/postman/INT.postman_environment.json b/postman/INT.postman_environment.json new file mode 100644 index 00000000..7402dccb --- /dev/null +++ b/postman/INT.postman_environment.json @@ -0,0 +1,75 @@ +{ + "id": "22fac400-f932-4ea9-8ef4-86b135cfcea0", + "name": "INT", + "values": [ + { + "key": "cis2_token", + "value": "", + "type": "secret", + "enabled": true + }, + { + "key": "login_token", + "value": "", + "type": "secret", + "enabled": true + }, + { + "key": "api_base_url", + "value": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4", + "type": "default", + "enabled": true + }, + { + "key": "private_key", + "value": "", + "type": "secret", + "enabled": true + }, + { + "key": "api_key", + "value": "", + "type": "secret", + "enabled": true + }, + { + "key": "rp_app_auth_header_value", + "value": "", + "type": "secret", + "enabled": true + }, + { + "key": "consent_app_auth_header_value", + "value": "", + "type": "secret", + "enabled": true + }, + { + "key": "tpp_9674998535_access_token", + "value": "", + "type": "secret", + "enabled": true + }, + { + "key": "tpp_9674998454_access_token", + "value": "", + "type": "secret", + "enabled": true + }, + { + "key": "emis_9692113698_access_token", + "value": "", + "type": "secret", + "enabled": true + }, + { + "key": "emis_9692113612_access_token", + "value": "", + "type": "secret", + "enabled": true + } + ], + "_postman_variable_scope": "environment", + "_postman_exported_at": "2025-12-01T15:43:51.791Z", + "_postman_exported_using": "Postman/11.68.4" +} From d9a690c68662f8dfcc518fe4c576f8c3908b1a70 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Mon, 1 Dec 2025 16:34:15 +0000 Subject: [PATCH 02/15] NPA-5880: Added postman collection for INT --- ...ervice.integration.postman_collection.json | 9318 +++++++++++++++++ ...p_service.sandbox.postman_collection.json} | 0 .../validated-relationships-service-api.yaml | 3 + 3 files changed, 9321 insertions(+) create mode 100644 postman/validated_relationship_service.integration.postman_collection.json rename postman/{Validated Relationship Service Sandbox.postman_collection.json => validated_relationship_service.sandbox.postman_collection.json} (100%) diff --git a/postman/validated_relationship_service.integration.postman_collection.json b/postman/validated_relationship_service.integration.postman_collection.json new file mode 100644 index 00000000..ccb1e372 --- /dev/null +++ b/postman/validated_relationship_service.integration.postman_collection.json @@ -0,0 +1,9318 @@ +{ + "info": { + "_postman_id": "c3ee07a1-47e5-43f7-96f9-5e56d403af45", + "name": "Validated Relationship Service", + "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\nPre-requisites:\n\n- Get access to the authorization scripts from VRS by speaking to your onboarding contact.\n \n\nSteps:\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", + "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", + "_exporter_id": "18067099", + "_collection_link": "https://www.postman.com/lunar-crescent-672573/workspace/validated-relationship-service-pre-prod-20-11-2025/collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=share&source=collection_link&creator=18067099" + }, + "item": [ + { + "name": "Get proxy roles (GET /Consent)", + "item": [ + { + "name": "Valid request - NPS - Get proxy roles for performer", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "var uuid = require('uuid');", + "", + "var privateKey = pm.environment.get('private_key') || '';", + "var api_key_value = pm.environment.get('api_key') || '';", + "", + "if (!privateKey) {", + " throw new Error(\"Variable private_key must be set with your private key for signed JWT authentication.\");", + "}", + "", + "// Replace any '/n' new lines with actual new lines", + "privateKey = privateKey.replace(/\\\\n/g, '\\n');", + "", + "if (!api_key_value) {", + " throw new Error(\"Variable api_key must be set with your integration testing application API key.\");", + "}", + "", + "var auth_url = 'https://int.api.service.nhs.uk/oauth2-mock/token';", + "var navigator = {};", + "var window = {};", + "const interval = setTimeout(() => {}, 2147483647);", + "", + "return new Promise((resolve, reject) => { ", + " if (pm.globals.has('jsrsasign-js') && pm.globals.get('jsrsasign-js') !== \"\") {", + " return resolve();", + " }", + "", + " pm.sendRequest(", + " {", + " url: 'https://kjur.github.io/jsrsasign/jsrsasign-all-min.js',", + " method: 'GET'", + " }, function (err, res) {", + " if (err) {", + " return reject(err);", + " }", + "", + " pm.globals.set('jsrsasign-js', res.text()); ", + " return resolve();", + " }", + " );", + "}).then(() => { ", + " eval(pm.globals.get(\"jsrsasign-js\")); ", + "", + " // Set headers for JWT", + " var header = {", + " 'typ': 'JWT',", + " 'alg': 'RS512',", + " 'kid': 'VRS-dev-12-nov-2025'", + " };", + "", + " // Prepare timestamp in seconds", + " var currentTimestamp = Math.floor(Date.now() / 1000)", + " var uuid = require('uuid');", + " var jti_value = uuid.v4();", + " var data = {", + " 'sub': api_key_value,", + " 'iss': api_key_value,", + " 'jti': jti_value,", + " 'aud': auth_url,", + " 'exp': currentTimestamp + 180, // expiry time is 180 seconds from time of creation", + " } ", + "", + " var sJWT = KJUR.jws.JWS.sign(header.alg, JSON.stringify(header), JSON.stringify(data), privateKey); ", + " return new Promise((resolve, reject) => { ", + " pm.sendRequest({", + " url: auth_url,", + " method: \"POST\",", + " header: {", + " \"Content-Type\": \"application/x-www-form-urlencoded\"", + " },", + " body: {", + " mode: \"urlencoded\",", + " urlencoded: [", + " {", + " key: \"grant_type\",", + " value: \"client_credentials\"", + " },", + " {", + " key: \"client_assertion_type\",", + " value: \"urn:ietf:params:oauth:client-assertion-type:jwt-bearer\",", + " },", + " {", + " key: \"client_assertion\",", + " value: sJWT", + " }", + " ]", + " }", + " }, function (err, res) { ", + " if (err) {", + " return reject(err);", + " }", + "", + " //assign the authorization header value", + " pm.environment.set('consent_app_auth_header_value', `${res.json().access_token}`);", + "", + " return resolve();", + " }); ", + " });", + "}).then(() => { ", + " clearTimeout(interval);", + "}).catch((err) => { ", + " console.error(err); ", + " clearTimeout(interval); ", + "});" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + }, + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + "});" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898148", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898148" + } + ] + }, + "description": "## Example scenario\n\n**Given** proxy roles exist for a performer (proxy) in the National Proxy Store (NPS) \n**When** a GET /Consent request is sent with the performer identifier \n**Then** the proxy roles in NPS are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "Proxy roles returned - No patient or performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "74302b29-5251-4fea-a613-018d6403392b", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "249327af-3b5d-4cdb-8a5a-1fa148865d87", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9736898148", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898148" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 20 Nov 2025 10:17:51 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4826" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "817f93ea-41cd-4326-a43c-d1c6faea9627" + }, + { + "key": "x-amz-apigw-id", + "value": "UVmf9EbBLPEFnPA=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-691eeacc-ca87d12c7343c6f10a62f024" + }, + { + "key": "X-Request-ID", + "value": "b2c08a0a-2c7d-430e-ae5b-7c89f48fd81e" + }, + { + "key": "X-Correlation-ID", + "value": "bac08e0e-5ebb-447b-ae3d-69d712fd42f8" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-20T10:17:51Z\",\n \"total\": 4,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9730675929\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2ff700ea-f15d-4bf3-a29b-4227b7ea5955\",\n \"resource\": {\n \"id\": \"2ff700ea-f15d-4bf3-a29b-4227b7ea5955\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676070\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"GUARD\",\n \"display\": \"Guardian\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"start\": \"2025-02-11\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/1d87825f-5cca-4222-a4d6-cd273cec90d8\",\n \"resource\": {\n \"id\": \"1d87825f-5cca-4222-a4d6-cd273cec90d8\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-18T13:11:34Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676186\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"period\": {}\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"proposed\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ac66bbfb-2ce3-4bd4-8f48-628df78c652c\",\n \"resource\": {\n \"id\": \"ac66bbfb-2ce3-4bd4-8f48-628df78c652c\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676399\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"GUARD\",\n \"display\": \"Guardian\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"start\": \"2025-02-11\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/1ffc1ce2-b306-4d27-ba23-a936ff3a2ba0\",\n \"resource\": {\n \"id\": \"1ffc1ce2-b306-4d27-ba23-a936ff3a2ba0\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-18T11:56:24Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675422\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"period\": {}\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"proposed\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Include patient details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898148&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898148" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:59:00 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "6271" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "fed2e423-3543-4616-a2ee-7edb4c91da82" + }, + { + "key": "x-amz-apigw-id", + "value": "UtlznGeWLPEFqOA=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69288349-e8e52575b520a528e453a878" + }, + { + "key": "X-Request-ID", + "value": "2144020f-05ff-4da9-9fd1-751931febcc4" + }, + { + "key": "X-Correlation-ID", + "value": "a96f8392-3dff-48e1-a1b4-b3146b88637a" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T16:59:00Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7421566f-6667-4f91-b2bd-179e514ae539\",\n \"resource\": {\n \"id\": \"7421566f-6667-4f91-b2bd-179e514ae539\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898717\",\n \"resource\": {\n \"id\": \"9736898717\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"16654057\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"YoGEf\",\n \"line\": [\n \"GLENVILLE\",\n \"FERRY ROAD\",\n \"GOXHILL\",\n \"BARROW-UPON-HUMBER\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2016-04-09\"\n },\n \"postalCode\": \"DN19 7JY\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2010-05-31\",\n \"gender\": \"male\",\n \"generalPractitioner\": [\n {\n \"id\": \"bYoHa\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2016-02-12\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CASH\",\n \"given\": [\n \"Jacob\",\n \"Chas\"\n ],\n \"period\": {\n \"start\": \"2025-07-22\"\n },\n \"prefix\": [\n \"MR\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Include performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898148&_include=Consent:performer", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898148" + }, + { + "key": "_include", + "value": "Consent:performer" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 17:00:02 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4637" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "4edca28f-29b2-48f0-9435-716fe90161a3" + }, + { + "key": "x-amz-apigw-id", + "value": "Utl-uG4ZLPEFseg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69288391-9befe227edf10feb023c6693" + }, + { + "key": "X-Request-ID", + "value": "72a98783-3c7a-457c-b772-7a8732a4415f" + }, + { + "key": "X-Correlation-ID", + "value": "5d31f5af-735b-4538-bb71-3138c12155dc" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T17:00:01Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7421566f-6667-4f91-b2bd-179e514ae539\",\n \"resource\": {\n \"id\": \"7421566f-6667-4f91-b2bd-179e514ae539\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/UwTCq\",\n \"resource\": {\n \"id\": \"UwTCq\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Include patient and performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898148&_include=Consent:performer&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898148" + }, + { + "key": "_include", + "value": "Consent:performer" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 17:00:23 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "8074" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "1dd03d34-18e2-446d-b8a2-ff44b13892ea" + }, + { + "key": "x-amz-apigw-id", + "value": "UtmCIH2-rPEFYkg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692883a6-4e406bc5899e2ce162084187" + }, + { + "key": "X-Request-ID", + "value": "4add4408-494d-498d-b792-f4d19ea859d9" + }, + { + "key": "X-Correlation-ID", + "value": "0ba25f8c-d38c-4e07-8f0a-9ce352650ffe" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T17:00:23Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7421566f-6667-4f91-b2bd-179e514ae539\",\n \"resource\": {\n \"id\": \"7421566f-6667-4f91-b2bd-179e514ae539\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898717\",\n \"resource\": {\n \"id\": \"9736898717\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"16654057\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"YoGEf\",\n \"line\": [\n \"GLENVILLE\",\n \"FERRY ROAD\",\n \"GOXHILL\",\n \"BARROW-UPON-HUMBER\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2016-04-09\"\n },\n \"postalCode\": \"DN19 7JY\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2010-05-31\",\n \"gender\": \"male\",\n \"generalPractitioner\": [\n {\n \"id\": \"bYoHa\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2016-02-12\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CASH\",\n \"given\": [\n \"Jacob\",\n \"Chas\"\n ],\n \"period\": {\n \"start\": \"2025-07-22\"\n },\n \"prefix\": [\n \"MR\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/UwTCq\",\n \"resource\": {\n \"id\": \"UwTCq\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Filtered by status 'inactive'", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898156&status=inactive", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898156" + }, + { + "key": "status", + "value": "inactive" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 17:01:01 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "1563" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "46dd347f-0ce4-440d-9ce4-b96a810b4af9" + }, + { + "key": "x-amz-apigw-id", + "value": "UtmIHH3arPEFdkg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692883cd-80d85a3fe5c113dfe931e008" + }, + { + "key": "X-Request-ID", + "value": "68f33554-b98f-4c7c-bf61-c88ac3c91cd7" + }, + { + "key": "X-Correlation-ID", + "value": "9b3f5b13-dba6-45a2-b7ca-80a7f2f19d5a" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T17:01:01Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&status=inactive\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/26a38545-0c3c-4627-8db8-d16bde388299\",\n \"resource\": {\n \"id\": \"26a38545-0c3c-4627-8db8-d16bde388299\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898652\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9728570368\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2025-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"inactive\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Filtered by status 'active' and include patient and performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898156&status=active&_include=Consent:performer&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898156" + }, + { + "key": "status", + "value": "active" + }, + { + "key": "_include", + "value": "Consent:performer" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 17:01:15 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4203" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "f30e1a7a-c04a-44a4-808d-83039d62cc98" + }, + { + "key": "x-amz-apigw-id", + "value": "UtmKRG96rPEFYTw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692883da-d158f7424a5fd14c387b9d82" + }, + { + "key": "X-Request-ID", + "value": "a0d3cef4-ac60-4704-9f71-5eb6bc74777b" + }, + { + "key": "X-Correlation-ID", + "value": "d71b0826-150e-40d6-9359-6135d9b26ad9" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T17:01:15Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&status=active&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/80bc6669-fbbd-43b0-a29a-c3d09fd35975\",\n \"resource\": {\n \"id\": \"80bc6669-fbbd-43b0-a29a-c3d09fd35975\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9728570368\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2026-11-11\",\n \"start\": \"2025-11-12\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898660\",\n \"resource\": {\n \"id\": \"9736898660\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"19976537\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"pBQDr\",\n \"line\": [\n \"CARLTON\",\n \"VICARAGE LANE\",\n \"REDBOURNE\",\n \"GAINSBOROUGH\",\n \"LINCS\"\n ],\n \"period\": {\n \"start\": \"2025-07-15\"\n },\n \"postalCode\": \"DN21 4QW\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2012-04-24\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"xSEnH\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2024-11-06\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n ],\n \"name\": [\n {\n \"family\": \"GODREY\",\n \"given\": [\n \"Davina\",\n \"Linda\"\n ],\n \"period\": {\n \"start\": \"2017-04-22\"\n },\n \"prefix\": [\n \"MISS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/nVLgl\",\n \"resource\": {\n \"id\": \"nVLgl\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + } + ] + }, + { + "name": "Valid request - NPS - Get proxy roles for patient", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "var uuid = require('uuid');", + "", + "var privateKey = pm.environment.get('private_key') || '';", + "var api_key_value = pm.environment.get('api_key') || '';", + "", + "if (!privateKey) {", + " throw new Error(\"Variable private_key must be set with your private key for signed JWT authentication.\");", + "}", + "", + "// Replace any '/n' new lines with actual new lines", + "privateKey = privateKey.replace(/\\\\n/g, '\\n');", + "", + "if (!api_key_value) {", + " throw new Error(\"Variable api_key must be set with your integration testing application API key.\");", + "}", + "", + "var auth_url = 'https://int.api.service.nhs.uk/oauth2-mock/token';", + "var navigator = {};", + "var window = {};", + "const interval = setTimeout(() => {}, 2147483647);", + "", + "return new Promise((resolve, reject) => { ", + " if (pm.globals.has('jsrsasign-js') && pm.globals.get('jsrsasign-js') !== \"\") {", + " return resolve();", + " }", + "", + " pm.sendRequest(", + " {", + " url: 'https://kjur.github.io/jsrsasign/jsrsasign-all-min.js',", + " method: 'GET'", + " }, function (err, res) {", + " if (err) {", + " return reject(err);", + " }", + "", + " pm.globals.set('jsrsasign-js', res.text()); ", + " return resolve();", + " }", + " );", + "}).then(() => { ", + " eval(pm.globals.get(\"jsrsasign-js\")); ", + "", + " // Set headers for JWT", + " var header = {", + " 'typ': 'JWT',", + " 'alg': 'RS512',", + " 'kid': 'VRS-dev-12-nov-2025'", + " };", + "", + " // Prepare timestamp in seconds", + " var currentTimestamp = Math.floor(Date.now() / 1000)", + " var uuid = require('uuid');", + " var jti_value = uuid.v4();", + " var data = {", + " 'sub': api_key_value,", + " 'iss': api_key_value,", + " 'jti': jti_value,", + " 'aud': auth_url,", + " 'exp': currentTimestamp + 180, // expiry time is 180 seconds from time of creation", + " } ", + "", + " var sJWT = KJUR.jws.JWS.sign(header.alg, JSON.stringify(header), JSON.stringify(data), privateKey); ", + " return new Promise((resolve, reject) => { ", + " pm.sendRequest({", + " url: auth_url,", + " method: \"POST\",", + " header: {", + " \"Content-Type\": \"application/x-www-form-urlencoded\"", + " },", + " body: {", + " mode: \"urlencoded\",", + " urlencoded: [", + " {", + " key: \"grant_type\",", + " value: \"client_credentials\"", + " },", + " {", + " key: \"client_assertion_type\",", + " value: \"urn:ietf:params:oauth:client-assertion-type:jwt-bearer\",", + " },", + " {", + " key: \"client_assertion\",", + " value: sJWT", + " }", + " ]", + " }", + " }, function (err, res) { ", + " if (err) {", + " return reject(err);", + " }", + "", + " //assign the authorization header value", + " pm.environment.set('consent_app_auth_header_value', `${res.json().access_token}`);", + "", + " return resolve();", + " }); ", + " });", + "}).then(() => { ", + " clearTimeout(interval);", + "}).catch((err) => { ", + " console.error(err); ", + " clearTimeout(interval); ", + "});" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + }, + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + "});" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898644", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898644" + } + ] + }, + "description": "## Example scenario\n\n**Given** proxy roles exist for a patient in the National Proxy Store (NPS) \n**When** a GET /Consent request is sent with the patient identifier \n**Then** the proxy roles in NPS are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "Proxy roles returned - No patient or performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "253b12b6-c608-47f3-b9f1-77b0a7b2489d", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "e6fb51de-1bf5-4421-9426-6da603ed5b65", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient:identifier=9736898644", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898644" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 20 Nov 2025 10:17:51 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4826" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "817f93ea-41cd-4326-a43c-d1c6faea9627" + }, + { + "key": "x-amz-apigw-id", + "value": "UVmf9EbBLPEFnPA=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-691eeacc-ca87d12c7343c6f10a62f024" + }, + { + "key": "X-Request-ID", + "value": "b2c08a0a-2c7d-430e-ae5b-7c89f48fd81e" + }, + { + "key": "X-Correlation-ID", + "value": "bac08e0e-5ebb-447b-ae3d-69d712fd42f8" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-20T10:17:51Z\",\n \"total\": 4,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9730675929\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2ff700ea-f15d-4bf3-a29b-4227b7ea5955\",\n \"resource\": {\n \"id\": \"2ff700ea-f15d-4bf3-a29b-4227b7ea5955\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676070\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"GUARD\",\n \"display\": \"Guardian\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"start\": \"2025-02-11\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/1d87825f-5cca-4222-a4d6-cd273cec90d8\",\n \"resource\": {\n \"id\": \"1d87825f-5cca-4222-a4d6-cd273cec90d8\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-18T13:11:34Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676186\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"period\": {}\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"proposed\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ac66bbfb-2ce3-4bd4-8f48-628df78c652c\",\n \"resource\": {\n \"id\": \"ac66bbfb-2ce3-4bd4-8f48-628df78c652c\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676399\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"GUARD\",\n \"display\": \"Guardian\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"start\": \"2025-02-11\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/1ffc1ce2-b306-4d27-ba23-a936ff3a2ba0\",\n \"resource\": {\n \"id\": \"1ffc1ce2-b306-4d27-ba23-a936ff3a2ba0\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-18T11:56:24Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675422\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"period\": {}\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"proposed\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Include performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898644&_include=Consent:performer", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898644" + }, + { + "key": "_include", + "value": "Consent:performer" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 11:41:16 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4635" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "c599df38-faaa-4363-b1bd-0cfbc3e528d9" + }, + { + "key": "x-amz-apigw-id", + "value": "UwKM2Hi3rPEFmOw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69298a51-1ca3219b9a6291c76d513db4" + }, + { + "key": "X-Request-ID", + "value": "ff58bf80-3b76-420f-b33b-1c4e87becb62" + }, + { + "key": "X-Correlation-ID", + "value": "e12eaad8-f6f7-473a-a86b-7c4d20bc4ea2" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:41:16Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Include patient details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898644&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898644" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 10:01:56 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4566" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "ec58cea8-8bb8-417c-9970-530bd1c83e2f" + }, + { + "key": "x-amz-apigw-id", + "value": "Uv7pfHGgLPEFUVg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69297309-2bb77dd8b3fb60b4ff8d8da2" + }, + { + "key": "X-Request-ID", + "value": "bccad6b3-ac2c-4d17-adfb-ad0f0264d1e6" + }, + { + "key": "X-Correlation-ID", + "value": "0056fe7d-6aeb-434b-8ea6-c07afee940de" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:01:56Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Include patient and performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898644&_include=Consent:performer&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898644" + }, + { + "key": "_include", + "value": "Consent:performer" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 11:41:36 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "6369" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "367d8579-b057-48f4-9da3-17886483e3ca" + }, + { + "key": "x-amz-apigw-id", + "value": "UwKRjEZDLPEFutQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69298a6f-cec0423593155ba22883c796" + }, + { + "key": "X-Request-ID", + "value": "f37245b7-6994-4a6d-8e44-b0a6b7131abb" + }, + { + "key": "X-Correlation-ID", + "value": "aa061a8a-2391-4887-a15d-dfe675d1b866" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:41:36Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Filtered by status 'inactive'", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898717&status=inactive", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898717" + }, + { + "key": "status", + "value": "inactive" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 11:41:54 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "1560" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "64d1de7b-aa10-4d16-8d99-26c6475da137" + }, + { + "key": "x-amz-apigw-id", + "value": "UwKUYHcpLPEF5aQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69298a82-8851496dbe88d87c6acde0d3" + }, + { + "key": "X-Request-ID", + "value": "a3e8da6f-1699-4c42-8398-6e1124e9a135" + }, + { + "key": "X-Correlation-ID", + "value": "64a41f28-0044-4020-8d12-5433e63a1d4b" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:41:54Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898717&status=inactive\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/40ff37fc-bc2e-4229-b86a-94f062154b4b\",\n \"resource\": {\n \"id\": \"40ff37fc-bc2e-4229-b86a-94f062154b4b\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2025-11-25\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"inactive\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Filtered by status 'active' and include patient and performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898717&status=active&_include=Consent:performer&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898717" + }, + { + "key": "status", + "value": "active" + }, + { + "key": "_include", + "value": "Consent:performer" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "_postman_previewlanguage": null, + "header": null, + "cookie": [], + "body": null + } + ] + }, + { + "name": "Valid request - NPS - Get proxy roles for patient and proxy", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "var uuid = require('uuid');", + "", + "var privateKey = pm.environment.get('private_key') || '';", + "var api_key_value = pm.environment.get('api_key') || '';", + "", + "if (!privateKey) {", + " throw new Error(\"Variable private_key must be set with your private key for signed JWT authentication.\");", + "}", + "", + "// Replace any '/n' new lines with actual new lines", + "privateKey = privateKey.replace(/\\\\n/g, '\\n');", + "", + "if (!api_key_value) {", + " throw new Error(\"Variable api_key must be set with your integration testing application API key.\");", + "}", + "", + "var auth_url = 'https://int.api.service.nhs.uk/oauth2-mock/token';", + "var navigator = {};", + "var window = {};", + "const interval = setTimeout(() => {}, 2147483647);", + "", + "return new Promise((resolve, reject) => { ", + " if (pm.globals.has('jsrsasign-js') && pm.globals.get('jsrsasign-js') !== \"\") {", + " return resolve();", + " }", + "", + " pm.sendRequest(", + " {", + " url: 'https://kjur.github.io/jsrsasign/jsrsasign-all-min.js',", + " method: 'GET'", + " }, function (err, res) {", + " if (err) {", + " return reject(err);", + " }", + "", + " pm.globals.set('jsrsasign-js', res.text()); ", + " return resolve();", + " }", + " );", + "}).then(() => { ", + " eval(pm.globals.get(\"jsrsasign-js\")); ", + "", + " // Set headers for JWT", + " var header = {", + " 'typ': 'JWT',", + " 'alg': 'RS512',", + " 'kid': 'VRS-dev-12-nov-2025'", + " };", + "", + " // Prepare timestamp in seconds", + " var currentTimestamp = Math.floor(Date.now() / 1000)", + " var uuid = require('uuid');", + " var jti_value = uuid.v4();", + " var data = {", + " 'sub': api_key_value,", + " 'iss': api_key_value,", + " 'jti': jti_value,", + " 'aud': auth_url,", + " 'exp': currentTimestamp + 180, // expiry time is 180 seconds from time of creation", + " } ", + "", + " var sJWT = KJUR.jws.JWS.sign(header.alg, JSON.stringify(header), JSON.stringify(data), privateKey); ", + " return new Promise((resolve, reject) => { ", + " pm.sendRequest({", + " url: auth_url,", + " method: \"POST\",", + " header: {", + " \"Content-Type\": \"application/x-www-form-urlencoded\"", + " },", + " body: {", + " mode: \"urlencoded\",", + " urlencoded: [", + " {", + " key: \"grant_type\",", + " value: \"client_credentials\"", + " },", + " {", + " key: \"client_assertion_type\",", + " value: \"urn:ietf:params:oauth:client-assertion-type:jwt-bearer\",", + " },", + " {", + " key: \"client_assertion\",", + " value: sJWT", + " }", + " ]", + " }", + " }, function (err, res) { ", + " if (err) {", + " return reject(err);", + " }", + "", + " //assign the authorization header value", + " pm.environment.set('consent_app_auth_header_value', `${res.json().access_token}`);", + "", + " return resolve();", + " }); ", + " });", + "}).then(() => { ", + " clearTimeout(interval);", + "}).catch((err) => { ", + " console.error(err); ", + " clearTimeout(interval); ", + "});" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + }, + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + "});" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898121&patient:identifier=9736898644", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898121" + }, + { + "key": "patient:identifier", + "value": "9736898644" + } + ] + }, + "description": "## Example scenario\n\n**Given** proxy roles exist for a patient in the National Proxy Store (NPS) \n**When** a GET /Consent request is sent with the performer and patient identifier \n**Then** a single proxy role from NPS is returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "Proxy roles returned - No patient or performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "44ea037d-996e-4d37-b981-8ccc70283ab1", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "90a6c9dd-1b7c-4810-9cfb-3d12acdebada", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9736898121&patient:identifier=9736898644", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898121" + }, + { + "key": "patient:identifier", + "value": "9736898644" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 10:20:25 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "1576" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "d7a1a454-ff49-417b-9863-6f8a69d0aaa0" + }, + { + "key": "x-amz-apigw-id", + "value": "Uv-YcFOZLPEF8Fg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69297768-2e315ff5cc191f709fa51b48" + }, + { + "key": "X-Request-ID", + "value": "35f86e34-bd09-4a60-86df-050bd9f5a918" + }, + { + "key": "X-Correlation-ID", + "value": "f7d539b5-d919-4f45-876b-245c80b3483e" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:20:25Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Include performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898121&patient:identifier=9736898644&_include=Consent:performer", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898121" + }, + { + "key": "patient:identifier", + "value": "9736898644" + }, + { + "key": "_include", + "value": "Consent:performer" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 10:21:48 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "2492" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "bf920a80-fba5-4718-b140-d695fabde380" + }, + { + "key": "x-amz-apigw-id", + "value": "Uv-kMG2RLPEFTQw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692977b4-48772f19d665138051cc62d3" + }, + { + "key": "X-Request-ID", + "value": "fa0c7715-d629-49ac-9935-73eb56fae653" + }, + { + "key": "X-Correlation-ID", + "value": "2e5350ae-054e-40a0-a0e0-9531c445b500" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:21:48Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Include patient details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898121&patient:identifier=9736898644&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898121" + }, + { + "key": "patient:identifier", + "value": "9736898644" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 10:22:27 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "3310" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "0b1c5dc9-c23e-4c57-8fc6-557ec9c07ce0" + }, + { + "key": "x-amz-apigw-id", + "value": "Uv-rlGONrPEFU5g=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692977e3-bee2c5d4e4a8b8ca25e3c2d9" + }, + { + "key": "X-Request-ID", + "value": "37e047bb-1927-47dc-a273-c6589cde0943" + }, + { + "key": "X-Correlation-ID", + "value": "789df859-cff8-49fd-b5e3-7c72f17e3414" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:22:27Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Include patient and performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898121&patient:identifier=9736898644&_include=Consent:performer&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898121" + }, + { + "key": "patient:identifier", + "value": "9736898644" + }, + { + "key": "_include", + "value": "Consent:performer" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 10:22:54 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4226" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "305d25a2-0121-40f1-b278-f9cb2d81d3d4" + }, + { + "key": "x-amz-apigw-id", + "value": "Uv-vjHZerPEFTLw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692977fc-04cf5b6443bff2438c4ca14f" + }, + { + "key": "X-Request-ID", + "value": "4c398f9c-8e3b-4c8b-bd11-c955c07c7f06" + }, + { + "key": "X-Correlation-ID", + "value": "68bb5628-ce37-4b66-b987-be6b8be4b145" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:22:54Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Filtered by status 'inactive'", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898156&patient:identifier=9736898652&status=inactive", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898156" + }, + { + "key": "patient:identifier", + "value": "9736898652" + }, + { + "key": "status", + "value": "inactive" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 10:24:46 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "1595" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "bd503f91-795a-46f2-a8c7-14e1ca83b8f1" + }, + { + "key": "x-amz-apigw-id", + "value": "Uv_BUGW9rPEFxRQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929786e-c38a9a4945319f56a4f283a2" + }, + { + "key": "X-Request-ID", + "value": "bad91686-c649-48e4-9753-387dba7e69f3" + }, + { + "key": "X-Correlation-ID", + "value": "5f56109b-29dc-43d6-a208-1b0ee10299e8" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:24:46Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&patient%3Aidentifier=9736898652&status=inactive\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/26a38545-0c3c-4627-8db8-d16bde388299\",\n \"resource\": {\n \"id\": \"26a38545-0c3c-4627-8db8-d16bde388299\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898652\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9728570368\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2025-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"inactive\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + }, + { + "name": "Proxy roles returned - Filtered by status 'active' and include patient and performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "some_token;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898156&patient:identifier=9736898652&status=active&_include=Consent:performer&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898156" + }, + { + "key": "patient:identifier", + "value": "9736898652" + }, + { + "key": "status", + "value": "active" + }, + { + "key": "_include", + "value": "Consent:performer" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 10:25:30 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "2038" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "862b22fa-9abf-470b-ba41-a163dfc07ce9" + }, + { + "key": "x-amz-apigw-id", + "value": "Uv_IFH49rPEFseg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69297899-7841288af830881b736c9c20" + }, + { + "key": "X-Request-ID", + "value": "ecf5ab11-9124-4d22-9a09-bd8cd9718502" + }, + { + "key": "X-Correlation-ID", + "value": "f0a6ee70-051d-440a-a246-73b8be6c059c" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:25:30Z\",\n \"total\": 0,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&patient%3Aidentifier=9736898652&status=active&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898652\",\n \"resource\": {\n \"id\": \"9736898652\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"6290975\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"RPnzd\",\n \"line\": [\n \"77 ANGERSTEIN ROAD\",\n \"SCUNTHORPE\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2019-11-10\"\n },\n \"postalCode\": \"DN17 2NB\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2013-09-02\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"yIjPV\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2021-01-07\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898652\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CLYDE\",\n \"given\": [\n \"Deanne\",\n \"Tara\"\n ],\n \"period\": {\n \"start\": \"2018-06-16\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + } + ] + }, + { + "name": "Valid request - NAM - Get proxy roles", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + }, + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + "});" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "{{tpp_1_access_token}};A82648", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=false;nam-cache-enabled=false;nam-enabled=true;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9674998535", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9674998535" + } + ] + }, + "description": "## Example scenario\n\n**Given** proxy roles exist for a patient/performer in a GPIT system \n**And** no proxy roles exist in the National Proxy Store (NPS) for the patient/performer \n**When** a GET /Consent request is sent with the performer/patient identifier \n**Then** the proxy roles from GPIT are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "No linked profiles returned from NAM - TPP user", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "613cee6a-7e22-453d-90b4-16eb4cbea217", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "211d9a6a-fe7a-4dde-93f0-e8ef813bccc8", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "•••••••;A82648", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=false;nam-cache-enabled=false;nam-enabled=true;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9674998535&_include=Consent:performer&_include=Consent:patient", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9674998535" + }, + { + "key": "_include", + "value": "Consent:performer" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 11:28:42 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "5773" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "f503df1a-ed91-481b-93dc-de9299ec4462" + }, + { + "key": "x-amz-apigw-id", + "value": "UwIYNFlXLPEFyOg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69298767-430d5030473e9a3b1a2accb8" + }, + { + "key": "X-Request-ID", + "value": "4c1794ce-1608-4c5c-a098-efa4bc28b4f8" + }, + { + "key": "X-Correlation-ID", + "value": "09b3f16a-a7e4-4ab2-a91d-6ba5fc7083a7" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:28:42Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9674998535&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/3a86ad92\",\n \"resource\": {\n \"id\": \"3a86ad92\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:28:42.096743+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9692113736\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/5c0c47d9\",\n \"resource\": {\n \"id\": \"5c0c47d9\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:28:42.096784+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/0b36c4e0\",\n \"resource\": {\n \"id\": \"0b36c4e0\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"8af3500000000000\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9692113736\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/bd6da0a0\",\n \"resource\": {\n \"id\": \"bd6da0a0\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"8af3500000000000\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/e41dfa63\",\n \"resource\": {\n \"id\": \"e41dfa63\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1985-05-29\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9692113736\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"84df400000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Mr Kevin Barry\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/2d10a3d9\",\n \"resource\": {\n \"id\": \"2d10a3d9\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1921-10-17\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"d024500000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Mr Landon Fahey\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "Linked profiles returned from NAM - TPP user", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "{{tpp_9674998454_access_token}};A82648", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=false;nam-cache-enabled=false;nam-enabled=true;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9674998454&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9674998454" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 11:34:17 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4370" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "1361ba24-c83b-4d88-985f-0edaaecf31e0" + }, + { + "key": "x-amz-apigw-id", + "value": "UwJMiGErrPEF76w=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692988b6-0cf09f6d502ccce8d7279f69" + }, + { + "key": "X-Request-ID", + "value": "709b4f5e-3f11-4657-8eed-8b45e4dc7e96" + }, + { + "key": "X-Correlation-ID", + "value": "57f90acc-4352-4573-8f7b-ec2b7728ef2c" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:34:17Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9674998454&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/92a66114\",\n \"resource\": {\n \"id\": \"92a66114\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:34:15.833315+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998640\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/0b02be0a\",\n \"resource\": {\n \"id\": \"0b02be0a\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:34:15.833355+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998543\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/934bfd54\",\n \"resource\": {\n \"id\": \"934bfd54\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1998-11-14\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998640\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"e254500000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Mr Harry Hood\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/29b6ab39\",\n \"resource\": {\n \"id\": \"29b6ab39\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1930-11-02\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998543\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"52f3500000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Miss Lisa Hankey\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + }, + { + "name": "No linked profiles returned from NAM - EMIS user", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "{{emis_9692113612_access_token}};A29928", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=false;nam-cache-enabled=false;nam-enabled=true;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9692113612&_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9692113612" + }, + { + "key": "_include", + "value": "Consent:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 11:34:52 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "283" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "ecb926e6-a82c-46bc-b76f-afefcab83fa5" + }, + { + "key": "x-amz-apigw-id", + "value": "UwJSNEAlLPEFlDA=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692988da-c10362f08fd90a22323040d1" + }, + { + "key": "X-Request-ID", + "value": "0c65e25f-4ca5-4def-8e1a-208976c9b96f" + }, + { + "key": "X-Correlation-ID", + "value": "7e409c54-be25-4b9c-9aed-72d0220596ee" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:34:52Z\",\n \"total\": 0,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9692113612&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": []\n}" + }, + { + "name": "Linked profiles returned from NAM - EMIS user", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "{{emis_9692113698_access_token}};A00002", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=false;nam-cache-enabled=false;nam-enabled=true;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9692113698&_include=Consent:patient&_include=Consent:performer", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9692113698" + }, + { + "key": "_include", + "value": "Consent:patient" + }, + { + "key": "_include", + "value": "Consent:performer" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 11:01:58 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "19177" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "f7b37e35-3b92-4085-9468-baa5ec99a53e" + }, + { + "key": "x-amz-apigw-id", + "value": "UwEdmHA1LPEFSAg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69298123-54622899a0dc2299798252e1" + }, + { + "key": "X-Request-ID", + "value": "1129a1db-76bc-47c0-8bb9-d49efb0d4ee8" + }, + { + "key": "X-Correlation-ID", + "value": "019ada39-23a7-4a1f-b68c-82900195615d" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:01:57Z\",\n \"total\": 9,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9692113698&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2993b769\",\n \"resource\": {\n \"id\": \"2993b769\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619279+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034451\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/c0d48822\",\n \"resource\": {\n \"id\": \"c0d48822\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619318+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998403\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/75d0c9dc\",\n \"resource\": {\n \"id\": \"75d0c9dc\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619343+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034400\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2bed6c1e\",\n \"resource\": {\n \"id\": \"2bed6c1e\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619371+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034168\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ed77c791\",\n \"resource\": {\n \"id\": \"ed77c791\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619394+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9253046414\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/02e9fe06\",\n \"resource\": {\n \"id\": \"02e9fe06\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619417+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9930725970\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/70f274ba\",\n \"resource\": {\n \"id\": \"70f274ba\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619443+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9803007025\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/87501704\",\n \"resource\": {\n \"id\": \"87501704\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619467+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9734615173\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/022a7290\",\n \"resource\": {\n \"id\": \"022a7290\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619491+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9694154065\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/7c89fff4\",\n \"resource\": {\n \"id\": \"7c89fff4\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1988-08-10\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034451\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"3b5306c0-4c76-4f7c-9174-f5ea5c0a9c30\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Abdirahman-Cid test\",\n \"given\": [\n \"Yahya Test\"\n ],\n \"prefix\": [\n \"Mr\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/b1fc66a2\",\n \"resource\": {\n \"id\": \"b1fc66a2\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1949-12-07\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998403\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"d87efdc8-29b9-494a-8ac0-08dcb39e0abc\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Dixon\",\n \"given\": [\n \"Harry\"\n ],\n \"prefix\": [\n \"Mr\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/be79be13\",\n \"resource\": {\n \"id\": \"be79be13\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1989-03-30\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034400\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"589779f2-0836-4625-96ba-4d07a61fcd67\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Muiner-Cid\",\n \"given\": [\n \"Phoebe\"\n ],\n \"prefix\": [\n \"Mrs\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/37c6ee58\",\n \"resource\": {\n \"id\": \"37c6ee58\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1988-10-23\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034168\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"138681d4-202f-4e70-8801-eec348961398\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Al-Shebib-Cid\",\n \"given\": [\n \"Sawada\"\n ],\n \"prefix\": [\n \"Mrs\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/a3d72761\",\n \"resource\": {\n \"id\": \"a3d72761\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"2019-11-04\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9253046414\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"0d41d506-891f-406b-a609-d17759a14fe1\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Parr\",\n \"given\": [\n \"Jack-Jack\"\n ],\n \"prefix\": [\n \"Mr\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/8210b958\",\n \"resource\": {\n \"id\": \"8210b958\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"2018-11-04\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9930725970\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a18b481b-ba69-46b7-a697-69345b908d8b\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Parr\",\n \"given\": [\n \"Dash\"\n ],\n \"prefix\": [\n \"Mr\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/b5a44252\",\n \"resource\": {\n \"id\": \"b5a44252\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"2005-11-04\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9803007025\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"5c8ef30b-b247-4f90-8a0d-66e05b7942f6\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Parr\",\n \"given\": [\n \"Violet\"\n ],\n \"prefix\": [\n \"Miss\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/7104db25\",\n \"resource\": {\n \"id\": \"7104db25\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"2000-02-14\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9734615173\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"5df05378-5c13-481f-9f2b-2cc3d803b15e\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Stark\",\n \"given\": [\n \"Arya\"\n ],\n \"prefix\": [\n \"Miss\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/67368429\",\n \"resource\": {\n \"id\": \"67368429\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1981-10-15\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9694154065\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"79ae8bc9-2d11-4b99-9df9-0fc59fb94082\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Haake\",\n \"given\": [\n \"Maude\"\n ],\n \"prefix\": [\n \"Mrs\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + } + ] + }, + { + "name": "Valid request - No proxy roles returned - Get proxy roles", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + "});" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + }, + { + "listen": "prerequest", + "script": { + "packages": {}, + "type": "text/javascript" + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898199", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898199" + } + ] + }, + "description": "## Example scenario\n\n**Given** no proxy roles exist for a patient/performer in NPS or GPIT systems \n**When** a GET /Consent request is sent with the performer/patient identifier \n**Then** no proxy roles are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "No roles returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "911c6d29-bbeb-4e37-a253-9fad44e9de8c", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "667f4355-7cdc-49cd-9a83-09b52ce09839", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient:identifier=9736898199", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898199" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 15:20:11 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "254" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "62f7a9ef-477a-4a24-8bba-c3da1f684805" + }, + { + "key": "x-amz-apigw-id", + "value": "UtXWqH7MLPEFkaw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69286c2a-60c4f8c5c094e6753e2352ce" + }, + { + "key": "X-Request-ID", + "value": "31683198-4901-4516-8522-baf7a3de343a" + }, + { + "key": "X-Correlation-ID", + "value": "bdc29a81-c2c3-4622-b1cb-6b0d939ef622" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T15:20:11Z\",\n \"total\": 0,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898199\"\n }\n ],\n \"entry\": []\n}" + } + ] + }, + { + "name": "Invalid status parameter - Get proxy roles", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"invalid\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"code\": \"INVALID_PARAMETER\",", + " \"display\": \"Required parameter(s) are invalid.\",", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Invalid request with error - status parameter is invalid.\",", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "}", + "", + "expectedErrorCode = 422;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898199&status=test", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898199" + }, + { + "key": "status", + "value": "test" + } + ] + }, + "description": "## Example scenario\n\n**Given** proxy roles exist for a patient/performer in NPS or a GPIT system \n**When** a GET /Consent request is sent with an invalid status parameter \n**Then** a 422 error is returned with the detail 'Required parameter(s) are invalid.'\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "Invalid status parameter error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "4f076df1-8cb6-4bb7-b45e-f7bb60e57ca6", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "ffcc9ca5-75ce-41cd-b8fd-570a40e6b898", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient:identifier=9736898199&status=test", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "patient:identifier", + "value": "9736898199" + }, + { + "key": "status", + "value": "test" + } + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:45:57 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "375" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "072d3fa4-9703-4b80-88ba-e679c01b3129" + }, + { + "key": "x-amz-apigw-id", + "value": "Utj6vHGjLPEFvyQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69288044-9a8fa9560202aeb1b9390e51" + }, + { + "key": "X-Request-ID", + "value": "0437a831-fa18-43ca-a376-21b2a8f33900" + }, + { + "key": "X-Correlation-ID", + "value": "8cf2b8d1-d98e-4b93-bb62-34583b31f0ea" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_PARAMETER\",\n \"display\": \"Required parameter(s) are invalid.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Invalid request with error - status parameter is invalid.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid include parameter - Get proxy roles", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"invalid\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"code\": \"INVALID_PARAMETER\",", + " \"display\": \"Required parameter(s) are invalid.\",", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Invalid request with error - _include parameter is invalid.\",", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "}", + "", + "expectedErrorCode = 422;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898148&_include=Consent:test", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898148" + }, + { + "key": "_include", + "value": "Consent:test" + } + ] + }, + "description": "## Gherkin scenario\n\n**Given** proxy roles exist for a patient/performer in NPS or a GPIT system \n**When** a GET /Consent request is sent with an invalid include parameter \n**Then** a 422 error is returned with the detail 'Required parameter(s) are invalid.'\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "Invalid include parameter error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "5f4bc40f-fd82-4866-9d92-92a4ee37dcf3", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "b3b606f6-1f1d-4a23-979f-582ed92f5027", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9736898148&_include=Consent:test", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898148" + }, + { + "key": "_include", + "value": "Consent:test" + } + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:46:36 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "377" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "e9f62008-61ec-417a-8231-506b51d07844" + }, + { + "key": "x-amz-apigw-id", + "value": "UtkBAFkIrPEFuvQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6928806c-3f5337b27e75f90c703fd6b0" + }, + { + "key": "X-Request-ID", + "value": "fb15a103-bf9a-499e-a7b1-24dc6563eb13" + }, + { + "key": "X-Correlation-ID", + "value": "f5ec5ae0-c762-4efb-95e3-317628c5cd80" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_PARAMETER\",\n \"display\": \"Required parameter(s) are invalid.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Invalid request with error - _include parameter is invalid.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid performer identifier - Get proxy roles", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"invalid\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"code\": \"INVALID_IDENTIFIER_VALUE\",", + " \"display\": \"Required parameter(s) are invalid.\",", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier parameter is invalid.\",", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "}", + "", + "expectedErrorCode = 422;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=90000000", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "90000000" + } + ] + }, + "description": "## Example scenario\n\n**Given** proxy roles exist for a patient/performer in NPS or a GPIT system \n**When** a GET /Consent request is sent with an invalid performer identifier \n**Then** a 422 error is returned with the detail 'Required parameter(s) are invalid.'\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "Invalid performer identifier returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "02692231-4b75-4417-9b5e-f650c211bb48", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "4eca6665-d20c-4781-b9ce-7411743d41bd", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=90000000", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "90000000" + } + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:47:01 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "428" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "2c57ff69-fe19-498b-8163-00b392e47313" + }, + { + "key": "x-amz-apigw-id", + "value": "UtkE-EaXLPEFV9Q=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69288085-dfbdd45a57543fb9bb4ebd8b" + }, + { + "key": "X-Request-ID", + "value": "2d274752-140d-49de-ab31-56012d28c2cb" + }, + { + "key": "X-Correlation-ID", + "value": "7187bca7-8d57-4561-b0f2-a5aba91ec94c" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_IDENTIFIER_VALUE\",\n \"display\": \"Required parameter(s) are invalid.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier parameter is invalid.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid performer identifier system - Get proxy roles", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"invalid\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"code\": \"INVALID_IDENTIFIER_SYSTEM\",", + " \"display\": \"Required parameter(s) are invalid.\",", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier system parameter is invalid.\",", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "};", + "", + "expectedErrorCode = 422;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=invalid|9736898199", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "invalid|9736898199" + } + ] + }, + "description": "## Example scenario\n\n**Given** proxy roles exist for a patient/performer in NPS or a GPIT system \n**When** a GET /Consent request is sent with an invalid performer identifier system \n**Then** a 422 error is returned with the detail 'Required parameter(s) are invalid.'\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "Invalid performer identifier system error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "52cc6c4c-1233-43d9-a271-15cd6bbe599a", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "b1bf848a-4f5d-4397-b970-d2d6b2aa1233", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=invalid|9736898199", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "invalid|9736898199" + } + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:47:46 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "426" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "8a8529b6-34ac-46b1-8868-0a6ec0440151" + }, + { + "key": "x-amz-apigw-id", + "value": "UtkL-HDVLPEFVxg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692880b2-6286da8b511f08a6d7ccf9db" + }, + { + "key": "X-Request-ID", + "value": "9cc2d0ef-8f7a-46b7-89c9-c884bf61cc3a" + }, + { + "key": "X-Correlation-ID", + "value": "57948f02-5db0-4267-a6b7-cae30485e5eb" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_IDENTIFIER_SYSTEM\",\n \"display\": \"Required parameter(s) are invalid.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier system parameter is invalid.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Missing performer identifier value - Get proxy roles", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"invalid\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"code\": \"MISSING_IDENTIFIER_VALUE\",", + " \"display\": \"Required parameter(s) are missing.\",", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier parameter not found.\",", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "};", + "", + "expectedErrorCode = 400;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + }, + "description": "## Example scenario\n\n**Given** proxy roles exist for a patient/performer in NPS or a GPIT system \n**When** a GET /Consent request is sent with an missing performer identifier value \n**Then** a 400 error is returned with the detail 'Required parameter(s) are missing.'\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "Missing performer identifier value error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "ed167870-7087-45f7-b274-23c91043ac92", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "39ff0b60-969e-4583-9bc0-605ccf179cbb", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=true;nam-cache-enabled=false;nam-enabled=false;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ] + } + }, + "status": "Bad Request", + "code": 400, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:48:15 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "417" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "4984ba67-d994-4f08-910e-e25024a8ba57" + }, + { + "key": "x-amz-apigw-id", + "value": "UtkQdERvrPEFrBg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692880cf-614067cb88aa075eca482015" + }, + { + "key": "X-Request-ID", + "value": "f536a55f-7115-4ab4-a1c9-3049ca919351" + }, + { + "key": "X-Correlation-ID", + "value": "636e5f80-53b3-4bcf-9176-2967325a9e85" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"MISSING_IDENTIFIER_VALUE\",\n \"display\": \"Required parameter(s) are missing.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier parameter not found.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "GP practice not found - Get proxy roles", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"processing\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\",", + " \"code\": \"GP_PRACTICE_NOT_FOUND\",", + " \"display\": \"GP Practice could not be found - invalid resources cannot be retrieved\"", + " }", + " ]", + " },", + " \"diagnostics\": \"GP Practice could not be found\",", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "};", + "", + "expectedErrorCode = 404;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=false;nam-cache-enabled=false;nam-enabled=true;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898229", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898229" + } + ] + }, + "description": "## Example scenario\n\n**Given** a performer/patient is not registered at a GP \n**And** the performer/patient has no proxy roles in the National Proxy Store \n**When** a GET /Consent request is sent for the performer/patient \n**Then** a 404 error is returned with the detail 'GP Practice could not be found - invalid resources cannot be retrieved'\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + }, + "response": [ + { + "name": "GP practice not found error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "7f1b75d4-0e4c-4945-904c-d5db0073aae9", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "39a01e38-6e47-465a-afbb-cf8153598699", + "type": "text" + }, + { + "key": "X-IM1-Connection-Params", + "value": "SomeToken;A20047", + "type": "text" + }, + { + "key": "X-Test-Routing-Flag", + "value": "nps-enabled=false;nam-cache-enabled=false;nam-enabled=true;use-nam-mock=false", + "description": "For pre-prod only - Used to control where data is gathered from to fulfill the request ", + "type": "text" + } + ], + "url": { + "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9736898229", + "protocol": "https", + "host": [ + "int", + "api", + "service", + "nhs", + "uk" + ], + "path": [ + "validated-relationships", + "FHIR", + "R4", + "Consent" + ], + "query": [ + { + "key": "performer:identifier", + "value": "9736898229" + } + ] + } + }, + "status": "Not Found", + "code": 404, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:48:38 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "391" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "e0bae044-bde7-4def-a600-199f72ea2e50" + }, + { + "key": "x-amz-apigw-id", + "value": "UtkTcEIOLPEF5aQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692880e2-7d058bc8fc71f9ee272f339d" + }, + { + "key": "X-Request-ID", + "value": "c1f8bed5-6729-4b9f-b20c-180b069809ed" + }, + { + "key": "X-Correlation-ID", + "value": "3132cc74-64ef-465d-aac9-502f27c6ac1d" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"processing\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"GP_PRACTICE_NOT_FOUND\",\n \"display\": \"GP Practice could not be found - invalid resources cannot be retrieved\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"GP Practice could not be found\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + } + ], + "description": "## Authorization\n\n### Allowed auth methods\n\n- App restricted token\n \n- NHS Login token - Auth with test user `9730675929`\n \n- CIS2 token - Auth with test user `656005750108`\n \n\nSee collection level documentation for info about how to get authorization tokens.\n\n## Test headers\n\nIn some of the requests within this folder, the `X-Test-Routing-Flag` header is used. This header is used in the VRS pre-prod environments to control where the proxy roles are retrieved from. It is intended to be used for testing purposes only. Omission of this header will cause the default routing settings for the given environment to be followed instead.", + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{consent_app_auth_header_value}}", + "type": "string" + } + ] + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "var uuid = require('uuid');", + "", + "var privateKey = pm.environment.get('private_key') || '';", + "var api_key_value = pm.environment.get('api_key') || '';", + "", + "if (!privateKey) {", + " throw new Error(\"Variable private_key must be set with your private key for signed JWT authentication.\");", + "}", + "", + "// Replace any '/n' new lines with actual new lines", + "privateKey = privateKey.replace(/\\\\n/g, '\\n');", + "", + "if (!api_key_value) {", + " throw new Error(\"Variable api_key must be set with your integration testing application API key.\");", + "}", + "", + "var auth_url = 'https://int.api.service.nhs.uk/oauth2-mock/token';", + "var navigator = {};", + "var window = {};", + "const interval = setTimeout(() => {}, 2147483647);", + "", + "return new Promise((resolve, reject) => { ", + " if (pm.globals.has('jsrsasign-js') && pm.globals.get('jsrsasign-js') !== \"\") {", + " return resolve();", + " }", + "", + " pm.sendRequest(", + " {", + " url: 'https://kjur.github.io/jsrsasign/jsrsasign-all-min.js',", + " method: 'GET'", + " }, function (err, res) {", + " if (err) {", + " return reject(err);", + " }", + "", + " pm.globals.set('jsrsasign-js', res.text()); ", + " return resolve();", + " }", + " );", + "}).then(() => { ", + " eval(pm.globals.get(\"jsrsasign-js\")); ", + "", + " // Set headers for JWT", + " var header = {", + " 'typ': 'JWT',", + " 'alg': 'RS512',", + " 'kid': 'VRS-dev-12-nov-2025'", + " };", + "", + " // Prepare timestamp in seconds", + " var currentTimestamp = Math.floor(Date.now() / 1000)", + " var uuid = require('uuid');", + " var jti_value = uuid.v4();", + " var data = {", + " 'sub': api_key_value,", + " 'iss': api_key_value,", + " 'jti': jti_value,", + " 'aud': auth_url,", + " 'exp': currentTimestamp + 180, // expiry time is 180 seconds from time of creation", + " } ", + "", + " var sJWT = KJUR.jws.JWS.sign(header.alg, JSON.stringify(header), JSON.stringify(data), privateKey); ", + " return new Promise((resolve, reject) => { ", + " pm.sendRequest({", + " url: auth_url,", + " method: \"POST\",", + " header: {", + " \"Content-Type\": \"application/x-www-form-urlencoded\"", + " },", + " body: {", + " mode: \"urlencoded\",", + " urlencoded: [", + " {", + " key: \"grant_type\",", + " value: \"client_credentials\"", + " },", + " {", + " key: \"client_assertion_type\",", + " value: \"urn:ietf:params:oauth:client-assertion-type:jwt-bearer\",", + " },", + " {", + " key: \"client_assertion\",", + " value: sJWT", + " }", + " ]", + " }", + " }, function (err, res) { ", + " if (err) {", + " return reject(err);", + " }", + "", + " //assign the authorization header value", + " pm.environment.set('consent_app_auth_header_value', `${res.json().access_token}`);", + "", + " return resolve();", + " }); ", + " });", + "}).then(() => { ", + " clearTimeout(interval);", + "}).catch((err) => { ", + " console.error(err); ", + " clearTimeout(interval); ", + "});" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Get proxy role (GET /Consent/{id})", + "item": [ + { + "name": "Valid request - Get proxy role", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + "});" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists between a performer and a patient in the National Proxy Store \n**When** a GET /Consent/{id} request is sent with the consent id of the proxy role \n**Then** the proxy role is returned" + }, + "response": [ + { + "name": "Proxy role returned - No patient or performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + } + ] + } + }, + "_postman_previewlanguage": null, + "header": null, + "cookie": [], + "body": null + }, + { + "name": "Proxy role returned - Include performer details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id?_include=Consent:performer", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "query": [ + { + "key": "_include", + "value": "Consent:performer" + } + ], + "variable": [ + { + "key": "consent_id", + "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + } + ] + } + }, + "_postman_previewlanguage": null, + "header": null, + "cookie": [], + "body": null + }, + { + "name": "Proxy role returned - Include patient details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id?_include=Consent:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "query": [ + { + "key": "_include", + "value": "Consent:patient" + } + ], + "variable": [ + { + "key": "consent_id", + "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + } + ] + } + }, + "_postman_previewlanguage": null, + "header": null, + "cookie": [], + "body": null + }, + { + "name": "Proxy role returned - Include performer and patient details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id?_include=Consent:patient&_include=Consent:performer", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "query": [ + { + "key": "_include", + "value": "Consent:patient" + }, + { + "key": "_include", + "value": "Consent:performer" + } + ], + "variable": [ + { + "key": "consent_id", + "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + } + ] + } + }, + "_postman_previewlanguage": null, + "header": null, + "cookie": [], + "body": null + } + ] + }, + { + "name": "Invalid consent id - Get proxy role", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"invalid\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"code\": \"INVALID_ID_VALUE\",", + " \"display\": \"Required parameter(s) are invalid.\",", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Invalid request with error - ID must be a valid UUID.\",", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "};", + "", + "expectedErrorCode = 422;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "invalid" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists between a performer and a patient in the National Proxy Store \n**When** a GET /Consent/{id} request is sent where the ID is invalid \n**Then** a 400 error is returned with details including 'Required parameter(s) are invalid.'" + }, + "response": [ + { + "name": "Invalid consent id error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "invalid" + } + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:49:51 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "370" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "8bae29b7-2cf9-4f6f-b054-0ff6133092b7" + }, + { + "key": "x-amz-apigw-id", + "value": "UtkfVE6VLPEFmDg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6928812e-f15d362bb65b30e32885ea32" + }, + { + "key": "X-Request-ID", + "value": "51f1c948-51e0-4719-8307-fd1f987809a1" + }, + { + "key": "X-Correlation-ID", + "value": "cf91adbc-f994-4a56-9d6b-2b324c0af196" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"diagnostics\": \"Invalid request with error - ID must be a valid UUID.\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_ID_VALUE\",\n \"display\": \"Required parameter(s) are invalid.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid include parameter - Get proxy role", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"resourceType\": \"OperationOutcome\",", + " \"issue\": [", + " {", + " \"code\": \"invalid\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\",", + " \"code\": \"INVALID_PARAMETER\",", + " \"display\": \"Required parameter(s) are invalid.\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Invalid request with error - _include parameter is invalid.\",", + " \"severity\": \"error\"", + " ", + " }", + " ],", + "};", + "", + "expectedErrorCode = 422;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id?_include=Consent:invalid", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "query": [ + { + "key": "_include", + "value": "Consent:invalid" + } + ], + "variable": [ + { + "key": "consent_id", + "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists between a performer and a patient in the National Proxy Store \n**When** a GET /Consent/{id} request is sent with an invalid include parameter \n**Then** a 422 error is returned with details including 'Required parameter(s) are invalid.'" + }, + "response": [ + { + "name": "Invalid include parameter error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id?_include=Consent:invalid", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "query": [ + { + "key": "_include", + "value": "Consent:invalid" + } + ], + "variable": [ + { + "key": "consent_id", + "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + } + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:50:07 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "377" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "6da48428-7512-4d8b-9856-b2cc37713381" + }, + { + "key": "x-amz-apigw-id", + "value": "Utkh9GPDLPEF3pw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6928813f-6ca71472e425ed45ed5bd0a5" + }, + { + "key": "X-Request-ID", + "value": "2dbb0b8c-a6c8-4bf2-9005-ec19ff68f5b2" + }, + { + "key": "X-Correlation-ID", + "value": "ec9a3692-5922-491d-8df1-da17fe8e473b" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_PARAMETER\",\n \"display\": \"Required parameter(s) are invalid.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Invalid request with error - _include parameter is invalid.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Proxy role not found - Get proxy role", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"processing\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\",", + " \"code\": \"INVALIDATED_RESOURCE\",", + " \"display\": \"Resource that has been marked as invalid was requested - invalid resources cannot be retrieved\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Resource that has been marked as invalid was requested - invalid resources cannot be retrieved\",", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "};", + "", + "expectedErrorCode = 404;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "4cfccac1-673c-4fea-9b73-54b1a605c9a0" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role does not exist between a performer and a patient in the National Proxy Store \n**When** a GET /Consent/{id} request is sent \n**Then** a 404 error is returned with details including 'Resource that has been marked as invalid was requested - invalid resources cannot be retrieved'" + }, + "response": [ + { + "name": "Proxy role not found error response", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "4cfccac1-673c-4fea-9b73-54b1a605c9a0" + } + ] + } + }, + "status": "Not Found", + "code": 404, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:50:22 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "478" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "ece32b72-4d4a-43c9-b42a-e47b729e04da" + }, + { + "key": "x-amz-apigw-id", + "value": "UtkkIHJprPEFiYw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6928814d-5023dcb7c8009889ccde4f3d" + }, + { + "key": "X-Request-ID", + "value": "3ec49ee6-c56c-4df9-aa7a-f54bb6b3e795" + }, + { + "key": "X-Correlation-ID", + "value": "74eb5dd5-2d74-4b3a-a482-5480e1ad6464" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"processing\",\n \"details\": {\n \"coding\": [\n {\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\",\n \"code\": \"INVALIDATED_RESOURCE\",\n \"display\": \"Resource that has been marked as invalid was requested - invalid resources cannot be retrieved\"\n }\n ]\n },\n \"diagnostics\": \"Resource that has been marked as invalid was requested - invalid resources cannot be retrieved\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Missing consent id value - Get proxy role", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"invalid\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"code\": \"MISSING_IDENTIFIER_VALUE\",", + " \"display\": \"Required parameter(s) are missing.\",", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier parameter not found.\",", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "};", + "", + "expectedErrorCode = 400;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + "" + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists between a performer and a patient in the National Proxy Store \n**When** a GET /Consent/{id} request is sent with the ID value missing \n**Then** a 400 error is returned with details including 'Required parameter(s) are missing.'" + }, + "response": [ + { + "name": "Missing consent id value error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/Consent/", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + "" + ] + } + }, + "status": "Bad Request", + "code": 400, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Thu, 27 Nov 2025 16:51:00 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "417" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "c4a3d99b-0ea1-40de-82bf-5cd2fa60afd6" + }, + { + "key": "x-amz-apigw-id", + "value": "UtkqLGF_rPEFcMw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69288173-c5d997b9110a61bf7b655fe7" + }, + { + "key": "X-Request-ID", + "value": "de0e2e5b-1f1b-4448-a7ee-42d0236b88a6" + }, + { + "key": "X-Correlation-ID", + "value": "6f458de2-64c6-4764-9044-34a5617d3d43" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"MISSING_IDENTIFIER_VALUE\",\n \"display\": \"Required parameter(s) are missing.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier parameter not found.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + } + ], + "description": "## Allowed auth methods\n\n- NHS Login token - Auth with test user `9730675929`\n \n- CIS2 token - Auth with test user `656005750108`\n \n\nSee collection level documentation for info about how to get authorization tokens.", + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Create a new access request (POST /QuestionnaireResponse)", + "item": [ + { + "name": "Valid request - Proxy applicant - New adult to adult access request", + "request": { + "method": "POST", + "header": [ + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Use-National-Proxy-Store", + "value": "False", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"QuestionnaireResponse\",\n \"status\": \"completed\",\n \"authored\": \"{{$isoTimestamp}}\",\n \"source\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"subject\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898202\"\n }\n },\n \"questionnaire\": \"Questionnaire/{{$randomUUID}}\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson\",\n \"text\": \"relatedPerson\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9730675929\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name\",\n \"text\": \"relatedPerson_name\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Betty\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"MORLEY\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2005-01-20\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_basisForAccess\",\n \"text\": \"Basis For Access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_relationship\",\n \"text\": \"Relationship\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient\",\n \"text\": \"patient\",\n \"item\": [\n {\n \"linkId\": \"patient_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9736898202\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name\",\n \"text\": \"patient_name\",\n \"item\": [\n {\n \"linkId\": \"patient_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"URIEL\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"ROTH\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"1988-11-10\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess\",\n \"text\": \"requestedAccess\",\n \"item\": [\n {\n \"linkId\": \"requestedAccess_accessLevel\",\n \"text\": \"Requested access level\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"APPT\",\n \"display\": \"Appointment Booking\"\n }\n },\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"VACC\",\n \"display\": \"Vaccination Records\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccess\",\n \"text\": \"Reason for access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-ReasonForAccess\",\n \"code\": \"COMB\",\n \"display\": \"Communication Barriers\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccessMoreinfo\",\n \"text\": \"Reason for access - further information\",\n \"answer\": [\n {\n \"valueString\": \"No internet connection\"\n }\n ]\n }\n ]\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse" + ] + }, + "description": "## Example scenario\n\n**Given** no proxy role exists between two adults \n**When** a valid access request is sent with the proxy as the applicant \n**Then** a 201 response is returned" + }, + "response": [ + { + "name": "A2A proxy applicant access request created", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Use-National-Proxy-Store", + "value": "False", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"QuestionnaireResponse\",\n \"status\": \"completed\",\n \"authored\": \"{{$isoTimestamp}}\",\n \"source\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"subject\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898202\"\n }\n },\n \"questionnaire\": \"Questionnaire/{{$randomUUID}}\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson\",\n \"text\": \"relatedPerson\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9730675929\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name\",\n \"text\": \"relatedPerson_name\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Betty\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"MORLEY\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2005-01-20\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_basisForAccess\",\n \"text\": \"Basis For Access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_relationship\",\n \"text\": \"Relationship\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient\",\n \"text\": \"patient\",\n \"item\": [\n {\n \"linkId\": \"patient_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9736898202\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name\",\n \"text\": \"patient_name\",\n \"item\": [\n {\n \"linkId\": \"patient_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"URIEL\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"ROTH\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"1988-11-10\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess\",\n \"text\": \"requestedAccess\",\n \"item\": [\n {\n \"linkId\": \"requestedAccess_accessLevel\",\n \"text\": \"Requested access level\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"APPT\",\n \"display\": \"Appointment Booking\"\n }\n },\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"VACC\",\n \"display\": \"Vaccination Records\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccess\",\n \"text\": \"Reason for access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-ReasonForAccess\",\n \"code\": \"COMB\",\n \"display\": \"Communication Barriers\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccessMoreinfo\",\n \"text\": \"Reason for access - further information\",\n \"answer\": [\n {\n \"valueString\": \"No internet connection\"\n }\n ]\n }\n ]\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse" + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Mon, 01 Dec 2025 16:09:01 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "186" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "720499ae-68fe-495a-8485-862105f276a9" + }, + { + "key": "x-amz-apigw-id", + "value": "U6qQkGxVrPEFeoA=" + }, + { + "key": "location", + "value": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/QuestionnaireResponse/e185e5e3-901e-4b6a-bfe2-f9adb0b311a4" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692dbd9c-999e6478f9613be345a68c77" + }, + { + "key": "X-Request-ID", + "value": "687bfc1b-b7a7-4681-a7bf-01ac6e7dd97a" + }, + { + "key": "X-Correlation-ID", + "value": "6adda3bb-aacf-4e4f-a459-a2a0fe6d34be" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"19C01XB6WC\",\n \"display\": \"19C01XB6WC\"\n }\n ]\n }\n }\n ]\n}" + } + ] + }, + { + "name": "Valid request - Patient applicant - New adult to adult access request", + "request": { + "method": "POST", + "header": [ + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Use-National-Proxy-Store", + "value": "False", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"QuestionnaireResponse\",\n \"status\": \"completed\",\n \"authored\": \"{{$isoTimestamp}}\",\n \"source\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"subject\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"questionnaire\": \"Questionnaire/{{$randomUUID}}\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson\",\n \"text\": \"relatedPerson\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9736898164\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name\",\n \"text\": \"relatedPerson_name\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Heidi\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"LAW\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"1997-09-15\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_basisForAccess\",\n \"text\": \"Basis For Access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_relationship\",\n \"text\": \"Relationship\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient\",\n \"text\": \"patient\",\n \"item\": [\n {\n \"linkId\": \"patient_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9730675929\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name\",\n \"text\": \"patient_name\",\n \"item\": [\n {\n \"linkId\": \"patient_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Betty\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"MORLEY\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2005-01-20\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess\",\n \"text\": \"requestedAccess\",\n \"item\": [\n {\n \"linkId\": \"requestedAccess_accessLevel\",\n \"text\": \"Requested access level\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"APPT\",\n \"display\": \"Appointment Booking\"\n }\n },\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"VACC\",\n \"display\": \"Vaccination Records\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccess\",\n \"text\": \"Reason for access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-ReasonForAccess\",\n \"code\": \"COMB\",\n \"display\": \"Communication Barriers\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccessMoreinfo\",\n \"text\": \"Reason for access - further information\",\n \"answer\": [\n {\n \"valueString\": \"No internet connection\"\n }\n ]\n }\n ]\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse" + ] + }, + "description": "## Example scenario\n\n**Given** no proxy role exists between two adults \n**When** a valid access request is sent with the patient as the applicant \n**Then** a 201 response is returned" + }, + "response": [ + { + "name": "A2A patient applicant access request created", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Use-National-Proxy-Store", + "value": "False", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"QuestionnaireResponse\",\n \"status\": \"completed\",\n \"authored\": \"{{$isoTimestamp}}\",\n \"source\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"subject\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"questionnaire\": \"Questionnaire/{{$randomUUID}}\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson\",\n \"text\": \"relatedPerson\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9736898164\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name\",\n \"text\": \"relatedPerson_name\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Heidi\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"LAW\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"1997-09-15\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_basisForAccess\",\n \"text\": \"Basis For Access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_relationship\",\n \"text\": \"Relationship\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient\",\n \"text\": \"patient\",\n \"item\": [\n {\n \"linkId\": \"patient_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9730675929\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name\",\n \"text\": \"patient_name\",\n \"item\": [\n {\n \"linkId\": \"patient_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Betty\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"MORLEY\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2005-01-20\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess\",\n \"text\": \"requestedAccess\",\n \"item\": [\n {\n \"linkId\": \"requestedAccess_accessLevel\",\n \"text\": \"Requested access level\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"APPT\",\n \"display\": \"Appointment Booking\"\n }\n },\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"VACC\",\n \"display\": \"Vaccination Records\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccess\",\n \"text\": \"Reason for access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-ReasonForAccess\",\n \"code\": \"COMB\",\n \"display\": \"Communication Barriers\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccessMoreinfo\",\n \"text\": \"Reason for access - further information\",\n \"answer\": [\n {\n \"valueString\": \"No internet connection\"\n }\n ]\n }\n ]\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse" + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Mon, 01 Dec 2025 16:10:22 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "186" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "d15e2ba0-3698-4fcf-80fe-d73279dd89a8" + }, + { + "key": "x-amz-apigw-id", + "value": "U6qdWHFfLPEFoUA=" + }, + { + "key": "location", + "value": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/QuestionnaireResponse/bdbba534-6e11-4491-aa3a-1631b0009628" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692dbdee-08b18875f6f85ab2a7353bd4" + }, + { + "key": "X-Request-ID", + "value": "82cb14a5-09d0-41d4-8f73-2936794c32de" + }, + { + "key": "X-Correlation-ID", + "value": "73873b5d-1e2e-4a42-9dc3-83f1292f944b" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"19C0177GRI\",\n \"display\": \"19C0177GRI\"\n }\n ]\n }\n }\n ]\n}" + } + ] + }, + { + "name": "Valid request - New adult to child access request", + "request": { + "method": "POST", + "header": [ + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Use-National-Proxy-Store", + "value": "False", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"QuestionnaireResponse\",\n \"status\": \"completed\",\n \"authored\": \"{{$isoTimestamp}}\",\n \"source\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"subject\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898245\"\n }\n },\n \"questionnaire\": \"Questionnaire/01dc6813-3421-4d14-948d-a4888241add1\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson\",\n \"text\": \"relatedPerson\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9730675929\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name\",\n \"text\": \"relatedPerson_name\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Betty\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"MORLEY\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2005-01-20\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_basisForAccess\",\n \"text\": \"Basis For Access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_relationship\",\n \"text\": \"Relationship\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails\",\n \"text\": \"parentalApplicationSupplementaryDetails\",\n \"item\": [\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_evidenceOfResponsibility\",\n \"text\": \"Evidence of parental responsibility\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-EvidenceOfResponsibility\",\n \"code\": \"BRTH\",\n \"display\": \"Birth certificate\"\n }\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_evidenceOfResponsibilityMoreinfo\",\n \"text\": \"Evidence of responsibility - Further Information\",\n \"answer\": [\n {\n \"valueString\": \"Birth Certificate is original\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_isCurrentAddressConfirmed\",\n \"text\": \"Is current address confirmed?\",\n \"answer\": [\n {\n \"valueString\": \"Yes\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_newAddress\",\n \"text\": \"parentalApplicationSupplementaryDetails_newAddress\",\n \"item\": [\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_line1\",\n \"text\": \"Address Line 1\",\n \"answer\": [\n {\n \"valueString\": \"101 MESSINGHAM ROAD\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_line2\",\n \"text\": \"Address Line 2\",\n \"answer\": [\n {\n \"valueString\": \"\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_line3\",\n \"text\": \"Address Line 3\",\n \"answer\": [\n {\n \"valueString\": \"\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_city\",\n \"text\": \"Town / City\",\n \"answer\": [\n {\n \"valueString\": \"SCUNTHORPE\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_district\",\n \"text\": \"County\",\n \"answer\": [\n {\n \"valueString\": \"S HUMBERSIDE\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_postalCode\",\n \"text\": \"Postcode\",\n \"answer\": [\n {\n \"valueString\": \"DN17 2LN\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_liveAtSameAddress\",\n \"text\": \"Do the adult and child live at the same address?\",\n \"answer\": [\n {\n \"valueString\": \"Yes\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_canChildConsent\",\n \"text\": \"Can the child consent?\",\n \"answer\": [\n {\n \"valueString\": \"No\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_reasonNoChildConsent\",\n \"text\": \"Reason the child cannot consent\",\n \"answer\": [\n {\n \"valueString\": \"Child is too young\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient\",\n \"text\": \"patient\",\n \"item\": [\n {\n \"linkId\": \"patient_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9736898245\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name\",\n \"text\": \"patient_name\",\n \"item\": [\n {\n \"linkId\": \"patient_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Amber\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"TUCKER\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2017-06-09\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess\",\n \"text\": \"requestedAccess\",\n \"item\": [\n {\n \"linkId\": \"requestedAccess_accessLevel\",\n \"text\": \"Requested access level\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"APPT\",\n \"display\": \"Appointment Booking\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccess\",\n \"text\": \"Reason for access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-ReasonForAccess\",\n \"code\": \"COMB\",\n \"display\": \"Communication Barriers\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccessMoreinfo\",\n \"text\": \"Reason for access - further information\",\n \"answer\": [\n {\n \"valueString\": \"No internet connection\"\n }\n ]\n }\n ]\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse" + ] + }, + "description": "## Example scenario\n\n**Given** no proxy role exists between an adult and child \n**When** a valid access request is sent with the proxy as the applicant \n**Then** a 201 response is returned" + }, + "response": [ + { + "name": "A2C access request created", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Use-National-Proxy-Store", + "value": "False", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"QuestionnaireResponse\",\n \"status\": \"completed\",\n \"authored\": \"{{$isoTimestamp}}\",\n \"source\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"subject\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898245\"\n }\n },\n \"questionnaire\": \"Questionnaire/01dc6813-3421-4d14-948d-a4888241add1\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson\",\n \"text\": \"relatedPerson\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9730675929\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name\",\n \"text\": \"relatedPerson_name\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Betty\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"MORLEY\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2005-01-20\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_basisForAccess\",\n \"text\": \"Basis For Access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_relationship\",\n \"text\": \"Relationship\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails\",\n \"text\": \"parentalApplicationSupplementaryDetails\",\n \"item\": [\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_evidenceOfResponsibility\",\n \"text\": \"Evidence of parental responsibility\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-EvidenceOfResponsibility\",\n \"code\": \"BRTH\",\n \"display\": \"Birth certificate\"\n }\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_evidenceOfResponsibilityMoreinfo\",\n \"text\": \"Evidence of responsibility - Further Information\",\n \"answer\": [\n {\n \"valueString\": \"Birth Certificate is original\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_isCurrentAddressConfirmed\",\n \"text\": \"Is current address confirmed?\",\n \"answer\": [\n {\n \"valueString\": \"Yes\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_newAddress\",\n \"text\": \"parentalApplicationSupplementaryDetails_newAddress\",\n \"item\": [\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_line1\",\n \"text\": \"Address Line 1\",\n \"answer\": [\n {\n \"valueString\": \"101 MESSINGHAM ROAD\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_line2\",\n \"text\": \"Address Line 2\",\n \"answer\": [\n {\n \"valueString\": \"\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_line3\",\n \"text\": \"Address Line 3\",\n \"answer\": [\n {\n \"valueString\": \"\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_city\",\n \"text\": \"Town / City\",\n \"answer\": [\n {\n \"valueString\": \"SCUNTHORPE\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_district\",\n \"text\": \"County\",\n \"answer\": [\n {\n \"valueString\": \"S HUMBERSIDE\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_postalCode\",\n \"text\": \"Postcode\",\n \"answer\": [\n {\n \"valueString\": \"DN17 2LN\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_liveAtSameAddress\",\n \"text\": \"Do the adult and child live at the same address?\",\n \"answer\": [\n {\n \"valueString\": \"Yes\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_canChildConsent\",\n \"text\": \"Can the child consent?\",\n \"answer\": [\n {\n \"valueString\": \"No\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_reasonNoChildConsent\",\n \"text\": \"Reason the child cannot consent\",\n \"answer\": [\n {\n \"valueString\": \"Child is too young\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient\",\n \"text\": \"patient\",\n \"item\": [\n {\n \"linkId\": \"patient_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9736898245\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name\",\n \"text\": \"patient_name\",\n \"item\": [\n {\n \"linkId\": \"patient_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Amber\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"TUCKER\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2017-06-09\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess\",\n \"text\": \"requestedAccess\",\n \"item\": [\n {\n \"linkId\": \"requestedAccess_accessLevel\",\n \"text\": \"Requested access level\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"APPT\",\n \"display\": \"Appointment Booking\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccess\",\n \"text\": \"Reason for access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-ReasonForAccess\",\n \"code\": \"COMB\",\n \"display\": \"Communication Barriers\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccessMoreinfo\",\n \"text\": \"Reason for access - further information\",\n \"answer\": [\n {\n \"valueString\": \"No internet connection\"\n }\n ]\n }\n ]\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse" + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Mon, 01 Dec 2025 16:11:33 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "186" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "4eba2237-3c13-4bab-afb1-1261b5ac6a19" + }, + { + "key": "x-amz-apigw-id", + "value": "U6qoVF-JLPEFXqQ=" + }, + { + "key": "location", + "value": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/QuestionnaireResponse/29a7f71a-2554-4e53-87de-07553d40d5ec" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692dbe34-f306ba0e1a55aba127add964" + }, + { + "key": "X-Request-ID", + "value": "848e592d-a42e-4fee-b529-8ac484fd459c" + }, + { + "key": "X-Correlation-ID", + "value": "73de9aa5-5951-4d30-8f2d-e64482fb1990" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"19C01N8Q37\",\n \"display\": \"19C01N8Q37\"\n }\n ]\n }\n }\n ]\n}" + }, + { + "name": "A2C access request created - Verified relationship", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Use-National-Proxy-Store", + "value": "False", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"QuestionnaireResponse\",\n \"status\": \"completed\",\n \"authored\": \"{{$isoTimestamp}}\",\n \"source\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"subject\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675422\"\n }\n },\n \"questionnaire\": \"Questionnaire/01dc6813-3421-4d14-948d-a4888241add1\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson\",\n \"text\": \"relatedPerson\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9730675929\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name\",\n \"text\": \"relatedPerson_name\",\n \"item\": [\n {\n \"linkId\": \"relatedPerson_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Betty\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"MORLEY\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2005-01-20\"\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_basisForAccess\",\n \"text\": \"Basis For Access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n },\n {\n \"linkId\": \"relatedPerson_relationship\",\n \"text\": \"Relationship\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"PRN\",\n \"display\": \"Parent\"\n }\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails\",\n \"text\": \"parentalApplicationSupplementaryDetails\",\n \"item\": [\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_evidenceOfResponsibility\",\n \"text\": \"Evidence of parental responsibility\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-EvidenceOfResponsibility\",\n \"code\": \"BRTH\",\n \"display\": \"Birth certificate\"\n }\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_evidenceOfResponsibilityMoreinfo\",\n \"text\": \"Evidence of responsibility - Further Information\",\n \"answer\": [\n {\n \"valueString\": \"Birth Certificate is original\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_isCurrentAddressConfirmed\",\n \"text\": \"Is current address confirmed?\",\n \"answer\": [\n {\n \"valueString\": \"Yes\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_newAddress\",\n \"text\": \"parentalApplicationSupplementaryDetails_newAddress\",\n \"item\": [\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_line1\",\n \"text\": \"Address Line 1\",\n \"answer\": [\n {\n \"valueString\": \"101 MESSINGHAM ROAD\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_line2\",\n \"text\": \"Address Line 2\",\n \"answer\": [\n {\n \"valueString\": \"\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_line3\",\n \"text\": \"Address Line 3\",\n \"answer\": [\n {\n \"valueString\": \"\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_city\",\n \"text\": \"Town / City\",\n \"answer\": [\n {\n \"valueString\": \"SCUNTHORPE\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_district\",\n \"text\": \"County\",\n \"answer\": [\n {\n \"valueString\": \"S HUMBERSIDE\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_postalCode\",\n \"text\": \"Postcode\",\n \"answer\": [\n {\n \"valueString\": \"DN17 2LN\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_liveAtSameAddress\",\n \"text\": \"Do the adult and child live at the same address?\",\n \"answer\": [\n {\n \"valueString\": \"Yes\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_canChildConsent\",\n \"text\": \"Can the child consent?\",\n \"answer\": [\n {\n \"valueString\": \"No\"\n }\n ]\n },\n {\n \"linkId\": \"parentalApplicationSupplementaryDetails_reasonNoChildConsent\",\n \"text\": \"Reason the child cannot consent\",\n \"answer\": [\n {\n \"valueString\": \"Child is too young\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient\",\n \"text\": \"patient\",\n \"item\": [\n {\n \"linkId\": \"patient_identifier\",\n \"text\": \"NHS Number\",\n \"answer\": [\n {\n \"valueString\": \"9730675422\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name\",\n \"text\": \"patient_name\",\n \"item\": [\n {\n \"linkId\": \"patient_name_first\",\n \"text\": \"First name.\",\n \"answer\": [\n {\n \"valueString\": \"Rowena\"\n }\n ]\n },\n {\n \"linkId\": \"patient_name_family\",\n \"text\": \"Family name (often called Surname).\",\n \"answer\": [\n {\n \"valueString\": \"HIRST\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"patient_birthDate\",\n \"text\": \"Date of Birth\",\n \"answer\": [\n {\n \"valueDate\": \"2015-08-09\"\n }\n ]\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess\",\n \"text\": \"requestedAccess\",\n \"item\": [\n {\n \"linkId\": \"requestedAccess_accessLevel\",\n \"text\": \"Requested access level\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-RequestedAccess\",\n \"code\": \"APPT\",\n \"display\": \"Appointment Booking\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccess\",\n \"text\": \"Reason for access\",\n \"answer\": [\n {\n \"valueCoding\": {\n \"system\": \"https://fhir.nhs.uk/CodeSystem/Proxy-Placeholder-ReasonForAccess\",\n \"code\": \"COMB\",\n \"display\": \"Communication Barriers\"\n }\n }\n ]\n },\n {\n \"linkId\": \"requestedAccess_reasonsForAccessMoreinfo\",\n \"text\": \"Reason for access - further information\",\n \"answer\": [\n {\n \"valueString\": \"No internet connection\"\n }\n ]\n }\n ]\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse" + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Mon, 01 Dec 2025 16:11:33 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "186" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "4eba2237-3c13-4bab-afb1-1261b5ac6a19" + }, + { + "key": "x-amz-apigw-id", + "value": "U6qoVF-JLPEFXqQ=" + }, + { + "key": "location", + "value": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/QuestionnaireResponse/29a7f71a-2554-4e53-87de-07553d40d5ec" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692dbe34-f306ba0e1a55aba127add964" + }, + { + "key": "X-Request-ID", + "value": "848e592d-a42e-4fee-b529-8ac484fd459c" + }, + { + "key": "X-Correlation-ID", + "value": "73de9aa5-5951-4d30-8f2d-e64482fb1990" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"19C01N8Q37\",\n \"display\": \"19C01N8Q37\"\n }\n ]\n }\n }\n ]\n}" + } + ] + }, + { + "name": "Invalid request body - New adult to adult access request", + "request": { + "method": "POST", + "header": [ + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Use-National-Proxy-Store", + "value": "False", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse" + ] + }, + "description": "## Example scenario\n\n**Given** no proxy role exists between two adults \n**When** a access request is sent with invalid body \n**Then** a 400 error response is returned with code 'INVALID_VALUE'" + }, + "response": [ + { + "name": "Invalid request body error response", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Use-National-Proxy-Store", + "value": "False", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse" + ] + } + }, + "status": "Bad Request", + "code": 400, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Mon, 01 Dec 2025 16:13:37 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "377" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "28073546-4513-47c5-9d2e-17caeb920a78" + }, + { + "key": "x-amz-apigw-id", + "value": "U6q7zHXFLPEF3Bg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692dbeb1-7dd1e1125d0b5422386cffe9" + }, + { + "key": "X-Request-ID", + "value": "d82f5db5-1c08-4251-a94b-50684ea1a06b" + }, + { + "key": "X-Correlation-ID", + "value": "7eeca365-bf2b-4859-9e2c-b5c7731bbe1b" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"BAD_REQUEST\",\n \"display\": \"The request could not be processed.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"The supplied input is not a valid FHIR QuestionnaireResponse.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + } + ], + "description": "## Allowed auth methods\n\n- NHS Login token - Auth with test user `9730675929`\n \n\nSee collection level documentation for info about how to get authorization tokens.", + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{login_token}}", + "type": "string" + } + ] + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Get access request (GET /QuestionnaireResponse/{id})", + "item": [ + { + "name": "Valid request - Get access request", + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse/:access_request_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse", + ":access_request_id" + ], + "variable": [ + { + "key": "access_request_id", + "value": "32a5cc78-eb64-4367-abea-cfdb6e9fa2e4" + } + ] + }, + "description": "## Example scenario\n\n**Given** a valid access request has been sent to VRS \n**When** a GET /QuestionnaireResponse/{id} request is sent with the access request UUID \n**Then** the access request is returned" + }, + "response": [] + }, + { + "name": "No access request found - Get access request", + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse/:access_request_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse", + ":access_request_id" + ], + "variable": [ + { + "key": "access_request_id", + "value": "32a5cc78-eb64-4367-abea-cfdb6e9fa2e4" + } + ] + }, + "description": "## Example scenario\n\n**Given** a valid access request has been sent to VRS \n**When** a GET /QuestionnaireResponse/{id} request is sent with a random UUID \n**Then** a 404 error is returned with message 'QUESTIONNAIRE_RESPONSE_NOT_FOUND'" + }, + "response": [ + { + "name": "No access request found error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse/:access_request_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse", + ":access_request_id" + ], + "variable": [ + { + "key": "access_request_id", + "value": "32a5cc78-eb64-4367-abea-cfdb6e9fa2e4" + } + ] + } + }, + "status": "Not Found", + "code": 404, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Mon, 01 Dec 2025 14:37:04 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "400" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "64959769-f136-4d27-9369-b4e01224c066" + }, + { + "key": "x-amz-apigw-id", + "value": "U6cyYE4brPEFXvw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692da80e-520fcf28565fe1ea77ceb7fc" + }, + { + "key": "X-Request-ID", + "value": "f6fe610a-d80b-4436-b727-67960c9687a1" + }, + { + "key": "X-Correlation-ID", + "value": "076421a4-1c56-43e4-95a9-6139434516a7" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"error\",\n \"code\": \"not-found\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"QUESTIONNAIRE_RESPONSE_NOT_FOUND\",\n \"display\": \"Questionnaire response not found\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\"\n }\n ]\n },\n \"diagnostics\": \"The Questionnaire response could not be found using the provided access request ID.\"\n }\n ]\n}" + } + ] + }, + { + "name": "No access request UUID - Get access request", + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse/", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse", + "" + ] + }, + "description": "## Example scenario\n\n**Given** a valid access request has been sent to VRS \n**When** a GET /QuestionnaireResponse/{id} request is sent without a UUID \n**Then** a 400 error is returned with message 'METHOD_NOT_ALLOWED'" + }, + "response": [ + { + "name": "No access request UUID invalid response", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse/", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse", + "" + ] + } + }, + "status": "Bad Request", + "code": 400, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Mon, 01 Dec 2025 15:15:37 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "370" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "42e98c18-f152-4e8f-8cd2-fc0ba2bcc590" + }, + { + "key": "x-amz-apigw-id", + "value": "U6ibrGjDrPEFgRQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692db117-2a87f1ac0c50e6702fcbc5ce" + }, + { + "key": "X-Request-ID", + "value": "4270ae5f-3cc9-418e-a6f8-aab43372486a" + }, + { + "key": "X-Correlation-ID", + "value": "a23d9c20-bcf2-4e03-ba6b-092a703947f3" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"not-supported\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"METHOD_NOT_ALLOWED\",\n \"display\": \"The method is not allowed.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"The method is not allowed for the requested resource.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid access request UUID - Get access request", + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse/invalid", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse", + "invalid" + ] + }, + "description": "## Example scenario\n\n**Given** a valid access request has been sent to VRS \n**When** a GET /QuestionnaireResponse/{id} request is sent with an invalid UUID \n**Then** a 400 error is returned with message 'INVALID_IDENTIFIER_VALUE'" + }, + "response": [ + { + "name": "Invalid access request UUID invalid response", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/QuestionnaireResponse/invalid", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "QuestionnaireResponse", + "invalid" + ] + } + }, + "status": "Bad Request", + "code": 400, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Mon, 01 Dec 2025 15:15:37 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "370" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "42e98c18-f152-4e8f-8cd2-fc0ba2bcc590" + }, + { + "key": "x-amz-apigw-id", + "value": "U6ibrGjDrPEFgRQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-692db117-2a87f1ac0c50e6702fcbc5ce" + }, + { + "key": "X-Request-ID", + "value": "4270ae5f-3cc9-418e-a6f8-aab43372486a" + }, + { + "key": "X-Correlation-ID", + "value": "a23d9c20-bcf2-4e03-ba6b-092a703947f3" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"error\",\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"system\": \"https://fhir.nhs.uk/STU3/CodeSystem/Spine-ErrorOrWarningCode-1\",\n \"code\": \"INVALID_IDENTIFIER_VALUE\",\n \"display\": \"Invalid identifier value\"\n }\n ]\n },\n \"diagnostics\": \"The specified access request ID is invalid. Access request IDs must be a valid UUID.\"\n }\n ]\n}" + } + ] + } + ], + "description": "## Allowed auth methods\n\n- CIS2 token - Auth with test user `656005750108`\n \n- NHS Login token - Auth with test user `9730675929`\n \n\nSee collection level documentation for info about how to get authorization tokens.", + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Create a new proxy role (POST /Consent)", + "item": [ + { + "name": "Valid request - New proxy role", + "request": { + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + }, + "description": "## Important - duplicates\n\nWe cannot currently accept duplicate proxy role requests for testing purposes.\n\nThis may lead to you experiencing 409 errors on the 'valid request' scenarios if the same request has already been sent.\n\n## Example scenario\n\n**Given** no proxy role exists in NPS between a proxy and patient \n**When** I send a POST /Consent request for the proxy and patient \n**Then** a 201 success response is returned" + }, + "response": [ + { + "name": "New proxy role created", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "status": "Created", + "code": 201, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 15:14:39 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "101" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "bf6bc3d8-1829-4a81-9433-c0b1c21376d6" + }, + { + "key": "x-amz-apigw-id", + "value": "Uwpe7FCjrPEF5aQ=" + }, + { + "key": "location", + "value": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4f15f399-d381-4949-a744-25f9cbfecfb3" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929bc5f-f6012c539553033b0859994a" + }, + { + "key": "X-Request-ID", + "value": "46baf4c8-5bb5-4a6e-9bd4-264452817dab" + }, + { + "key": "X-Correlation-ID", + "value": "65bdf903-1cb2-4722-a291-d5056c44e712" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\"\n }\n ]\n}" + } + ] + }, + { + "name": "Invalid performer NHS number - New proxy role", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "expectedResponseBody = {", + " \"issue\": [", + " {", + " \"code\": \"invalid\",", + " \"details\": {", + " \"coding\": [", + " {", + " \"code\": \"INVALID_IDENTIFIER_VALUE\",", + " \"display\": \"Invalid identifier value.\",", + " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", + " \"version\": \"1\"", + " }", + " ]", + " },", + " \"diagnostics\": \"Performer identifier value is invalid\",", + " \"expression\": [", + " \"performer[0].identifier.value\"", + " ],", + " \"severity\": \"error\"", + " }", + " ],", + " \"resourceType\": \"OperationOutcome\"", + "};", + "", + "expectedErrorCode = 422;", + "", + "pm.test(\"Status code is \" + expectedErrorCode, function () {", + " pm.response.to.have.status(expectedErrorCode);", + "});", + "", + "pm.test(\"Should have correct response body\", () => {", + " const responseJson = pm.response.json();", + " pm.expect(responseJson).to.eql(expectedResponseBody);", + "}); " + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"Invalid\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + }, + "description": "## Example scenario\n\n**Given** no proxy role exists in NPS between a proxy and patient \n**When** I send a POST /Consent request for the proxy and patient with an invalid performer id \n**Then** a 422 error response is returned with code 'INVALID_IDENTIFIER_VALUE'" + }, + "response": [ + { + "name": "Invalid identifier value error returned", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"Invalid\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 12:46:09 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "402" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "369c4598-e093-44d1-8d27-015c1e1f8a40" + }, + { + "key": "x-amz-apigw-id", + "value": "UwTu1FORLPEFh3Q=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69299991-27f38de5fa687e1e7d4659b3" + }, + { + "key": "X-Request-ID", + "value": "70591ef1-fbe0-442b-bd9a-545fb5713859" + }, + { + "key": "X-Correlation-ID", + "value": "037cf36b-1014-4177-bcc6-c1cd647aae42" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_IDENTIFIER_VALUE\",\n \"display\": \"Invalid identifier value.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Performer identifier value is invalid\",\n \"expression\": [\n \"performer[0].identifier.value\"\n ],\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Duplicate role - New proxy role", + "request": { + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role already exists in NPS between a proxy and patient \n**When** I send a POST /Consent request for the same proxy and patient \n**Then** a 409 error is returned with code 'DUPLICATE_RELATIONSHIP'" + }, + "response": [ + { + "name": "Duplicate role error returned", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "status": "Conflict", + "code": 409, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 12:41:31 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "352" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "de65a534-5cee-45c1-845e-023e9ffab375" + }, + { + "key": "x-amz-apigw-id", + "value": "UwTC8H42LPEFggg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69299878-54ea0e3b7bd5d7e836eaea8f" + }, + { + "key": "X-Request-ID", + "value": "dd90c863-82e3-4ef8-9568-3e68a64de1e0" + }, + { + "key": "X-Correlation-ID", + "value": "b08cd6b6-96fc-410c-84a9-e52732fcbc09" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"DUPLICATE_RELATIONSHIP\",\n \"display\": \"Request must be for a new proxy role.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Proxy role already exists.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Missing scope - New proxy role", + "request": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "response": [ + { + "name": "Missing scope error returned", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "status": "Bad Request", + "code": 400, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 15:18:49 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "353" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "75bfd563-8f97-4b8a-8d50-a08643917d89" + }, + { + "key": "x-amz-apigw-id", + "value": "UwqGBE7MLPEFySQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929bd59-918cef993de61bcebe339d3e" + }, + { + "key": "X-Request-ID", + "value": "2ca06d13-2568-4f70-b06c-077af0f57137" + }, + { + "key": "X-Correlation-ID", + "value": "8c8ffb79-cc4c-4cb0-a62e-31dc1310a387" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"MISSING_SCOPE\",\n \"display\": \"Required values are missing.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Unable to find scope\",\n \"expression\": [\n \"scope\"\n ],\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid status - New proxy role", + "request": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"invalid\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "response": [ + { + "name": "Invalid status - New proxy role", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"invalid\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 15:27:32 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "339" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "47dd1183-4b49-44f1-a524-79fe459589a9" + }, + { + "key": "x-amz-apigw-id", + "value": "UwrXkFOZrPEF1ZA=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929bf63-31132bda7b3f654ea3534f15" + }, + { + "key": "X-Request-ID", + "value": "e23fbdd1-027c-4281-b37d-094691df9fc7" + }, + { + "key": "X-Correlation-ID", + "value": "226277b1-9d7c-411a-b3fd-3a4a70a4d90e" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_STATUS\",\n \"display\": \"Invalid status.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Status is invalid\",\n \"expression\": [\n \"status\"\n ],\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid identifer system - New proxy role", + "request": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number/invalid\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number/invalid\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "response": [ + { + "name": "Invalid status error returned", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number/invalid\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number/invalid\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 15:29:32 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "399" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "9ca19fe7-0a06-4da0-9b72-9e6135da40f1" + }, + { + "key": "x-amz-apigw-id", + "value": "UwrqcGPaLPEFWkg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929bfdc-4e9f2ada8f5faf65f1630c1c" + }, + { + "key": "X-Request-ID", + "value": "21cc43ac-e531-477d-bc97-3e77e9657b52" + }, + { + "key": "X-Correlation-ID", + "value": "aeeaa71d-0a78-4e83-8c81-3b2884371ae9" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_IDENTIFIER_SYSTEM\",\n \"display\": \"Invalid identifier system.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Patient identifier system is invalid\",\n \"expression\": [\n \"patient.identifier.system\"\n ],\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + } + ], + "description": "## Allowed auth methods\n\n- CIS2 token - Auth with test user `656005750108`\n \n\nSee collection level documentation for info about how to get authorization tokens.", + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Update proxy role (PATCH /Consent/{id})", + "item": [ + { + "name": "Valid request - Single update - Update proxy role", + "request": { + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"inactive\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists in the National Proxy Store (NPS) \n**When** I send a PATCH /Consent request to update the proxy role \n**Then** a 200 response is returned and the role is updated" + }, + "response": [ + { + "name": "Proxy role updated to 'inactive' status", + "originalRequest": { + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"inactive\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 16:23:31 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "101" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "5b03d759-c55a-462d-ba3c-e2dbf92d031a" + }, + { + "key": "x-amz-apigw-id", + "value": "UwzkUE0urPEFqHg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929cc81-0d146fcdbc79baf5a5279c3d" + }, + { + "key": "X-Request-ID", + "value": "4555113e-aa4d-409d-bac0-41b0ed91cfc2" + }, + { + "key": "X-Correlation-ID", + "value": "b8c69a60-667d-4b0f-89c7-9de6d4e289a4" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\"\n }\n ]\n}" + }, + { + "name": "Proxy role end date updated", + "originalRequest": { + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/provision/period/end\",\n \"value\": \"2026-12-31\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 16:23:31 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "101" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "5b03d759-c55a-462d-ba3c-e2dbf92d031a" + }, + { + "key": "x-amz-apigw-id", + "value": "UwzkUE0urPEFqHg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929cc81-0d146fcdbc79baf5a5279c3d" + }, + { + "key": "X-Request-ID", + "value": "4555113e-aa4d-409d-bac0-41b0ed91cfc2" + }, + { + "key": "X-Correlation-ID", + "value": "b8c69a60-667d-4b0f-89c7-9de6d4e289a4" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\"\n }\n ]\n}" + }, + { + "name": "Proxy role legal basis updated", + "originalRequest": { + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/provision/actor\",\n \"value\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"GUARD\",\n \"display\": \"Guardian\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898172\"\n }\n }\n }\n ]\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 16:43:45 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "101" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "86df781e-87a6-48d4-80cd-e1e9849cb218" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw2iREzKrPEFXIQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d141-292c4385b8b90a2739a3c63a" + }, + { + "key": "X-Request-ID", + "value": "76fc2dc3-0645-487c-a39e-55856be2dcd7" + }, + { + "key": "X-Correlation-ID", + "value": "c73d3359-f54a-4814-bbd0-7668de2e446c" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\"\n }\n ]\n}" + } + ] + }, + { + "name": "Valid request - Multiple updates - Update proxy role", + "request": { + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"active\"\n },\n {\n \"op\": \"replace\",\n \"path\": \"/provision/period/end\",\n \"value\": \"2026-12-31\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists in the National Proxy Store (NPS) \n**When** I send a PATCH /Consent request with multiple updates for the proxy role \n**Then** a 200 response is returned and the role is updated" + }, + "response": [ + { + "name": "Proxy role status updated with end date", + "originalRequest": { + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"active\"\n },\n {\n \"op\": \"replace\",\n \"path\": \"/provision/period/end\",\n \"value\": \"2026-12-31\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 16:43:45 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "101" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "86df781e-87a6-48d4-80cd-e1e9849cb218" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw2iREzKrPEFXIQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d141-292c4385b8b90a2739a3c63a" + }, + { + "key": "X-Request-ID", + "value": "76fc2dc3-0645-487c-a39e-55856be2dcd7" + }, + { + "key": "X-Correlation-ID", + "value": "c73d3359-f54a-4814-bbd0-7668de2e446c" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\"\n }\n ]\n}" + } + ] + }, + { + "name": "Resource not found - Update proxy role", + "request": { + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"inactive\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "{{$randomUUID}}" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists in the National Proxy Store for a given UUID \n**When** a PATCH /Consent request is sent using the UUID \n**Then** a 404 error is returned with code 'RESOURCE_NOT_FOUND'" + }, + "response": [ + { + "name": "Resource not found error response", + "originalRequest": { + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"inactive\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "{{$randomUUID}}" + } + ] + } + }, + "status": "Not Found", + "code": 404, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 16:51:31 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "348" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "5940dd45-0b04-4e71-8fce-6a69665b256e" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw3q4HTZrPEFxLQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d312-f383a46c595faa9361bb8326" + }, + { + "key": "X-Request-ID", + "value": "4cfc1e62-1d97-47b2-825e-2f72eed5e29e" + }, + { + "key": "X-Correlation-ID", + "value": "db86232d-68a5-492d-96e3-02613a3cf6bf" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"diagnostics\": \"Proxy role not found.\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"RESOURCE_NOT_FOUND\",\n \"display\": \"Request must be for a existing proxy role.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid status code - Update proxy role", + "request": { + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"someinvalidcode\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "aa58f9b7-2a02-45a2-9cb4-0d6fefe07a02" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists in the National Proxy Store for a given UUID \n**When** a PATCH /Consent request is sent using the UUID \n**Then** a 404 error is returned with code 'RESOURCE_NOT_FOUND'" + }, + "response": [ + { + "name": "Invalid status code error returned", + "originalRequest": { + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"someinvalidcode\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "aa58f9b7-2a02-45a2-9cb4-0d6fefe07a02" + } + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 16:56:26 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "329" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "557c0652-9a38-434c-99c1-f979920055bf" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw4ZOEOOLPEFggg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d43a-6c636f683c11b4ac83776aa6" + }, + { + "key": "X-Request-ID", + "value": "1a4ee8bf-0d2b-4398-950f-b3fd9332e7d3" + }, + { + "key": "X-Correlation-ID", + "value": "986fe591-c2f0-422d-9e1e-c99628e9a1df" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_STATUS_CODE\",\n \"display\": \"Status code is invalid.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Invalid status code.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid state transition - Update proxy role", + "request": { + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"proposed\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists in the National Proxy Store for a given UUID \n**When** a PATCH /Consent request is sent using the UUID \n**Then** a 404 error is returned with code 'RESOURCE_NOT_FOUND'" + }, + "response": [ + { + "name": "Invalid status code error returned", + "originalRequest": { + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"someinvalidcode\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "aa58f9b7-2a02-45a2-9cb4-0d6fefe07a02" + } + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 16:56:26 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "329" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "557c0652-9a38-434c-99c1-f979920055bf" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw4ZOEOOLPEFggg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d43a-6c636f683c11b4ac83776aa6" + }, + { + "key": "X-Request-ID", + "value": "1a4ee8bf-0d2b-4398-950f-b3fd9332e7d3" + }, + { + "key": "X-Correlation-ID", + "value": "986fe591-c2f0-422d-9e1e-c99628e9a1df" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"diagnostics\": \"Patch attempting invalid status change.\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_STATE_TRANSITION\",\n \"display\": \"Status change is invalid.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid path - Update proxy role", + "request": { + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/someotherpath\",\n \"value\": \"active\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "aa58f9b7-2a02-45a2-9cb4-0d6fefe07a02" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy role exists in the National Proxy Store for a given UUID \n**When** a PATCH /Consent request with an invalid path is sent using the UUID \n**Then** a 400 error is returned with code 'INVALID_PATCH_PATH'" + }, + "response": [ + { + "name": "Invalid path error returned", + "originalRequest": { + "method": "PATCH", + "header": [ + { + "key": "Content-Type", + "value": "application/json-patch+json", + "type": "text" + }, + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/someotherpath\",\n \"value\": \"active\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent/:consent_id", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent", + ":consent_id" + ], + "variable": [ + { + "key": "consent_id", + "value": "aa58f9b7-2a02-45a2-9cb4-0d6fefe07a02" + } + ] + } + }, + "status": "Unprocessable Entity (WebDAV) (RFC 4918)", + "code": 422, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 16:58:39 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "346" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "9c37f3a0-d1af-4a9d-8664-20edf45bd111" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw4t7HzBrPEFTsw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d4bf-e038f4c128983e6e945b14ad" + }, + { + "key": "X-Request-ID", + "value": "3e5e943f-2647-4a09-b216-7d3551a637e7" + }, + { + "key": "X-Correlation-ID", + "value": "65dc6940-bcb3-466d-b25d-0a10ab98d7e6" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_PATCH_PATH\",\n \"display\": \"Patch target is invalid.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"Patch targeting non-existent element.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + } + ], + "description": "## Allowed auth methods\n\n- CIS2 token - Auth with test user `656005750108`\n \n- NHS Login token - Auth with test user `9730675929`\n \n\nSee collection level documentation for info about how to get authorization tokens." + }, + { + "name": "Get verified candidate relationships (GET /RelatedPerson)", + "item": [ + { + "name": "Valid request - Get verified candidate relationships", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=9736898121", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "9736898121", + "description": "NHS number of the user to retrieve verified relationships for" + } + ] + }, + "description": "## Example scenario\n\n**Given** an NHS user has multiple related person relationships in PDS \n**When** a GET /RelatedPerson request is sent for the user \n**Then** the relationships are returned" + }, + "response": [ + { + "name": "Candidate relationship returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=9736898148", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "9736898148", + "description": "NHS number of the user to retrieve verified relationships for" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 17:10:29 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "927" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "3c77c3f5-2f94-4718-b4df-a994b49a9c8d" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw6coGWKLPEFyvQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d783-8368a433a0eae3395c7136cb" + }, + { + "key": "X-Request-ID", + "value": "e464b1c8-ad9b-41a2-9de3-2dd0e34d0fce" + }, + { + "key": "X-Correlation-ID", + "value": "056c8f1f-9d95-44b2-a4f7-582554f53387" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/IyKYB\",\n \"resource\": {\n \"id\": \"IyKYB\",\n \"birthDate\": \"2015-09-26\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ],\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson?identifier=9736898148\"\n }\n ],\n \"timestamp\": \"2025-11-28T17:10:29.231159+00:00\",\n \"total\": 1,\n \"type\": \"searchset\",\n \"resourceType\": \"Bundle\"\n}" + }, + { + "name": "Candidate relationship returned with patient details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=9736898148&_include=RelatedPerson:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "9736898148", + "description": "NHS number of the user to retrieve verified relationships for" + }, + { + "key": "_include", + "value": "RelatedPerson:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 17:13:27 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "1395" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "a34914f5-c757-4a7c-b8e6-2061793de970" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw63LFuCLPEFtfA=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d82d-7210a91047b09608692e6ff6" + }, + { + "key": "X-Request-ID", + "value": "c46487fa-a7a9-4adb-82ec-dc7702fa66d4" + }, + { + "key": "X-Correlation-ID", + "value": "755116de-f4ef-406b-8088-1af14dd85c8d" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"birthDate\": \"2015-09-26\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/IyKYB\",\n \"resource\": {\n \"id\": \"IyKYB\",\n \"birthDate\": \"2015-09-26\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ],\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson?identifier=9736898148&_include=RelatedPerson%3Apatient\"\n }\n ],\n \"timestamp\": \"2025-11-28T17:13:27.630813+00:00\",\n \"total\": 1,\n \"type\": \"searchset\",\n \"resourceType\": \"Bundle\"\n}" + } + ] + }, + { + "name": "Valid request - No relationships returned - Get verified candidate relationships", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=9736898199", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "9736898199", + "description": "NHS number of the user to retrieve verified relationships for" + } + ] + }, + "description": "## Example scenario\n\n**Given** an NHS user has no related person relationships in PDS \n**When** a GET /RelatedPerson request is sent for the user \n**Then** no relationships are returned" + }, + "response": [ + { + "name": "No relationships returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=9736898199", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "9736898199", + "description": "NHS number of the user to retrieve verified relationships for" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 17:15:06 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "249" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "9305e61b-2b8b-4a0c-84dd-0be9c4e1ce72" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw7IDHSxrPEF7gg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d899-c345d4868005c5dc5999d598" + }, + { + "key": "X-Request-ID", + "value": "189b9dd8-722e-4e1b-b76b-75d2dd05fd00" + }, + { + "key": "X-Correlation-ID", + "value": "38045e59-8b2a-4f52-a1a5-834c91c25a9f" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson?identifier=9736898199\"\n }\n ],\n \"timestamp\": \"2025-11-28T17:15:05.994606+00:00\",\n \"total\": 0,\n \"type\": \"searchset\",\n \"resourceType\": \"Bundle\"\n}" + } + ] + }, + { + "name": "Valid request - Verify relationship - Get verified candidate relationships", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=9736898148&patient:identifier=9736898644", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "9736898148", + "description": "NHS number of the user to retrieve verified relationships for" + }, + { + "key": "patient:identifier", + "value": "9736898644" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy has a related person relationship in PDS \n**When** a GET /RelatedPerson request is sent for the proxy and the patient \n**Then** the relationship is returned" + }, + "response": [ + { + "name": "Verified relationship returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=9736898148&patient:identifier=9736898644", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "9736898148", + "description": "NHS number of the user to retrieve verified relationships for" + }, + { + "key": "patient:identifier", + "value": "9736898644" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 17:19:37 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "959" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "2ac409be-e9ce-4d73-a4b4-3c8a791aa51e" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw7x4HIMrPEF-Fg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d9a5-d9df4059c3c602feabe873fc" + }, + { + "key": "X-Request-ID", + "value": "88367407-4953-4b64-9da0-6308c007b120" + }, + { + "key": "X-Correlation-ID", + "value": "8b55ca15-93fb-4ce9-be1b-eb0eb5e728fa" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/IyKYB\",\n \"resource\": {\n \"id\": \"IyKYB\",\n \"birthDate\": \"2015-09-26\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ],\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson?identifier=9736898148&patient%3Aidentifier=9736898644\"\n }\n ],\n \"timestamp\": \"2025-11-28T17:19:37.300736+00:00\",\n \"total\": 1,\n \"type\": \"searchset\",\n \"resourceType\": \"Bundle\"\n}" + }, + { + "name": "Verified relationship returned with patient details", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=9736898148&patient:identifier=9736898644&_include=RelatedPerson:patient", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "9736898148", + "description": "NHS number of the user to retrieve verified relationships for" + }, + { + "key": "patient:identifier", + "value": "9736898644" + }, + { + "key": "_include", + "value": "RelatedPerson:patient" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 17:19:37 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "959" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "2ac409be-e9ce-4d73-a4b4-3c8a791aa51e" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw7x4HIMrPEF-Fg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929d9a5-d9df4059c3c602feabe873fc" + }, + { + "key": "X-Request-ID", + "value": "88367407-4953-4b64-9da0-6308c007b120" + }, + { + "key": "X-Correlation-ID", + "value": "8b55ca15-93fb-4ce9-be1b-eb0eb5e728fa" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/IyKYB\",\n \"resource\": {\n \"id\": \"IyKYB\",\n \"birthDate\": \"2015-09-26\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ],\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson?identifier=9736898148&patient%3Aidentifier=9736898644\"\n }\n ],\n \"timestamp\": \"2025-11-28T17:19:37.300736+00:00\",\n \"total\": 1,\n \"type\": \"searchset\",\n \"resourceType\": \"Bundle\"\n}" + } + ] + }, + { + "name": "Missing identifier value - Get verified candidate relationships", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ] + }, + "description": "## Example scenario\n\n**Given** a proxy has a related person relationship in PDS \n**When** a GET /RelatedPerson request is sent with no identifier \n**Then** a 400 error is returned with code 'MISSING_IDENTIFIER_VALUE'" + }, + "response": [ + { + "name": "Missing identifier value error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ] + } + }, + "status": "Bad Request", + "code": 400, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 17:45:09 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "362" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "f524a29e-b0e9-45b0-af70-ad23fd87158c" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw_h7GQFrPEF8xw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929dfa5-ca879ed8f2a8b5c139182a8b" + }, + { + "key": "X-Request-ID", + "value": "28dbd904-517c-4e42-a3f6-37772b2da578" + }, + { + "key": "X-Correlation-ID", + "value": "e1229f7b-b14f-4858-b4fd-dcb3c9151a99" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"MISSING_IDENTIFIER_VALUE\",\n \"display\": \"Missing RelatedPerson NHS number.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"The 'identifier' parameter is required\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid identifier value - Get verified candidate relationships", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=invalid", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "invalid" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy has a related person relationship in PDS \n**When** a GET /RelatedPerson request is sent with an invalid identifier \n**Then** a 400 error is returned with code 'INVALID_IDENTIFIER_VALUE'" + }, + "response": [ + { + "name": "Invalid identifier value error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=invalid", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "invalid" + } + ] + } + }, + "status": "Bad Request", + "code": 400, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 17:47:15 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "422" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "7a627dc1-8fe7-4a07-9a17-5e8a7c77963b" + }, + { + "key": "x-amz-apigw-id", + "value": "Uw_1hFJWLPEFbKQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929e022-4dc5c06769a0b866a6456227" + }, + { + "key": "X-Request-ID", + "value": "c695d77b-b94e-4e04-9e2b-f7e34ef2e414" + }, + { + "key": "X-Correlation-ID", + "value": "46db2d38-e52b-4fcc-a8cf-2617fec4557a" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"diagnostics\": \"Not a valid NHS Number provided for the 'identifier' parameter\",\n \"expression\": [\n \"RelatedPerson.identifier\"\n ],\n \"details\": {\n \"coding\": [\n {\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\",\n \"code\": \"INVALID_IDENTIFIER_VALUE\",\n \"display\": \"Provided value is invalid\"\n }\n ]\n },\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + }, + { + "name": "Invalid identifier system - Get verified candidate relationships", + "event": [ + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript", + "packages": {}, + "requests": {} + } + } + ], + "request": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=https://fhir.nhs.uk/Id/nhs-number/invalid|730675929", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "https://fhir.nhs.uk/Id/nhs-number/invalid|730675929" + } + ] + }, + "description": "## Example scenario\n\n**Given** a proxy has a related person relationship in PDS \n**When** a GET /RelatedPerson request is sent with an invalid identifier \n**Then** a 400 error is returned with code 'INVALID_IDENTIFIER_VALUE'" + }, + "response": [ + { + "name": "Invalid identifier value error returned", + "originalRequest": { + "method": "GET", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + } + ], + "url": { + "raw": "{{api_base_url}}/RelatedPerson?identifier=https://fhir.nhs.uk/Id/nhs-number/invalid|730675929", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "RelatedPerson" + ], + "query": [ + { + "key": "identifier", + "value": "https://fhir.nhs.uk/Id/nhs-number/invalid|730675929" + } + ] + } + }, + "status": "Bad Request", + "code": 400, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 17:48:42 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "352" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "66e70023-f78b-48aa-a29f-3df08e3e895c" + }, + { + "key": "x-amz-apigw-id", + "value": "UxADKEqiLPEFbWw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929e07a-ade89162a2d0b573830554ca" + }, + { + "key": "X-Request-ID", + "value": "a6c275c6-3964-4d18-8860-fcf25e510f14" + }, + { + "key": "X-Correlation-ID", + "value": "1d7ecfb8-29fb-461a-9904-e28216b510f8" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"INVALID_IDENTIFIER_SYSTEM\",\n \"display\": \"Invalid identifier system\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"diagnostics\": \"The identifier system is not valid.\",\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" + } + ] + } + ], + "description": "## Allowed auth methods\n\n- NHS Login token - Auth with test user `9730675929`\n \n- CIS2 token - Auth with test user `656005750108`\n \n\nSee collection level documentation for info about how to get authorization tokens.", + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{cis2_token}}", + "type": "string" + } + ] + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + } + ] + } + ], + "auth": { + "type": "bearer", + "bearer": [ + { + "key": "token", + "value": "{{authorization_header_value}}", + "type": "string" + } + ] + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "requests": {}, + "exec": [ + "" + ] + } + } + ], + "variable": [ + { + "key": "nps_enabled", + "value": "", + "description": "Boolean to determine whether the National Proxy Store should be used when fulfilling the request" + }, + { + "key": "nam_cache_enabled", + "value": "", + "description": "Boolean to determine if cached data from NAM should be used when fulfilling the request" + }, + { + "key": "nam_enabled", + "value": "", + "description": "Boolean to determine whether NAM should be called when fulfilling the request" + }, + { + "key": "use_nam_mock", + "value": "", + "description": "Boolean to determine whether the NAM mock should be used when fulfilling the request" + } + ] +} \ No newline at end of file diff --git a/postman/Validated Relationship Service Sandbox.postman_collection.json b/postman/validated_relationship_service.sandbox.postman_collection.json similarity index 100% rename from postman/Validated Relationship Service Sandbox.postman_collection.json rename to postman/validated_relationship_service.sandbox.postman_collection.json diff --git a/specification/validated-relationships-service-api.yaml b/specification/validated-relationships-service-api.yaml index 0289eee0..9c882285 100644 --- a/specification/validated-relationships-service-api.yaml +++ b/specification/validated-relationships-service-api.yaml @@ -142,6 +142,7 @@ info: * is open access, so does not allow you to test authorisation [Run In Postman](https://app.getpostman.com/run-collection/44536620-12af1681-48d5-410b-8597-78eed58bee68?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D44536620-12af1681-48d5-410b-8597-78eed58bee68%26entityType%3Dcollection%26workspaceId%3D978bc90c-e3e8-4c4e-a472-00bd35cbc4cb) + ### Integration testing Our [integration test environment](https://digital.nhs.uk/developer/guides-and-documentation/testing#integration-testing) @@ -149,6 +150,8 @@ info: * is for formal integration testing * includes authorisation with NHS Login + [Run In Postman](https://app.getpostman.com/run-collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45%26entityType%3Dcollection%26workspaceId%3D082e43b8-9a51-4a16-af66-0d2b233cd69c#?env%5BINT%5D=W3sia2V5IjoiY2lzMl90b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJzZXNzaW9uSW5kZXgiOjB9LHsia2V5IjoibG9naW5fdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwic2Vzc2lvbkluZGV4IjoxfSx7ImtleSI6ImFwaV9iYXNlX3VybCIsInZhbHVlIjoiaHR0cHM6Ly9pbnQuYXBpLnNlcnZpY2UubmhzLnVrL3ZhbGlkYXRlZC1yZWxhdGlvbnNoaXBzL0ZISVIvUjQiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoiZGVmYXVsdCIsInNlc3Npb25WYWx1ZSI6Imh0dHBzOi8vaW50LmFwaS5zZXJ2aWNlLm5ocy51ay92YWxpZGF0ZWQtcmVsYXRpb25zaGlwcy9GSElSL1I0IiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJodHRwczovL2ludC5hcGkuc2VydmljZS5uaHMudWsvdmFsaWRhdGVkLXJlbGF0aW9uc2hpcHMvRkhJUi9SNCIsInNlc3Npb25JbmRleCI6Mn0seyJrZXkiOiJwcml2YXRlX2tleSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6Ii0tLS0tQkVHSU4gUFJJVkFURS4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tXFxuTUlJSlFRSUJBREFOQmdrcWhraUc5dzBCQVFFRkFBU0NDU3N3Z2drbkFnRUFBb0lDQVFEVTA4YVBiVnJMUUdEd1xcbkxhNjZTWHlTc3NYU2dFVmt1eXFvV1RiRm1lZVdGVWlseXdMSzBqdWk0aXIyOVdVWnVqajZrdDVoOTBXWjBEeUpcXG5pd0lPZTliUHVZZ210dmpvUWNpVmdSdlFCeFJWWGM4SVJ5b3lFZ1dKWGVYMVF1T1RVVVhGcE9lc2VBcjlyV3l4XFxuYlU1MHpNTUxaN0RLSHdZZVBpTWRtc2hMaFBiNm1nUnBHUGl6bHhSQ1FxekRicVc4dERDNWFoWmFDeVBtcWFoSlxcbmFxaUs4MkFjaW1uTy9RZ2UxY3dSSjBrTFNndGRubUt4RlRab25uVjliSXNsMDVIa3MzN0dPektwemRLdHBQWXZcXG5hQmhoWVVGc2NuMkd4K1JsaHBqNlFnUktlcDVKQ1FzdVMxMW1CSjNhNmVWQ0V5WWt1TnR5dFlYeGlQdmFyWFZOXFxuVWRaSENLTW96Y3FKTUx6V2ZVSkFvVFhrcDFSd0VEZGw1c0x5TzlsbmZYTnR2SmJMdjhoQWpTSU9PL2NFQjhiS1xcblZlcldiOW5wSzE5eHF4UkYzRHUyYjhXcHluRzBFaWdtTStJVW5FWEI2TFVDcVlqYlY5dHozM1QwUjNQZGh4NFhcXG5GOHZLc1h2NldDWFV5VVpLTUovQVUwMnN2b2JZbVdycDkxRHRHYncvWGdKRWYwYUlVMkszWkxkVDc1eUVkT1h6XFxuKythWTVtN1YyM2xKQUI4M1N6OE9UdUFtYjJHZGNyL1dsWEVIejRucXZrNG1QUlN6c3FhVXpwVzhKcktXQUdCTFxcblNSdG1VOHVhSGdZMHlhaEZ6SDVrTTcvaGtTU0E2aHlEaWgxcXk5MEoyUTdLNENXK2xPS25kTmE2WkE4dGVTQWNcXG5ud3RweWgwVkkvcndwN01EbmVWeS9MdUNXUVNHTndJREFRQUJBb0lDQUU3N0hJZmpuRHNyZEE0TjFmYjZDSW5rXFxuWURlRE5MMXlIQjJIcGlUa3ZhWGIxaTc0ek50NTgzbTZGeG00N2NFRGM5dkJuMWVaelRHTXJycVlaTFg5VFRXZlxcbmM2QnliS0s4cnZTVWlqN0VNYzZRVnFHS3oyVHZmVENDTVRHNGxmMzR2anpmdXI0dGVsNnorazlKOGtDME1Ibk9cXG5ERFNtR0w0bWJ4K3diajVnWk11UlZxdXVBYldjRG4rY2dNS3lFRDJjWFN5aDZ4T1ZhTWhVRThqVEZTTWp1SG8rXFxuLzQ4NkpjWlRyeng2YU1nUXZYRUxzekptWGQrclZveXFPR1ZjUTVzczVaSXBLOThLSy9JVzh1bWE1dGxVbjFQZ1xcbmxTYnNqWjBEdTBlOE1oMTFyY0lLNGlSWEFaMDNmMkZiUmFJa3V4WUxxQnpFc3FWMUlZb0FyelIzZDE2N0hOajlcXG5iQmJheElXT3A0QVJqc1NQcjNyQzJlTUl0dm84eDhlY1RuaWdpZUtlYklyVXMvcTEvQTRhYmVZemJPTm9SWVhkXFxucFlHOEEweUVTR1hqQ3lHdm12Qy9ZK0NIaUpiVTVwdkpDQ1FPL1RzZUdtRHdDejZNSU5XTitzSlpaR2lOYnUyelxcbnoyRjNGVFZSeFU5UzhXUVdzYmZsRTI4MlpieVQzWDc1dU1TM2RuWU4zbWtwNTZrL0ZCZFl2ZlM4UzdFbS8zTlpcXG5OZG1LbjIvN0JweWRFWkpPUWIrSEh1Um1hbmtPWFRFZlFPWlBOUm14RVNTVlByRGlmTGlYSzhTMitZb29BdkREXFxuL2p3bzhta3FOZVVjRDk5YVlrYU5OdjRyS2g2aUYrUmZob0pvOWhxSDlRQkdrMFBmek1ucjdMNEFhTXB0ZEtXblxcbitDSy8ybkdVV3FmbWVIWWphdk5oQW9JQkFRRHNCQUhTT2hXQ0J5RUFPWTRnbm94T2dvcngyQjlHRk9SdE5qUStcXG54bTF1eGdweWprNURhVCs0QUNXWkVTL3Vza2JIU1dDblUrZTF5TVoxU3RROWZaR3BjclZqbmdGSTl0TFRtd1ZnXFxuc3JscFBqVkNpR0tUM0dzMkNDaHY2cHp5YnRjd1NEQlY1WGxFZE1ydmZFQURQRGlEQmdkNXJOUFVGYUIzSVQyY1xcbmlSRzJTelQxRkVjZjBNVDR4NzJkLzFRSG1oaFRaME9rTERJMnNITjg5V3I0a0NTK1F4TlhmNlh6c1F5Q1pwaitcXG5Pd2RJZzN1eWlSRGh4L0dtd1AwVXRic3VyUmd3S3FVWmYraWt0d1p0R2JqekMrWVpqYU1Pc1g3ZFkzYUhVMjQ3XFxudkNvRmc5bWRtZ2dXdDM3dHdSWTBsY0p6c3piMC9XNm4wM01wanlydUhOdGwrSEtSQW9JQkFRRG0yU0FIRHNscFxcbkp2TEhCeWhIL3pLZnBmNTBSUkxRQllsbzNjRnBmbHdQaG9JcitucG4zaEZnaGNseTFNeTdteFN0NFJYdmI2WlVcXG5vSDNjMldsK29jRlFsbDUrZ3BocmlNYmwvUXJSeG0vMCtpZjNwUStEYytTNWVtTkg3Wjd4ZkgwOUxnbERRZDJqXFxuVlNVeUlOejlQNndXMG5vbzlmZ2tDbnMvbUFaNUJ0clpJR2RPdkI4QXo3WTJtaFlpUjhGTTExamRsS0R5bzFmVVxcbmRXNC9DV3Y4S05sZ1NWRXppTDFQTXB0T1JaMmFBcm02WTE5d2Z1cGtHK0daOFRLMENBUzBOUDVBUThsMmVFWjBcXG5mYVBBbzVOUTFGc0lmMWpnSVZPcGNNMXdWUFRNcUhJOENBUUZublRIRS9DdWVvSklhUmtXa3NLQktGSE5OYzhOXFxuMHE4b0pDVkFNTUJIQW9JQkFIUndnYW1ES0l0UEV4UDJVVTE4aTBKTW0xbzN3eTRqTHBORzg3Mm96ZUtoNkJPZVxcbmE3Uk1YN2hhc2pIelRjK1l1dHlsTWY4N29ReUpjb2Y1ay82R1RlL29mTjhaM0E1d1g1RXdZUlhVOXk2YUYxS3NcXG4wTjJjR0hTK3o1eHZobUVCR0Q5a3pod0NxN0ovWUlPSXJGZ3NSTUUzbjBhRFlycTJ0TVV4YkNFbmFzcWlEZzEvXFxucEp0b3QxVDV6bTM5d3lwQTl4Rm0xL05PTHJQV21CT2xUTkkyNHpuUEErTGVRalNaTzgrMTZITTlFaG5QYko2blxcbml1R3BjR3BSdWtxV1lqUGtDQlB6WmlMUGZTcU9kYWdyMFpodlhXVnNBRzlHV0kzRy9YcEVTaFZFZndMYml1aDdcXG5UdFJPVVZ2aE1DQmZabUVJb090N2dUVmhWK2JBRUhFTFlaN01WVkVDZ2dFQWZIL2pMd3RCZ3MxM3AvRnJQeEVhXFxuSzFIcDNxa1dFVXk3SSt4ZEVGa09xMnplclh0RUl0cDRRcmRFd3dLVGZDYVNTNGlXUFBEWkl0RC9zR2tzNVJlMVxcbjI1R05XdXR4NnFUMHFEc0ZaOGQrdi85ZUtNaERpcUNwWFlMdEluQzhCUDhmeUN3WTRNWVlFNnVyQ05NQ2ZDNm5cXG4wQk1wd1FlUEVWajV5WDFqR0VpakpQQzk1bys4cE1KaFFpZHVBb1R5Y2srOTVKcnhCb3NqcGpqREFZcENTOWQ0XFxuRE43ZHhVNWMwdWEzTGNxTHlmRG9XK2FXSldTOVlzcEtyS3lSck5pYU9OcFB1VGNWNHlmUXo2aW05UkVETlZlaFxcbjFQNWhYMWQ1K0dzVzBSdHdmeVBsb0F5dXBwMGoyKzRjSXUxOWNESUdUczlOeVR5R2lZY1lxUnJVVG5EWUNqdUFcXG5wd0tDQVFBV3hReFdCek52eC9aTWRZUCtKN3k3d1Q5U2NSWGR0eTJUaWxSdHVsU0xqRmZsdW50QnFBdWU1ZVk2XFxuNWNITURqdzdPZWo4ZmhRV3QzdmIvcVBwRHl3aDl0U0tIQkdCcVl0SStzQkV2N25LajVHL051VllIWDhFbjhwb1xcbnNaU1J6YS9xcXh3Ukw2bWh6aTQ5RjhKOWRnWVhyS1M5ejlKQ2kxWUVJQlcwNWNMaVRZOWRWYjhmRW0wcjJZTThcXG5CTmY0NTRMZTRtU1pyUk40aDBuREw3TGc3TExaeXlvOUtWY3NZQ0hua0NhRlUzTUtDZU56eWRGOGF6cmdhZFNvXFxucUMzMm5MYkgxWTBTeVJoRTNRMzlZQ1VlRnpOWW85d3d5bnplZmpGdXBzcnJDcWhBT2UxZ0MrUTExMjR0Rk1adVxcbktFSHcyQUJCRU9XK01OMnZGV3BGeVpwZVR4OU5cXG4tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tIiwic2Vzc2lvbkluZGV4IjozfSx7ImtleSI6ImFwaV9rZXkiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiI0aHdpdnBKQVpJcXZwSmxBV09jdFJYQ1NnVU1sd1p1SyIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiNGh3aXZwSkFaSXF2cEpsQVdPY3RSWENTZ1VNbHdadUsiLCJzZXNzaW9uSW5kZXgiOjR9LHsia2V5IjoicnBfYXBwX2F1dGhfaGVhZGVyX3ZhbHVlIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoiU2lZNFM5enRzQTdDcHJidjUyR0ZlSTFVSkU2OCIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiU2lZNFM5enRzQTdDcHJidjUyR0ZlSTFVSkU2OCIsInNlc3Npb25JbmRleCI6NX0seyJrZXkiOiJjb25zZW50X2FwcF9hdXRoX2hlYWRlcl92YWx1ZSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IkR6S3ZWSjVRcXlaN2VOR1FvYzNuMlluSUNuZDIiLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IkR6S3ZWSjVRcXlaN2VOR1FvYzNuMlluSUNuZDIiLCJzZXNzaW9uSW5kZXgiOjZ9LHsia2V5IjoidHBwXzk2NzQ5OTg1MzVfYWNjZXNzX3Rva2VuIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI1NTI4Njk4MzRcIixcIlBhc3NwaHJhc2VcIjpcInZSSnF1MTM5ZDdkdmVyWmcrOGVXN3ZXRlNDYVNud0FXRlI2WTR0WVhqUDcvdUZTZ3R2N2sySU93QTQ3OE9XcDdaRHE0TUJZQzZoY1RJVEVybk53Z2J4Vm03Vlo4ZjNRVW5MLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJ7XCJBY2NvdW50SWRcIjpcIjU1Mjg2OTgzNFwiLFwiUGFzc3BocmFzZVwiOlwidlJKcXUxMzlkN2R2ZXJaZys4ZVc3dldGU0NhU253QVdGUjZZNHRZWGpQNy91RlNndHY3azJJT3dBNDc4T1dwN1pEcTRNQllDNmhjVElURXJuTndnYnhWbTdWWjhmM1FVbkxQV2grNEs3RVA1aS80SzBBZEdaMElLMFV3NytDN1haYzdGSGc4UlNjSWpoKzJNcUY3dnVaNDR1bWVQdmc4ZVNNNDhXUjhLNFhFPVwiLFwiUHJvdmlkZXJJZFwiOlwiYjg5MWZjM2I1MWQ1ZTdjMVwiLFwiSW0xQ2FjaGVLZXlcIjpcIno4RWxDREkzZTFzbFdMYlpzSVJVd2loeThXWkZzY3IyZFBtVGZVdWkrZ0FxUTdaaDBXUFZJWG8vTTlEdUVWek8zWGFGT3BiQjN3Yzl5aEFVaEFaaFVnPT1cIn0iLCJzZXNzaW9uSW5kZXgiOjd9LHsia2V5IjoidHBwXzk2NzQ5OTg0NTRfYWNjZXNzX3Rva2VuIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI4NTg4MDMyMDNcIixcIlBhc3NwaHJhc2VcIjpcIkpXNEhzcldNbDRISE1qbHg5QklVbnNTNXVCSmZxQWxaeTQvZVltS3drdTlVRlEvTEFDbU9HbW1YYmQ4b3lVRmIwdjc0TXhuRWYrOXpRV09BNDRBS09JdDdsS0V2UklvNU1jLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJ7XCJBY2NvdW50SWRcIjpcIjg1ODgwMzIwM1wiLFwiUGFzc3BocmFzZVwiOlwiSlc0SHNyV01sNEhITWpseDlCSVVuc1M1dUJKZnFBbFp5NC9lWW1Ld2t1OVVGUS9MQUNtT0dtbVhiZDhveVVGYjB2NzRNeG5FZis5elFXT0E0NEFLT0l0N2xLRXZSSW81TWNCNU5qdlpOQkJpaExMTzY3T3E2b0pjTHlsekNHMVplSGpMSXgxMmtSdDBuVkRzdmpDYjIxNm5GbkRiT2Y1aTFBYVhtcFN0VUhjXFx1MDAzZFwiLFwiUHJvdmlkZXJJZFwiOlwiYjg5MWZjM2I1MWQ1ZTdjMVwiLFwiSW0xQ2FjaGVLZXlcIjpcImswWU9ZV3NUdG14Z2tWWlNZcDVheStoR3p5RjJZSFNwQTZienFBNkc4N2I5a3FuK0dPL1dDcTREVGJDZEhIaGRSZkJFWGFlOFRTaEdraWk4S3VCd3dBXFx1MDAzZFxcdTAwM2RcIn0iLCJzZXNzaW9uSW5kZXgiOjh9LHsia2V5IjoiZW1pc185NjkyMTEzNjk4X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkltMUNhY2hlS2V5XCI6XCJXdWpQbEhMM0YrSnhJSlF4N0ZQRHdpY28rNlZqZURhendmN3Z5b3VrUzRvZzZGeWVlcXFJSVVKRVV1LzNEdllGSWNBRUF6cUR2TmExeTZQZjdGWDlDdz09XCIsXCJBY2Nlc3NJZGVudGl0eUd1aWRcIjpcIjc5ZTgzOTI5LS4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiSW0xQ2FjaGVLZXlcIjpcIld1alBsSEwzRitKeElKUXg3RlBEd2ljbys2VmplRGF6d2Y3dnlvdWtTNG9nNkZ5ZWVxcUlJVUpFVXUvM0R2WUZJY0FFQXpxRHZOYTF5NlBmN0ZYOUN3PT1cIixcIkFjY2Vzc0lkZW50aXR5R3VpZFwiOlwiNzllODM5MjktYWI3Ny00MjY2LWIxYjktZmM3YjgyM2MxNTI1XCJ9Iiwic2Vzc2lvbkluZGV4Ijo5fSx7ImtleSI6ImVtaXNfOTY5MjExMzYxMl9hY2Nlc3NfdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiQzhBdmF4SnRiNloyUWV6Y1J6UTNZSmtsVGVJVW1TY3pjQXoyejVra0NrOU82NDR2VWpXbS95QnNFYXpzSG1mbE9PRXUwMGVzci9sbENPaDhHNDNtY0E9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCIyMTdlZjZmMS0uLi4iLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IntcIkltMUNhY2hlS2V5XCI6XCJDOEF2YXhKdGI2WjJRZXpjUnpRM1lKa2xUZUlVbVNjemNBejJ6NWtrQ2s5TzY0NHZValdtL3lCc0VhenNIbWZsT09FdTAwZXNyL2xsQ09oOEc0M21jQT09XCIsXCJBY2Nlc3NJZGVudGl0eUd1aWRcIjpcIjIxN2VmNmYxLTFkNzAtNGE4ZS1iNzI4LTY2NDMxNmM3NTY1NFwifSIsInNlc3Npb25JbmRleCI6MTB9XQ==) + ## Onboarding You need to get your software approved by us before it can go live with this API. We call this onboarding. The onboarding process can sometimes be quite long, so it's worth planning well ahead. From 392f71e3e94f177e0321890e40438ad34549818b Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Mon, 1 Dec 2025 17:16:30 +0000 Subject: [PATCH 03/15] NPA-5880: Updated postman collection and OAS --- postman/INT.postman_environment.json | 10 +- ...ervice.integration.postman_collection.json | 355 ++---------------- .../validated-relationships-service-api.yaml | 2 +- 3 files changed, 26 insertions(+), 341 deletions(-) diff --git a/postman/INT.postman_environment.json b/postman/INT.postman_environment.json index 7402dccb..de8ae93d 100644 --- a/postman/INT.postman_environment.json +++ b/postman/INT.postman_environment.json @@ -32,12 +32,6 @@ "type": "secret", "enabled": true }, - { - "key": "rp_app_auth_header_value", - "value": "", - "type": "secret", - "enabled": true - }, { "key": "consent_app_auth_header_value", "value": "", @@ -70,6 +64,6 @@ } ], "_postman_variable_scope": "environment", - "_postman_exported_at": "2025-12-01T15:43:51.791Z", + "_postman_exported_at": "2025-12-01T17:15:19.423Z", "_postman_exported_using": "Postman/11.68.4" -} +} \ No newline at end of file diff --git a/postman/validated_relationship_service.integration.postman_collection.json b/postman/validated_relationship_service.integration.postman_collection.json index ccb1e372..34867351 100644 --- a/postman/validated_relationship_service.integration.postman_collection.json +++ b/postman/validated_relationship_service.integration.postman_collection.json @@ -1,8 +1,8 @@ { "info": { "_postman_id": "c3ee07a1-47e5-43f7-96f9-5e56d403af45", - "name": "Validated Relationship Service", - "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\nPre-requisites:\n\n- Get access to the authorization scripts from VRS by speaking to your onboarding contact.\n \n\nSteps:\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", + "name": "Validated Relationship Service - Integration", + "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `private_key`\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `app_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value`\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp/emis_(nhs_number)_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\nPre-requisites:\n\n- Get access to the authorization scripts from VRS by speaking to your onboarding contact.\n \n\nSteps:\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "_exporter_id": "18067099", "_collection_link": "https://www.postman.com/lunar-crescent-672573/workspace/validated-relationship-service-pre-prod-20-11-2025/collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=share&source=collection_link&creator=18067099" @@ -131,9 +131,7 @@ "listen": "test", "script": { "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" + "" ], "type": "text/javascript", "packages": {}, @@ -892,9 +890,7 @@ "listen": "test", "script": { "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" + "" ], "type": "text/javascript", "packages": {}, @@ -1610,9 +1606,7 @@ "listen": "test", "script": { "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" + "" ], "type": "text/javascript", "packages": {}, @@ -2297,9 +2291,7 @@ "listen": "test", "script": { "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" + "" ], "type": "text/javascript", "packages": {}, @@ -2755,9 +2747,7 @@ "listen": "test", "script": { "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" + "" ], "type": "text/javascript", "packages": {}, @@ -2767,8 +2757,12 @@ { "listen": "prerequest", "script": { + "exec": [ + "" + ], + "type": "text/javascript", "packages": {}, - "type": "text/javascript" + "requests": {} } } ], @@ -2923,37 +2917,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"issue\": [", - " {", - " \"code\": \"invalid\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"code\": \"INVALID_PARAMETER\",", - " \"display\": \"Required parameter(s) are invalid.\",", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\"", - " }", - " ]", - " },", - " \"diagnostics\": \"Invalid request with error - status parameter is invalid.\",", - " \"severity\": \"error\"", - " }", - " ],", - " \"resourceType\": \"OperationOutcome\"", - "}", - "", - "expectedErrorCode = 422;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, @@ -3120,37 +3084,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"issue\": [", - " {", - " \"code\": \"invalid\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"code\": \"INVALID_PARAMETER\",", - " \"display\": \"Required parameter(s) are invalid.\",", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\"", - " }", - " ]", - " },", - " \"diagnostics\": \"Invalid request with error - _include parameter is invalid.\",", - " \"severity\": \"error\"", - " }", - " ],", - " \"resourceType\": \"OperationOutcome\"", - "}", - "", - "expectedErrorCode = 422;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, @@ -3317,37 +3251,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"issue\": [", - " {", - " \"code\": \"invalid\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"code\": \"INVALID_IDENTIFIER_VALUE\",", - " \"display\": \"Required parameter(s) are invalid.\",", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\"", - " }", - " ]", - " },", - " \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier parameter is invalid.\",", - " \"severity\": \"error\"", - " }", - " ],", - " \"resourceType\": \"OperationOutcome\"", - "}", - "", - "expectedErrorCode = 422;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, @@ -3506,37 +3410,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"issue\": [", - " {", - " \"code\": \"invalid\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"code\": \"INVALID_IDENTIFIER_SYSTEM\",", - " \"display\": \"Required parameter(s) are invalid.\",", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\"", - " }", - " ]", - " },", - " \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier system parameter is invalid.\",", - " \"severity\": \"error\"", - " }", - " ],", - " \"resourceType\": \"OperationOutcome\"", - "};", - "", - "expectedErrorCode = 422;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, @@ -3695,37 +3569,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"issue\": [", - " {", - " \"code\": \"invalid\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"code\": \"MISSING_IDENTIFIER_VALUE\",", - " \"display\": \"Required parameter(s) are missing.\",", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\"", - " }", - " ]", - " },", - " \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier parameter not found.\",", - " \"severity\": \"error\"", - " }", - " ],", - " \"resourceType\": \"OperationOutcome\"", - "};", - "", - "expectedErrorCode = 400;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, @@ -3872,37 +3716,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"issue\": [", - " {", - " \"code\": \"processing\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\",", - " \"code\": \"GP_PRACTICE_NOT_FOUND\",", - " \"display\": \"GP Practice could not be found - invalid resources cannot be retrieved\"", - " }", - " ]", - " },", - " \"diagnostics\": \"GP Practice could not be found\",", - " \"severity\": \"error\"", - " }", - " ],", - " \"resourceType\": \"OperationOutcome\"", - "};", - "", - "expectedErrorCode = 404;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, @@ -4203,9 +4017,7 @@ "listen": "test", "script": { "exec": [ - "pm.test(\"Status code is 200\", function () {", - " pm.response.to.have.status(200);", - "});" + "" ], "type": "text/javascript", "packages": {}, @@ -4429,37 +4241,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"issue\": [", - " {", - " \"code\": \"invalid\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"code\": \"INVALID_ID_VALUE\",", - " \"display\": \"Required parameter(s) are invalid.\",", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\"", - " }", - " ]", - " },", - " \"diagnostics\": \"Invalid request with error - ID must be a valid UUID.\",", - " \"severity\": \"error\"", - " }", - " ],", - " \"resourceType\": \"OperationOutcome\"", - "};", - "", - "expectedErrorCode = 422;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, @@ -4590,38 +4372,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"resourceType\": \"OperationOutcome\",", - " \"issue\": [", - " {", - " \"code\": \"invalid\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\",", - " \"code\": \"INVALID_PARAMETER\",", - " \"display\": \"Required parameter(s) are invalid.\"", - " }", - " ]", - " },", - " \"diagnostics\": \"Invalid request with error - _include parameter is invalid.\",", - " \"severity\": \"error\"", - " ", - " }", - " ],", - "};", - "", - "expectedErrorCode = 422;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, @@ -4764,37 +4515,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"issue\": [", - " {", - " \"code\": \"processing\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\",", - " \"code\": \"INVALIDATED_RESOURCE\",", - " \"display\": \"Resource that has been marked as invalid was requested - invalid resources cannot be retrieved\"", - " }", - " ]", - " },", - " \"diagnostics\": \"Resource that has been marked as invalid was requested - invalid resources cannot be retrieved\",", - " \"severity\": \"error\"", - " }", - " ],", - " \"resourceType\": \"OperationOutcome\"", - "};", - "", - "expectedErrorCode = 404;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, @@ -4925,37 +4646,7 @@ "listen": "test", "script": { "exec": [ - "expectedResponseBody = {", - " \"issue\": [", - " {", - " \"code\": \"invalid\",", - " \"details\": {", - " \"coding\": [", - " {", - " \"code\": \"MISSING_IDENTIFIER_VALUE\",", - " \"display\": \"Required parameter(s) are missing.\",", - " \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",", - " \"version\": \"1\"", - " }", - " ]", - " },", - " \"diagnostics\": \"Invalid request with error - performer:identifier or patient:identifier parameter not found.\",", - " \"severity\": \"error\"", - " }", - " ],", - " \"resourceType\": \"OperationOutcome\"", - "};", - "", - "expectedErrorCode = 400;", - "", - "pm.test(\"Status code is \" + expectedErrorCode, function () {", - " pm.response.to.have.status(expectedErrorCode);", - "});", - "", - "pm.test(\"Should have correct response body\", () => {", - " const responseJson = pm.response.json();", - " pm.expect(responseJson).to.eql(expectedResponseBody);", - "}); " + "" ], "type": "text/javascript", "packages": {}, diff --git a/specification/validated-relationships-service-api.yaml b/specification/validated-relationships-service-api.yaml index 9c882285..83e04224 100644 --- a/specification/validated-relationships-service-api.yaml +++ b/specification/validated-relationships-service-api.yaml @@ -150,7 +150,7 @@ info: * is for formal integration testing * includes authorisation with NHS Login - [Run In Postman](https://app.getpostman.com/run-collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45%26entityType%3Dcollection%26workspaceId%3D082e43b8-9a51-4a16-af66-0d2b233cd69c#?env%5BINT%5D=W3sia2V5IjoiY2lzMl90b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJzZXNzaW9uSW5kZXgiOjB9LHsia2V5IjoibG9naW5fdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwic2Vzc2lvbkluZGV4IjoxfSx7ImtleSI6ImFwaV9iYXNlX3VybCIsInZhbHVlIjoiaHR0cHM6Ly9pbnQuYXBpLnNlcnZpY2UubmhzLnVrL3ZhbGlkYXRlZC1yZWxhdGlvbnNoaXBzL0ZISVIvUjQiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoiZGVmYXVsdCIsInNlc3Npb25WYWx1ZSI6Imh0dHBzOi8vaW50LmFwaS5zZXJ2aWNlLm5ocy51ay92YWxpZGF0ZWQtcmVsYXRpb25zaGlwcy9GSElSL1I0IiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJodHRwczovL2ludC5hcGkuc2VydmljZS5uaHMudWsvdmFsaWRhdGVkLXJlbGF0aW9uc2hpcHMvRkhJUi9SNCIsInNlc3Npb25JbmRleCI6Mn0seyJrZXkiOiJwcml2YXRlX2tleSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6Ii0tLS0tQkVHSU4gUFJJVkFURS4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tXFxuTUlJSlFRSUJBREFOQmdrcWhraUc5dzBCQVFFRkFBU0NDU3N3Z2drbkFnRUFBb0lDQVFEVTA4YVBiVnJMUUdEd1xcbkxhNjZTWHlTc3NYU2dFVmt1eXFvV1RiRm1lZVdGVWlseXdMSzBqdWk0aXIyOVdVWnVqajZrdDVoOTBXWjBEeUpcXG5pd0lPZTliUHVZZ210dmpvUWNpVmdSdlFCeFJWWGM4SVJ5b3lFZ1dKWGVYMVF1T1RVVVhGcE9lc2VBcjlyV3l4XFxuYlU1MHpNTUxaN0RLSHdZZVBpTWRtc2hMaFBiNm1nUnBHUGl6bHhSQ1FxekRicVc4dERDNWFoWmFDeVBtcWFoSlxcbmFxaUs4MkFjaW1uTy9RZ2UxY3dSSjBrTFNndGRubUt4RlRab25uVjliSXNsMDVIa3MzN0dPektwemRLdHBQWXZcXG5hQmhoWVVGc2NuMkd4K1JsaHBqNlFnUktlcDVKQ1FzdVMxMW1CSjNhNmVWQ0V5WWt1TnR5dFlYeGlQdmFyWFZOXFxuVWRaSENLTW96Y3FKTUx6V2ZVSkFvVFhrcDFSd0VEZGw1c0x5TzlsbmZYTnR2SmJMdjhoQWpTSU9PL2NFQjhiS1xcblZlcldiOW5wSzE5eHF4UkYzRHUyYjhXcHluRzBFaWdtTStJVW5FWEI2TFVDcVlqYlY5dHozM1QwUjNQZGh4NFhcXG5GOHZLc1h2NldDWFV5VVpLTUovQVUwMnN2b2JZbVdycDkxRHRHYncvWGdKRWYwYUlVMkszWkxkVDc1eUVkT1h6XFxuKythWTVtN1YyM2xKQUI4M1N6OE9UdUFtYjJHZGNyL1dsWEVIejRucXZrNG1QUlN6c3FhVXpwVzhKcktXQUdCTFxcblNSdG1VOHVhSGdZMHlhaEZ6SDVrTTcvaGtTU0E2aHlEaWgxcXk5MEoyUTdLNENXK2xPS25kTmE2WkE4dGVTQWNcXG5ud3RweWgwVkkvcndwN01EbmVWeS9MdUNXUVNHTndJREFRQUJBb0lDQUU3N0hJZmpuRHNyZEE0TjFmYjZDSW5rXFxuWURlRE5MMXlIQjJIcGlUa3ZhWGIxaTc0ek50NTgzbTZGeG00N2NFRGM5dkJuMWVaelRHTXJycVlaTFg5VFRXZlxcbmM2QnliS0s4cnZTVWlqN0VNYzZRVnFHS3oyVHZmVENDTVRHNGxmMzR2anpmdXI0dGVsNnorazlKOGtDME1Ibk9cXG5ERFNtR0w0bWJ4K3diajVnWk11UlZxdXVBYldjRG4rY2dNS3lFRDJjWFN5aDZ4T1ZhTWhVRThqVEZTTWp1SG8rXFxuLzQ4NkpjWlRyeng2YU1nUXZYRUxzekptWGQrclZveXFPR1ZjUTVzczVaSXBLOThLSy9JVzh1bWE1dGxVbjFQZ1xcbmxTYnNqWjBEdTBlOE1oMTFyY0lLNGlSWEFaMDNmMkZiUmFJa3V4WUxxQnpFc3FWMUlZb0FyelIzZDE2N0hOajlcXG5iQmJheElXT3A0QVJqc1NQcjNyQzJlTUl0dm84eDhlY1RuaWdpZUtlYklyVXMvcTEvQTRhYmVZemJPTm9SWVhkXFxucFlHOEEweUVTR1hqQ3lHdm12Qy9ZK0NIaUpiVTVwdkpDQ1FPL1RzZUdtRHdDejZNSU5XTitzSlpaR2lOYnUyelxcbnoyRjNGVFZSeFU5UzhXUVdzYmZsRTI4MlpieVQzWDc1dU1TM2RuWU4zbWtwNTZrL0ZCZFl2ZlM4UzdFbS8zTlpcXG5OZG1LbjIvN0JweWRFWkpPUWIrSEh1Um1hbmtPWFRFZlFPWlBOUm14RVNTVlByRGlmTGlYSzhTMitZb29BdkREXFxuL2p3bzhta3FOZVVjRDk5YVlrYU5OdjRyS2g2aUYrUmZob0pvOWhxSDlRQkdrMFBmek1ucjdMNEFhTXB0ZEtXblxcbitDSy8ybkdVV3FmbWVIWWphdk5oQW9JQkFRRHNCQUhTT2hXQ0J5RUFPWTRnbm94T2dvcngyQjlHRk9SdE5qUStcXG54bTF1eGdweWprNURhVCs0QUNXWkVTL3Vza2JIU1dDblUrZTF5TVoxU3RROWZaR3BjclZqbmdGSTl0TFRtd1ZnXFxuc3JscFBqVkNpR0tUM0dzMkNDaHY2cHp5YnRjd1NEQlY1WGxFZE1ydmZFQURQRGlEQmdkNXJOUFVGYUIzSVQyY1xcbmlSRzJTelQxRkVjZjBNVDR4NzJkLzFRSG1oaFRaME9rTERJMnNITjg5V3I0a0NTK1F4TlhmNlh6c1F5Q1pwaitcXG5Pd2RJZzN1eWlSRGh4L0dtd1AwVXRic3VyUmd3S3FVWmYraWt0d1p0R2JqekMrWVpqYU1Pc1g3ZFkzYUhVMjQ3XFxudkNvRmc5bWRtZ2dXdDM3dHdSWTBsY0p6c3piMC9XNm4wM01wanlydUhOdGwrSEtSQW9JQkFRRG0yU0FIRHNscFxcbkp2TEhCeWhIL3pLZnBmNTBSUkxRQllsbzNjRnBmbHdQaG9JcitucG4zaEZnaGNseTFNeTdteFN0NFJYdmI2WlVcXG5vSDNjMldsK29jRlFsbDUrZ3BocmlNYmwvUXJSeG0vMCtpZjNwUStEYytTNWVtTkg3Wjd4ZkgwOUxnbERRZDJqXFxuVlNVeUlOejlQNndXMG5vbzlmZ2tDbnMvbUFaNUJ0clpJR2RPdkI4QXo3WTJtaFlpUjhGTTExamRsS0R5bzFmVVxcbmRXNC9DV3Y4S05sZ1NWRXppTDFQTXB0T1JaMmFBcm02WTE5d2Z1cGtHK0daOFRLMENBUzBOUDVBUThsMmVFWjBcXG5mYVBBbzVOUTFGc0lmMWpnSVZPcGNNMXdWUFRNcUhJOENBUUZublRIRS9DdWVvSklhUmtXa3NLQktGSE5OYzhOXFxuMHE4b0pDVkFNTUJIQW9JQkFIUndnYW1ES0l0UEV4UDJVVTE4aTBKTW0xbzN3eTRqTHBORzg3Mm96ZUtoNkJPZVxcbmE3Uk1YN2hhc2pIelRjK1l1dHlsTWY4N29ReUpjb2Y1ay82R1RlL29mTjhaM0E1d1g1RXdZUlhVOXk2YUYxS3NcXG4wTjJjR0hTK3o1eHZobUVCR0Q5a3pod0NxN0ovWUlPSXJGZ3NSTUUzbjBhRFlycTJ0TVV4YkNFbmFzcWlEZzEvXFxucEp0b3QxVDV6bTM5d3lwQTl4Rm0xL05PTHJQV21CT2xUTkkyNHpuUEErTGVRalNaTzgrMTZITTlFaG5QYko2blxcbml1R3BjR3BSdWtxV1lqUGtDQlB6WmlMUGZTcU9kYWdyMFpodlhXVnNBRzlHV0kzRy9YcEVTaFZFZndMYml1aDdcXG5UdFJPVVZ2aE1DQmZabUVJb090N2dUVmhWK2JBRUhFTFlaN01WVkVDZ2dFQWZIL2pMd3RCZ3MxM3AvRnJQeEVhXFxuSzFIcDNxa1dFVXk3SSt4ZEVGa09xMnplclh0RUl0cDRRcmRFd3dLVGZDYVNTNGlXUFBEWkl0RC9zR2tzNVJlMVxcbjI1R05XdXR4NnFUMHFEc0ZaOGQrdi85ZUtNaERpcUNwWFlMdEluQzhCUDhmeUN3WTRNWVlFNnVyQ05NQ2ZDNm5cXG4wQk1wd1FlUEVWajV5WDFqR0VpakpQQzk1bys4cE1KaFFpZHVBb1R5Y2srOTVKcnhCb3NqcGpqREFZcENTOWQ0XFxuRE43ZHhVNWMwdWEzTGNxTHlmRG9XK2FXSldTOVlzcEtyS3lSck5pYU9OcFB1VGNWNHlmUXo2aW05UkVETlZlaFxcbjFQNWhYMWQ1K0dzVzBSdHdmeVBsb0F5dXBwMGoyKzRjSXUxOWNESUdUczlOeVR5R2lZY1lxUnJVVG5EWUNqdUFcXG5wd0tDQVFBV3hReFdCek52eC9aTWRZUCtKN3k3d1Q5U2NSWGR0eTJUaWxSdHVsU0xqRmZsdW50QnFBdWU1ZVk2XFxuNWNITURqdzdPZWo4ZmhRV3QzdmIvcVBwRHl3aDl0U0tIQkdCcVl0SStzQkV2N25LajVHL051VllIWDhFbjhwb1xcbnNaU1J6YS9xcXh3Ukw2bWh6aTQ5RjhKOWRnWVhyS1M5ejlKQ2kxWUVJQlcwNWNMaVRZOWRWYjhmRW0wcjJZTThcXG5CTmY0NTRMZTRtU1pyUk40aDBuREw3TGc3TExaeXlvOUtWY3NZQ0hua0NhRlUzTUtDZU56eWRGOGF6cmdhZFNvXFxucUMzMm5MYkgxWTBTeVJoRTNRMzlZQ1VlRnpOWW85d3d5bnplZmpGdXBzcnJDcWhBT2UxZ0MrUTExMjR0Rk1adVxcbktFSHcyQUJCRU9XK01OMnZGV3BGeVpwZVR4OU5cXG4tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tIiwic2Vzc2lvbkluZGV4IjozfSx7ImtleSI6ImFwaV9rZXkiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiI0aHdpdnBKQVpJcXZwSmxBV09jdFJYQ1NnVU1sd1p1SyIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiNGh3aXZwSkFaSXF2cEpsQVdPY3RSWENTZ1VNbHdadUsiLCJzZXNzaW9uSW5kZXgiOjR9LHsia2V5IjoicnBfYXBwX2F1dGhfaGVhZGVyX3ZhbHVlIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoiU2lZNFM5enRzQTdDcHJidjUyR0ZlSTFVSkU2OCIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiU2lZNFM5enRzQTdDcHJidjUyR0ZlSTFVSkU2OCIsInNlc3Npb25JbmRleCI6NX0seyJrZXkiOiJjb25zZW50X2FwcF9hdXRoX2hlYWRlcl92YWx1ZSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IkR6S3ZWSjVRcXlaN2VOR1FvYzNuMlluSUNuZDIiLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IkR6S3ZWSjVRcXlaN2VOR1FvYzNuMlluSUNuZDIiLCJzZXNzaW9uSW5kZXgiOjZ9LHsia2V5IjoidHBwXzk2NzQ5OTg1MzVfYWNjZXNzX3Rva2VuIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI1NTI4Njk4MzRcIixcIlBhc3NwaHJhc2VcIjpcInZSSnF1MTM5ZDdkdmVyWmcrOGVXN3ZXRlNDYVNud0FXRlI2WTR0WVhqUDcvdUZTZ3R2N2sySU93QTQ3OE9XcDdaRHE0TUJZQzZoY1RJVEVybk53Z2J4Vm03Vlo4ZjNRVW5MLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJ7XCJBY2NvdW50SWRcIjpcIjU1Mjg2OTgzNFwiLFwiUGFzc3BocmFzZVwiOlwidlJKcXUxMzlkN2R2ZXJaZys4ZVc3dldGU0NhU253QVdGUjZZNHRZWGpQNy91RlNndHY3azJJT3dBNDc4T1dwN1pEcTRNQllDNmhjVElURXJuTndnYnhWbTdWWjhmM1FVbkxQV2grNEs3RVA1aS80SzBBZEdaMElLMFV3NytDN1haYzdGSGc4UlNjSWpoKzJNcUY3dnVaNDR1bWVQdmc4ZVNNNDhXUjhLNFhFPVwiLFwiUHJvdmlkZXJJZFwiOlwiYjg5MWZjM2I1MWQ1ZTdjMVwiLFwiSW0xQ2FjaGVLZXlcIjpcIno4RWxDREkzZTFzbFdMYlpzSVJVd2loeThXWkZzY3IyZFBtVGZVdWkrZ0FxUTdaaDBXUFZJWG8vTTlEdUVWek8zWGFGT3BiQjN3Yzl5aEFVaEFaaFVnPT1cIn0iLCJzZXNzaW9uSW5kZXgiOjd9LHsia2V5IjoidHBwXzk2NzQ5OTg0NTRfYWNjZXNzX3Rva2VuIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI4NTg4MDMyMDNcIixcIlBhc3NwaHJhc2VcIjpcIkpXNEhzcldNbDRISE1qbHg5QklVbnNTNXVCSmZxQWxaeTQvZVltS3drdTlVRlEvTEFDbU9HbW1YYmQ4b3lVRmIwdjc0TXhuRWYrOXpRV09BNDRBS09JdDdsS0V2UklvNU1jLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJ7XCJBY2NvdW50SWRcIjpcIjg1ODgwMzIwM1wiLFwiUGFzc3BocmFzZVwiOlwiSlc0SHNyV01sNEhITWpseDlCSVVuc1M1dUJKZnFBbFp5NC9lWW1Ld2t1OVVGUS9MQUNtT0dtbVhiZDhveVVGYjB2NzRNeG5FZis5elFXT0E0NEFLT0l0N2xLRXZSSW81TWNCNU5qdlpOQkJpaExMTzY3T3E2b0pjTHlsekNHMVplSGpMSXgxMmtSdDBuVkRzdmpDYjIxNm5GbkRiT2Y1aTFBYVhtcFN0VUhjXFx1MDAzZFwiLFwiUHJvdmlkZXJJZFwiOlwiYjg5MWZjM2I1MWQ1ZTdjMVwiLFwiSW0xQ2FjaGVLZXlcIjpcImswWU9ZV3NUdG14Z2tWWlNZcDVheStoR3p5RjJZSFNwQTZienFBNkc4N2I5a3FuK0dPL1dDcTREVGJDZEhIaGRSZkJFWGFlOFRTaEdraWk4S3VCd3dBXFx1MDAzZFxcdTAwM2RcIn0iLCJzZXNzaW9uSW5kZXgiOjh9LHsia2V5IjoiZW1pc185NjkyMTEzNjk4X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkltMUNhY2hlS2V5XCI6XCJXdWpQbEhMM0YrSnhJSlF4N0ZQRHdpY28rNlZqZURhendmN3Z5b3VrUzRvZzZGeWVlcXFJSVVKRVV1LzNEdllGSWNBRUF6cUR2TmExeTZQZjdGWDlDdz09XCIsXCJBY2Nlc3NJZGVudGl0eUd1aWRcIjpcIjc5ZTgzOTI5LS4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiSW0xQ2FjaGVLZXlcIjpcIld1alBsSEwzRitKeElKUXg3RlBEd2ljbys2VmplRGF6d2Y3dnlvdWtTNG9nNkZ5ZWVxcUlJVUpFVXUvM0R2WUZJY0FFQXpxRHZOYTF5NlBmN0ZYOUN3PT1cIixcIkFjY2Vzc0lkZW50aXR5R3VpZFwiOlwiNzllODM5MjktYWI3Ny00MjY2LWIxYjktZmM3YjgyM2MxNTI1XCJ9Iiwic2Vzc2lvbkluZGV4Ijo5fSx7ImtleSI6ImVtaXNfOTY5MjExMzYxMl9hY2Nlc3NfdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiQzhBdmF4SnRiNloyUWV6Y1J6UTNZSmtsVGVJVW1TY3pjQXoyejVra0NrOU82NDR2VWpXbS95QnNFYXpzSG1mbE9PRXUwMGVzci9sbENPaDhHNDNtY0E9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCIyMTdlZjZmMS0uLi4iLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IntcIkltMUNhY2hlS2V5XCI6XCJDOEF2YXhKdGI2WjJRZXpjUnpRM1lKa2xUZUlVbVNjemNBejJ6NWtrQ2s5TzY0NHZValdtL3lCc0VhenNIbWZsT09FdTAwZXNyL2xsQ09oOEc0M21jQT09XCIsXCJBY2Nlc3NJZGVudGl0eUd1aWRcIjpcIjIxN2VmNmYxLTFkNzAtNGE4ZS1iNzI4LTY2NDMxNmM3NTY1NFwifSIsInNlc3Npb25JbmRleCI6MTB9XQ==) + [Run In Postman](https://app.getpostman.com/run-collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45%26entityType%3Dcollection%26workspaceId%3D082e43b8-9a51-4a16-af66-0d2b233cd69c#?env%5BINT%5D=W3sia2V5IjoiY2lzMl90b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJzZXNzaW9uSW5kZXgiOjB9LHsia2V5IjoibG9naW5fdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwic2Vzc2lvbkluZGV4IjoxfSx7ImtleSI6ImFwaV9iYXNlX3VybCIsInZhbHVlIjoiaHR0cHM6Ly9pbnQuYXBpLnNlcnZpY2UubmhzLnVrL3ZhbGlkYXRlZC1yZWxhdGlvbnNoaXBzL0ZISVIvUjQiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoiZGVmYXVsdCIsInNlc3Npb25WYWx1ZSI6Imh0dHBzOi8vaW50LmFwaS5zZXJ2aWNlLm5ocy51ay92YWxpZGF0ZWQtcmVsYXRpb25zaGlwcy9GSElSL1I0IiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJodHRwczovL2ludC5hcGkuc2VydmljZS5uaHMudWsvdmFsaWRhdGVkLXJlbGF0aW9uc2hpcHMvRkhJUi9SNCIsInNlc3Npb25JbmRleCI6Mn0seyJrZXkiOiJwcml2YXRlX2tleSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6Ii0tLS0tQkVHSU4gUFJJVkFURS4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tXFxuTUlJSlFRSUJBREFOQmdrcWhraUc5dzBCQVFFRkFBU0NDU3N3Z2drbkFnRUFBb0lDQVFEVTA4YVBiVnJMUUdEd1xcbkxhNjZTWHlTc3NYU2dFVmt1eXFvV1RiRm1lZVdGVWlseXdMSzBqdWk0aXIyOVdVWnVqajZrdDVoOTBXWjBEeUpcXG5pd0lPZTliUHVZZ210dmpvUWNpVmdSdlFCeFJWWGM4SVJ5b3lFZ1dKWGVYMVF1T1RVVVhGcE9lc2VBcjlyV3l4XFxuYlU1MHpNTUxaN0RLSHdZZVBpTWRtc2hMaFBiNm1nUnBHUGl6bHhSQ1FxekRicVc4dERDNWFoWmFDeVBtcWFoSlxcbmFxaUs4MkFjaW1uTy9RZ2UxY3dSSjBrTFNndGRubUt4RlRab25uVjliSXNsMDVIa3MzN0dPektwemRLdHBQWXZcXG5hQmhoWVVGc2NuMkd4K1JsaHBqNlFnUktlcDVKQ1FzdVMxMW1CSjNhNmVWQ0V5WWt1TnR5dFlYeGlQdmFyWFZOXFxuVWRaSENLTW96Y3FKTUx6V2ZVSkFvVFhrcDFSd0VEZGw1c0x5TzlsbmZYTnR2SmJMdjhoQWpTSU9PL2NFQjhiS1xcblZlcldiOW5wSzE5eHF4UkYzRHUyYjhXcHluRzBFaWdtTStJVW5FWEI2TFVDcVlqYlY5dHozM1QwUjNQZGh4NFhcXG5GOHZLc1h2NldDWFV5VVpLTUovQVUwMnN2b2JZbVdycDkxRHRHYncvWGdKRWYwYUlVMkszWkxkVDc1eUVkT1h6XFxuKythWTVtN1YyM2xKQUI4M1N6OE9UdUFtYjJHZGNyL1dsWEVIejRucXZrNG1QUlN6c3FhVXpwVzhKcktXQUdCTFxcblNSdG1VOHVhSGdZMHlhaEZ6SDVrTTcvaGtTU0E2aHlEaWgxcXk5MEoyUTdLNENXK2xPS25kTmE2WkE4dGVTQWNcXG5ud3RweWgwVkkvcndwN01EbmVWeS9MdUNXUVNHTndJREFRQUJBb0lDQUU3N0hJZmpuRHNyZEE0TjFmYjZDSW5rXFxuWURlRE5MMXlIQjJIcGlUa3ZhWGIxaTc0ek50NTgzbTZGeG00N2NFRGM5dkJuMWVaelRHTXJycVlaTFg5VFRXZlxcbmM2QnliS0s4cnZTVWlqN0VNYzZRVnFHS3oyVHZmVENDTVRHNGxmMzR2anpmdXI0dGVsNnorazlKOGtDME1Ibk9cXG5ERFNtR0w0bWJ4K3diajVnWk11UlZxdXVBYldjRG4rY2dNS3lFRDJjWFN5aDZ4T1ZhTWhVRThqVEZTTWp1SG8rXFxuLzQ4NkpjWlRyeng2YU1nUXZYRUxzekptWGQrclZveXFPR1ZjUTVzczVaSXBLOThLSy9JVzh1bWE1dGxVbjFQZ1xcbmxTYnNqWjBEdTBlOE1oMTFyY0lLNGlSWEFaMDNmMkZiUmFJa3V4WUxxQnpFc3FWMUlZb0FyelIzZDE2N0hOajlcXG5iQmJheElXT3A0QVJqc1NQcjNyQzJlTUl0dm84eDhlY1RuaWdpZUtlYklyVXMvcTEvQTRhYmVZemJPTm9SWVhkXFxucFlHOEEweUVTR1hqQ3lHdm12Qy9ZK0NIaUpiVTVwdkpDQ1FPL1RzZUdtRHdDejZNSU5XTitzSlpaR2lOYnUyelxcbnoyRjNGVFZSeFU5UzhXUVdzYmZsRTI4MlpieVQzWDc1dU1TM2RuWU4zbWtwNTZrL0ZCZFl2ZlM4UzdFbS8zTlpcXG5OZG1LbjIvN0JweWRFWkpPUWIrSEh1Um1hbmtPWFRFZlFPWlBOUm14RVNTVlByRGlmTGlYSzhTMitZb29BdkREXFxuL2p3bzhta3FOZVVjRDk5YVlrYU5OdjRyS2g2aUYrUmZob0pvOWhxSDlRQkdrMFBmek1ucjdMNEFhTXB0ZEtXblxcbitDSy8ybkdVV3FmbWVIWWphdk5oQW9JQkFRRHNCQUhTT2hXQ0J5RUFPWTRnbm94T2dvcngyQjlHRk9SdE5qUStcXG54bTF1eGdweWprNURhVCs0QUNXWkVTL3Vza2JIU1dDblUrZTF5TVoxU3RROWZaR3BjclZqbmdGSTl0TFRtd1ZnXFxuc3JscFBqVkNpR0tUM0dzMkNDaHY2cHp5YnRjd1NEQlY1WGxFZE1ydmZFQURQRGlEQmdkNXJOUFVGYUIzSVQyY1xcbmlSRzJTelQxRkVjZjBNVDR4NzJkLzFRSG1oaFRaME9rTERJMnNITjg5V3I0a0NTK1F4TlhmNlh6c1F5Q1pwaitcXG5Pd2RJZzN1eWlSRGh4L0dtd1AwVXRic3VyUmd3S3FVWmYraWt0d1p0R2JqekMrWVpqYU1Pc1g3ZFkzYUhVMjQ3XFxudkNvRmc5bWRtZ2dXdDM3dHdSWTBsY0p6c3piMC9XNm4wM01wanlydUhOdGwrSEtSQW9JQkFRRG0yU0FIRHNscFxcbkp2TEhCeWhIL3pLZnBmNTBSUkxRQllsbzNjRnBmbHdQaG9JcitucG4zaEZnaGNseTFNeTdteFN0NFJYdmI2WlVcXG5vSDNjMldsK29jRlFsbDUrZ3BocmlNYmwvUXJSeG0vMCtpZjNwUStEYytTNWVtTkg3Wjd4ZkgwOUxnbERRZDJqXFxuVlNVeUlOejlQNndXMG5vbzlmZ2tDbnMvbUFaNUJ0clpJR2RPdkI4QXo3WTJtaFlpUjhGTTExamRsS0R5bzFmVVxcbmRXNC9DV3Y4S05sZ1NWRXppTDFQTXB0T1JaMmFBcm02WTE5d2Z1cGtHK0daOFRLMENBUzBOUDVBUThsMmVFWjBcXG5mYVBBbzVOUTFGc0lmMWpnSVZPcGNNMXdWUFRNcUhJOENBUUZublRIRS9DdWVvSklhUmtXa3NLQktGSE5OYzhOXFxuMHE4b0pDVkFNTUJIQW9JQkFIUndnYW1ES0l0UEV4UDJVVTE4aTBKTW0xbzN3eTRqTHBORzg3Mm96ZUtoNkJPZVxcbmE3Uk1YN2hhc2pIelRjK1l1dHlsTWY4N29ReUpjb2Y1ay82R1RlL29mTjhaM0E1d1g1RXdZUlhVOXk2YUYxS3NcXG4wTjJjR0hTK3o1eHZobUVCR0Q5a3pod0NxN0ovWUlPSXJGZ3NSTUUzbjBhRFlycTJ0TVV4YkNFbmFzcWlEZzEvXFxucEp0b3QxVDV6bTM5d3lwQTl4Rm0xL05PTHJQV21CT2xUTkkyNHpuUEErTGVRalNaTzgrMTZITTlFaG5QYko2blxcbml1R3BjR3BSdWtxV1lqUGtDQlB6WmlMUGZTcU9kYWdyMFpodlhXVnNBRzlHV0kzRy9YcEVTaFZFZndMYml1aDdcXG5UdFJPVVZ2aE1DQmZabUVJb090N2dUVmhWK2JBRUhFTFlaN01WVkVDZ2dFQWZIL2pMd3RCZ3MxM3AvRnJQeEVhXFxuSzFIcDNxa1dFVXk3SSt4ZEVGa09xMnplclh0RUl0cDRRcmRFd3dLVGZDYVNTNGlXUFBEWkl0RC9zR2tzNVJlMVxcbjI1R05XdXR4NnFUMHFEc0ZaOGQrdi85ZUtNaERpcUNwWFlMdEluQzhCUDhmeUN3WTRNWVlFNnVyQ05NQ2ZDNm5cXG4wQk1wd1FlUEVWajV5WDFqR0VpakpQQzk1bys4cE1KaFFpZHVBb1R5Y2srOTVKcnhCb3NqcGpqREFZcENTOWQ0XFxuRE43ZHhVNWMwdWEzTGNxTHlmRG9XK2FXSldTOVlzcEtyS3lSck5pYU9OcFB1VGNWNHlmUXo2aW05UkVETlZlaFxcbjFQNWhYMWQ1K0dzVzBSdHdmeVBsb0F5dXBwMGoyKzRjSXUxOWNESUdUczlOeVR5R2lZY1lxUnJVVG5EWUNqdUFcXG5wd0tDQVFBV3hReFdCek52eC9aTWRZUCtKN3k3d1Q5U2NSWGR0eTJUaWxSdHVsU0xqRmZsdW50QnFBdWU1ZVk2XFxuNWNITURqdzdPZWo4ZmhRV3QzdmIvcVBwRHl3aDl0U0tIQkdCcVl0SStzQkV2N25LajVHL051VllIWDhFbjhwb1xcbnNaU1J6YS9xcXh3Ukw2bWh6aTQ5RjhKOWRnWVhyS1M5ejlKQ2kxWUVJQlcwNWNMaVRZOWRWYjhmRW0wcjJZTThcXG5CTmY0NTRMZTRtU1pyUk40aDBuREw3TGc3TExaeXlvOUtWY3NZQ0hua0NhRlUzTUtDZU56eWRGOGF6cmdhZFNvXFxucUMzMm5MYkgxWTBTeVJoRTNRMzlZQ1VlRnpOWW85d3d5bnplZmpGdXBzcnJDcWhBT2UxZ0MrUTExMjR0Rk1adVxcbktFSHcyQUJCRU9XK01OMnZGV3BGeVpwZVR4OU5cXG4tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tIiwic2Vzc2lvbkluZGV4IjozfSx7ImtleSI6ImFwaV9rZXkiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiI0aHdpdnBKQVpJcXZwSmxBV09jdFJYQ1NnVU1sd1p1SyIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiNGh3aXZwSkFaSXF2cEpsQVdPY3RSWENTZ1VNbHdadUsiLCJzZXNzaW9uSW5kZXgiOjR9LHsia2V5IjoiY29uc2VudF9hcHBfYXV0aF9oZWFkZXJfdmFsdWUiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJEekt2Vko1UXF5WjdlTkdRb2MzbjJZbklDbmQyIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJEekt2Vko1UXF5WjdlTkdRb2MzbjJZbklDbmQyIiwic2Vzc2lvbkluZGV4Ijo1fSx7ImtleSI6InRwcF85Njc0OTk4NTM1X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiNTUyODY5ODM0XCIsXCJQYXNzcGhyYXNlXCI6XCJ2UkpxdTEzOWQ3ZHZlclpnKzhlVzd2V0ZTQ2FTbndBV0ZSNlk0dFlYalA3L3VGU2d0djdrMklPd0E0NzhPV3A3WkRxNE1CWUM2aGNUSVRFcm5Od2dieFZtN1ZaOGYzUVVuTC4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI1NTI4Njk4MzRcIixcIlBhc3NwaHJhc2VcIjpcInZSSnF1MTM5ZDdkdmVyWmcrOGVXN3ZXRlNDYVNud0FXRlI2WTR0WVhqUDcvdUZTZ3R2N2sySU93QTQ3OE9XcDdaRHE0TUJZQzZoY1RJVEVybk53Z2J4Vm03Vlo4ZjNRVW5MUFdoKzRLN0VQNWkvNEswQWRHWjBJSzBVdzcrQzdYWmM3RkhnOFJTY0lqaCsyTXFGN3Z1WjQ0dW1lUHZnOGVTTTQ4V1I4SzRYRT1cIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJ6OEVsQ0RJM2Uxc2xXTGJac0lSVXdpaHk4V1pGc2NyMmRQbVRmVXVpK2dBcVE3WmgwV1BWSVhvL005RHVFVnpPM1hhRk9wYkIzd2M5eWhBVWhBWmhVZz09XCJ9Iiwic2Vzc2lvbkluZGV4Ijo2fSx7ImtleSI6InRwcF85Njc0OTk4NDU0X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiODU4ODAzMjAzXCIsXCJQYXNzcGhyYXNlXCI6XCJKVzRIc3JXTWw0SEhNamx4OUJJVW5zUzV1QkpmcUFsWnk0L2VZbUt3a3U5VUZRL0xBQ21PR21tWGJkOG95VUZiMHY3NE14bkVmKzl6UVdPQTQ0QUtPSXQ3bEtFdlJJbzVNYy4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI4NTg4MDMyMDNcIixcIlBhc3NwaHJhc2VcIjpcIkpXNEhzcldNbDRISE1qbHg5QklVbnNTNXVCSmZxQWxaeTQvZVltS3drdTlVRlEvTEFDbU9HbW1YYmQ4b3lVRmIwdjc0TXhuRWYrOXpRV09BNDRBS09JdDdsS0V2UklvNU1jQjVOanZaTkJCaWhMTE82N09xNm9KY0x5bHpDRzFaZUhqTEl4MTJrUnQwblZEc3ZqQ2IyMTZuRm5EYk9mNWkxQWFYbXBTdFVIY1xcdTAwM2RcIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJrMFlPWVdzVHRteGdrVlpTWXA1YXkraEd6eUYyWUhTcEE2YnpxQTZHODdiOWtxbitHTy9XQ3E0RFRiQ2RISGhkUmZCRVhhZThUU2hHa2lpOEt1Qnd3QVxcdTAwM2RcXHUwMDNkXCJ9Iiwic2Vzc2lvbkluZGV4Ijo3fSx7ImtleSI6ImVtaXNfOTY5MjExMzY5OF9hY2Nlc3NfdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiV3VqUGxITDNGK0p4SUpReDdGUER3aWNvKzZWamVEYXp3Zjd2eW91a1M0b2c2RnllZXFxSUlVSkVVdS8zRHZZRkljQUVBenFEdk5hMXk2UGY3Rlg5Q3c9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCI3OWU4MzkyOS0uLi4iLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IntcIkltMUNhY2hlS2V5XCI6XCJXdWpQbEhMM0YrSnhJSlF4N0ZQRHdpY28rNlZqZURhendmN3Z5b3VrUzRvZzZGeWVlcXFJSVVKRVV1LzNEdllGSWNBRUF6cUR2TmExeTZQZjdGWDlDdz09XCIsXCJBY2Nlc3NJZGVudGl0eUd1aWRcIjpcIjc5ZTgzOTI5LWFiNzctNDI2Ni1iMWI5LWZjN2I4MjNjMTUyNVwifSIsInNlc3Npb25JbmRleCI6OH0seyJrZXkiOiJlbWlzXzk2OTIxMTM2MTJfYWNjZXNzX3Rva2VuIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoie1wiSW0xQ2FjaGVLZXlcIjpcIkM4QXZheEp0YjZaMlFlemNSelEzWUprbFRlSVVtU2N6Y0F6Mno1a2tDazlPNjQ0dlVqV20veUJzRWF6c0htZmxPT0V1MDBlc3IvbGxDT2g4RzQzbWNBPT1cIixcIkFjY2Vzc0lkZW50aXR5R3VpZFwiOlwiMjE3ZWY2ZjEtLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiQzhBdmF4SnRiNloyUWV6Y1J6UTNZSmtsVGVJVW1TY3pjQXoyejVra0NrOU82NDR2VWpXbS95QnNFYXpzSG1mbE9PRXUwMGVzci9sbENPaDhHNDNtY0E9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCIyMTdlZjZmMS0xZDcwLTRhOGUtYjcyOC02NjQzMTZjNzU2NTRcIn0iLCJzZXNzaW9uSW5kZXgiOjl9XQ==) ## Onboarding From 84ba86cb39979f60648840b1944234752908a945 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Mon, 1 Dec 2025 17:39:06 +0000 Subject: [PATCH 04/15] NPA-5880: Updated Postman readme --- postman/README.md | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/postman/README.md b/postman/README.md index c50c7b23..a69cf66d 100644 --- a/postman/README.md +++ b/postman/README.md @@ -1,8 +1,18 @@ -# Postman Collection +# Postman Collections -This folder contains the Postman collection for the API. +This folder contains the Sandbox and Integration Postman collections for the VRS API. > [!WARNING] > Documentation and links in this file are specific to the maintainers of this repository and are only available to NHS England staff. -To update the Postman collection follow the steps on the [How to update Postman Collection Confluence page](https://nhsd-confluence.digital.nhs.uk/pages/viewpage.action?pageId=874694621) +## Updating the collections + +To update the Postman collections follow the steps on the [How to update Postman Collection Confluence page](https://nhsd-confluence.digital.nhs.uk/pages/viewpage.action?pageId=874694621) + +## Integration collection + +The 'integration' postman collection includes requests and examples to be used by the VRS team, consumers, and external +parties to test against our INT environment. + +For details on the environment variables and authorization methods required for this environment, please see the Getting +Started section within the Postman collection itself. From 303d7f5961363d7c2bf01dfce97c857e86481f80 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Tue, 2 Dec 2025 09:44:19 +0000 Subject: [PATCH 05/15] NPA-5880: Update link indent on OAS: --- specification/validated-relationships-service-api.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/validated-relationships-service-api.yaml b/specification/validated-relationships-service-api.yaml index 83e04224..b22581e4 100644 --- a/specification/validated-relationships-service-api.yaml +++ b/specification/validated-relationships-service-api.yaml @@ -150,7 +150,7 @@ info: * is for formal integration testing * includes authorisation with NHS Login - [Run In Postman](https://app.getpostman.com/run-collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45%26entityType%3Dcollection%26workspaceId%3D082e43b8-9a51-4a16-af66-0d2b233cd69c#?env%5BINT%5D=W3sia2V5IjoiY2lzMl90b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJzZXNzaW9uSW5kZXgiOjB9LHsia2V5IjoibG9naW5fdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwic2Vzc2lvbkluZGV4IjoxfSx7ImtleSI6ImFwaV9iYXNlX3VybCIsInZhbHVlIjoiaHR0cHM6Ly9pbnQuYXBpLnNlcnZpY2UubmhzLnVrL3ZhbGlkYXRlZC1yZWxhdGlvbnNoaXBzL0ZISVIvUjQiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoiZGVmYXVsdCIsInNlc3Npb25WYWx1ZSI6Imh0dHBzOi8vaW50LmFwaS5zZXJ2aWNlLm5ocy51ay92YWxpZGF0ZWQtcmVsYXRpb25zaGlwcy9GSElSL1I0IiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJodHRwczovL2ludC5hcGkuc2VydmljZS5uaHMudWsvdmFsaWRhdGVkLXJlbGF0aW9uc2hpcHMvRkhJUi9SNCIsInNlc3Npb25JbmRleCI6Mn0seyJrZXkiOiJwcml2YXRlX2tleSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6Ii0tLS0tQkVHSU4gUFJJVkFURS4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tXFxuTUlJSlFRSUJBREFOQmdrcWhraUc5dzBCQVFFRkFBU0NDU3N3Z2drbkFnRUFBb0lDQVFEVTA4YVBiVnJMUUdEd1xcbkxhNjZTWHlTc3NYU2dFVmt1eXFvV1RiRm1lZVdGVWlseXdMSzBqdWk0aXIyOVdVWnVqajZrdDVoOTBXWjBEeUpcXG5pd0lPZTliUHVZZ210dmpvUWNpVmdSdlFCeFJWWGM4SVJ5b3lFZ1dKWGVYMVF1T1RVVVhGcE9lc2VBcjlyV3l4XFxuYlU1MHpNTUxaN0RLSHdZZVBpTWRtc2hMaFBiNm1nUnBHUGl6bHhSQ1FxekRicVc4dERDNWFoWmFDeVBtcWFoSlxcbmFxaUs4MkFjaW1uTy9RZ2UxY3dSSjBrTFNndGRubUt4RlRab25uVjliSXNsMDVIa3MzN0dPektwemRLdHBQWXZcXG5hQmhoWVVGc2NuMkd4K1JsaHBqNlFnUktlcDVKQ1FzdVMxMW1CSjNhNmVWQ0V5WWt1TnR5dFlYeGlQdmFyWFZOXFxuVWRaSENLTW96Y3FKTUx6V2ZVSkFvVFhrcDFSd0VEZGw1c0x5TzlsbmZYTnR2SmJMdjhoQWpTSU9PL2NFQjhiS1xcblZlcldiOW5wSzE5eHF4UkYzRHUyYjhXcHluRzBFaWdtTStJVW5FWEI2TFVDcVlqYlY5dHozM1QwUjNQZGh4NFhcXG5GOHZLc1h2NldDWFV5VVpLTUovQVUwMnN2b2JZbVdycDkxRHRHYncvWGdKRWYwYUlVMkszWkxkVDc1eUVkT1h6XFxuKythWTVtN1YyM2xKQUI4M1N6OE9UdUFtYjJHZGNyL1dsWEVIejRucXZrNG1QUlN6c3FhVXpwVzhKcktXQUdCTFxcblNSdG1VOHVhSGdZMHlhaEZ6SDVrTTcvaGtTU0E2aHlEaWgxcXk5MEoyUTdLNENXK2xPS25kTmE2WkE4dGVTQWNcXG5ud3RweWgwVkkvcndwN01EbmVWeS9MdUNXUVNHTndJREFRQUJBb0lDQUU3N0hJZmpuRHNyZEE0TjFmYjZDSW5rXFxuWURlRE5MMXlIQjJIcGlUa3ZhWGIxaTc0ek50NTgzbTZGeG00N2NFRGM5dkJuMWVaelRHTXJycVlaTFg5VFRXZlxcbmM2QnliS0s4cnZTVWlqN0VNYzZRVnFHS3oyVHZmVENDTVRHNGxmMzR2anpmdXI0dGVsNnorazlKOGtDME1Ibk9cXG5ERFNtR0w0bWJ4K3diajVnWk11UlZxdXVBYldjRG4rY2dNS3lFRDJjWFN5aDZ4T1ZhTWhVRThqVEZTTWp1SG8rXFxuLzQ4NkpjWlRyeng2YU1nUXZYRUxzekptWGQrclZveXFPR1ZjUTVzczVaSXBLOThLSy9JVzh1bWE1dGxVbjFQZ1xcbmxTYnNqWjBEdTBlOE1oMTFyY0lLNGlSWEFaMDNmMkZiUmFJa3V4WUxxQnpFc3FWMUlZb0FyelIzZDE2N0hOajlcXG5iQmJheElXT3A0QVJqc1NQcjNyQzJlTUl0dm84eDhlY1RuaWdpZUtlYklyVXMvcTEvQTRhYmVZemJPTm9SWVhkXFxucFlHOEEweUVTR1hqQ3lHdm12Qy9ZK0NIaUpiVTVwdkpDQ1FPL1RzZUdtRHdDejZNSU5XTitzSlpaR2lOYnUyelxcbnoyRjNGVFZSeFU5UzhXUVdzYmZsRTI4MlpieVQzWDc1dU1TM2RuWU4zbWtwNTZrL0ZCZFl2ZlM4UzdFbS8zTlpcXG5OZG1LbjIvN0JweWRFWkpPUWIrSEh1Um1hbmtPWFRFZlFPWlBOUm14RVNTVlByRGlmTGlYSzhTMitZb29BdkREXFxuL2p3bzhta3FOZVVjRDk5YVlrYU5OdjRyS2g2aUYrUmZob0pvOWhxSDlRQkdrMFBmek1ucjdMNEFhTXB0ZEtXblxcbitDSy8ybkdVV3FmbWVIWWphdk5oQW9JQkFRRHNCQUhTT2hXQ0J5RUFPWTRnbm94T2dvcngyQjlHRk9SdE5qUStcXG54bTF1eGdweWprNURhVCs0QUNXWkVTL3Vza2JIU1dDblUrZTF5TVoxU3RROWZaR3BjclZqbmdGSTl0TFRtd1ZnXFxuc3JscFBqVkNpR0tUM0dzMkNDaHY2cHp5YnRjd1NEQlY1WGxFZE1ydmZFQURQRGlEQmdkNXJOUFVGYUIzSVQyY1xcbmlSRzJTelQxRkVjZjBNVDR4NzJkLzFRSG1oaFRaME9rTERJMnNITjg5V3I0a0NTK1F4TlhmNlh6c1F5Q1pwaitcXG5Pd2RJZzN1eWlSRGh4L0dtd1AwVXRic3VyUmd3S3FVWmYraWt0d1p0R2JqekMrWVpqYU1Pc1g3ZFkzYUhVMjQ3XFxudkNvRmc5bWRtZ2dXdDM3dHdSWTBsY0p6c3piMC9XNm4wM01wanlydUhOdGwrSEtSQW9JQkFRRG0yU0FIRHNscFxcbkp2TEhCeWhIL3pLZnBmNTBSUkxRQllsbzNjRnBmbHdQaG9JcitucG4zaEZnaGNseTFNeTdteFN0NFJYdmI2WlVcXG5vSDNjMldsK29jRlFsbDUrZ3BocmlNYmwvUXJSeG0vMCtpZjNwUStEYytTNWVtTkg3Wjd4ZkgwOUxnbERRZDJqXFxuVlNVeUlOejlQNndXMG5vbzlmZ2tDbnMvbUFaNUJ0clpJR2RPdkI4QXo3WTJtaFlpUjhGTTExamRsS0R5bzFmVVxcbmRXNC9DV3Y4S05sZ1NWRXppTDFQTXB0T1JaMmFBcm02WTE5d2Z1cGtHK0daOFRLMENBUzBOUDVBUThsMmVFWjBcXG5mYVBBbzVOUTFGc0lmMWpnSVZPcGNNMXdWUFRNcUhJOENBUUZublRIRS9DdWVvSklhUmtXa3NLQktGSE5OYzhOXFxuMHE4b0pDVkFNTUJIQW9JQkFIUndnYW1ES0l0UEV4UDJVVTE4aTBKTW0xbzN3eTRqTHBORzg3Mm96ZUtoNkJPZVxcbmE3Uk1YN2hhc2pIelRjK1l1dHlsTWY4N29ReUpjb2Y1ay82R1RlL29mTjhaM0E1d1g1RXdZUlhVOXk2YUYxS3NcXG4wTjJjR0hTK3o1eHZobUVCR0Q5a3pod0NxN0ovWUlPSXJGZ3NSTUUzbjBhRFlycTJ0TVV4YkNFbmFzcWlEZzEvXFxucEp0b3QxVDV6bTM5d3lwQTl4Rm0xL05PTHJQV21CT2xUTkkyNHpuUEErTGVRalNaTzgrMTZITTlFaG5QYko2blxcbml1R3BjR3BSdWtxV1lqUGtDQlB6WmlMUGZTcU9kYWdyMFpodlhXVnNBRzlHV0kzRy9YcEVTaFZFZndMYml1aDdcXG5UdFJPVVZ2aE1DQmZabUVJb090N2dUVmhWK2JBRUhFTFlaN01WVkVDZ2dFQWZIL2pMd3RCZ3MxM3AvRnJQeEVhXFxuSzFIcDNxa1dFVXk3SSt4ZEVGa09xMnplclh0RUl0cDRRcmRFd3dLVGZDYVNTNGlXUFBEWkl0RC9zR2tzNVJlMVxcbjI1R05XdXR4NnFUMHFEc0ZaOGQrdi85ZUtNaERpcUNwWFlMdEluQzhCUDhmeUN3WTRNWVlFNnVyQ05NQ2ZDNm5cXG4wQk1wd1FlUEVWajV5WDFqR0VpakpQQzk1bys4cE1KaFFpZHVBb1R5Y2srOTVKcnhCb3NqcGpqREFZcENTOWQ0XFxuRE43ZHhVNWMwdWEzTGNxTHlmRG9XK2FXSldTOVlzcEtyS3lSck5pYU9OcFB1VGNWNHlmUXo2aW05UkVETlZlaFxcbjFQNWhYMWQ1K0dzVzBSdHdmeVBsb0F5dXBwMGoyKzRjSXUxOWNESUdUczlOeVR5R2lZY1lxUnJVVG5EWUNqdUFcXG5wd0tDQVFBV3hReFdCek52eC9aTWRZUCtKN3k3d1Q5U2NSWGR0eTJUaWxSdHVsU0xqRmZsdW50QnFBdWU1ZVk2XFxuNWNITURqdzdPZWo4ZmhRV3QzdmIvcVBwRHl3aDl0U0tIQkdCcVl0SStzQkV2N25LajVHL051VllIWDhFbjhwb1xcbnNaU1J6YS9xcXh3Ukw2bWh6aTQ5RjhKOWRnWVhyS1M5ejlKQ2kxWUVJQlcwNWNMaVRZOWRWYjhmRW0wcjJZTThcXG5CTmY0NTRMZTRtU1pyUk40aDBuREw3TGc3TExaeXlvOUtWY3NZQ0hua0NhRlUzTUtDZU56eWRGOGF6cmdhZFNvXFxucUMzMm5MYkgxWTBTeVJoRTNRMzlZQ1VlRnpOWW85d3d5bnplZmpGdXBzcnJDcWhBT2UxZ0MrUTExMjR0Rk1adVxcbktFSHcyQUJCRU9XK01OMnZGV3BGeVpwZVR4OU5cXG4tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tIiwic2Vzc2lvbkluZGV4IjozfSx7ImtleSI6ImFwaV9rZXkiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiI0aHdpdnBKQVpJcXZwSmxBV09jdFJYQ1NnVU1sd1p1SyIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiNGh3aXZwSkFaSXF2cEpsQVdPY3RSWENTZ1VNbHdadUsiLCJzZXNzaW9uSW5kZXgiOjR9LHsia2V5IjoiY29uc2VudF9hcHBfYXV0aF9oZWFkZXJfdmFsdWUiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJEekt2Vko1UXF5WjdlTkdRb2MzbjJZbklDbmQyIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJEekt2Vko1UXF5WjdlTkdRb2MzbjJZbklDbmQyIiwic2Vzc2lvbkluZGV4Ijo1fSx7ImtleSI6InRwcF85Njc0OTk4NTM1X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiNTUyODY5ODM0XCIsXCJQYXNzcGhyYXNlXCI6XCJ2UkpxdTEzOWQ3ZHZlclpnKzhlVzd2V0ZTQ2FTbndBV0ZSNlk0dFlYalA3L3VGU2d0djdrMklPd0E0NzhPV3A3WkRxNE1CWUM2aGNUSVRFcm5Od2dieFZtN1ZaOGYzUVVuTC4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI1NTI4Njk4MzRcIixcIlBhc3NwaHJhc2VcIjpcInZSSnF1MTM5ZDdkdmVyWmcrOGVXN3ZXRlNDYVNud0FXRlI2WTR0WVhqUDcvdUZTZ3R2N2sySU93QTQ3OE9XcDdaRHE0TUJZQzZoY1RJVEVybk53Z2J4Vm03Vlo4ZjNRVW5MUFdoKzRLN0VQNWkvNEswQWRHWjBJSzBVdzcrQzdYWmM3RkhnOFJTY0lqaCsyTXFGN3Z1WjQ0dW1lUHZnOGVTTTQ4V1I4SzRYRT1cIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJ6OEVsQ0RJM2Uxc2xXTGJac0lSVXdpaHk4V1pGc2NyMmRQbVRmVXVpK2dBcVE3WmgwV1BWSVhvL005RHVFVnpPM1hhRk9wYkIzd2M5eWhBVWhBWmhVZz09XCJ9Iiwic2Vzc2lvbkluZGV4Ijo2fSx7ImtleSI6InRwcF85Njc0OTk4NDU0X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiODU4ODAzMjAzXCIsXCJQYXNzcGhyYXNlXCI6XCJKVzRIc3JXTWw0SEhNamx4OUJJVW5zUzV1QkpmcUFsWnk0L2VZbUt3a3U5VUZRL0xBQ21PR21tWGJkOG95VUZiMHY3NE14bkVmKzl6UVdPQTQ0QUtPSXQ3bEtFdlJJbzVNYy4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI4NTg4MDMyMDNcIixcIlBhc3NwaHJhc2VcIjpcIkpXNEhzcldNbDRISE1qbHg5QklVbnNTNXVCSmZxQWxaeTQvZVltS3drdTlVRlEvTEFDbU9HbW1YYmQ4b3lVRmIwdjc0TXhuRWYrOXpRV09BNDRBS09JdDdsS0V2UklvNU1jQjVOanZaTkJCaWhMTE82N09xNm9KY0x5bHpDRzFaZUhqTEl4MTJrUnQwblZEc3ZqQ2IyMTZuRm5EYk9mNWkxQWFYbXBTdFVIY1xcdTAwM2RcIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJrMFlPWVdzVHRteGdrVlpTWXA1YXkraEd6eUYyWUhTcEE2YnpxQTZHODdiOWtxbitHTy9XQ3E0RFRiQ2RISGhkUmZCRVhhZThUU2hHa2lpOEt1Qnd3QVxcdTAwM2RcXHUwMDNkXCJ9Iiwic2Vzc2lvbkluZGV4Ijo3fSx7ImtleSI6ImVtaXNfOTY5MjExMzY5OF9hY2Nlc3NfdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiV3VqUGxITDNGK0p4SUpReDdGUER3aWNvKzZWamVEYXp3Zjd2eW91a1M0b2c2RnllZXFxSUlVSkVVdS8zRHZZRkljQUVBenFEdk5hMXk2UGY3Rlg5Q3c9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCI3OWU4MzkyOS0uLi4iLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IntcIkltMUNhY2hlS2V5XCI6XCJXdWpQbEhMM0YrSnhJSlF4N0ZQRHdpY28rNlZqZURhendmN3Z5b3VrUzRvZzZGeWVlcXFJSVVKRVV1LzNEdllGSWNBRUF6cUR2TmExeTZQZjdGWDlDdz09XCIsXCJBY2Nlc3NJZGVudGl0eUd1aWRcIjpcIjc5ZTgzOTI5LWFiNzctNDI2Ni1iMWI5LWZjN2I4MjNjMTUyNVwifSIsInNlc3Npb25JbmRleCI6OH0seyJrZXkiOiJlbWlzXzk2OTIxMTM2MTJfYWNjZXNzX3Rva2VuIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoie1wiSW0xQ2FjaGVLZXlcIjpcIkM4QXZheEp0YjZaMlFlemNSelEzWUprbFRlSVVtU2N6Y0F6Mno1a2tDazlPNjQ0dlVqV20veUJzRWF6c0htZmxPT0V1MDBlc3IvbGxDT2g4RzQzbWNBPT1cIixcIkFjY2Vzc0lkZW50aXR5R3VpZFwiOlwiMjE3ZWY2ZjEtLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiQzhBdmF4SnRiNloyUWV6Y1J6UTNZSmtsVGVJVW1TY3pjQXoyejVra0NrOU82NDR2VWpXbS95QnNFYXpzSG1mbE9PRXUwMGVzci9sbENPaDhHNDNtY0E9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCIyMTdlZjZmMS0xZDcwLTRhOGUtYjcyOC02NjQzMTZjNzU2NTRcIn0iLCJzZXNzaW9uSW5kZXgiOjl9XQ==) + [Run In Postman](https://app.getpostman.com/run-collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45%26entityType%3Dcollection%26workspaceId%3D082e43b8-9a51-4a16-af66-0d2b233cd69c#?env%5BINT%5D=W3sia2V5IjoiY2lzMl90b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJzZXNzaW9uSW5kZXgiOjB9LHsia2V5IjoibG9naW5fdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwic2Vzc2lvbkluZGV4IjoxfSx7ImtleSI6ImFwaV9iYXNlX3VybCIsInZhbHVlIjoiaHR0cHM6Ly9pbnQuYXBpLnNlcnZpY2UubmhzLnVrL3ZhbGlkYXRlZC1yZWxhdGlvbnNoaXBzL0ZISVIvUjQiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoiZGVmYXVsdCIsInNlc3Npb25WYWx1ZSI6Imh0dHBzOi8vaW50LmFwaS5zZXJ2aWNlLm5ocy51ay92YWxpZGF0ZWQtcmVsYXRpb25zaGlwcy9GSElSL1I0IiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJodHRwczovL2ludC5hcGkuc2VydmljZS5uaHMudWsvdmFsaWRhdGVkLXJlbGF0aW9uc2hpcHMvRkhJUi9SNCIsInNlc3Npb25JbmRleCI6Mn0seyJrZXkiOiJwcml2YXRlX2tleSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6Ii0tLS0tQkVHSU4gUFJJVkFURS4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tXFxuTUlJSlFRSUJBREFOQmdrcWhraUc5dzBCQVFFRkFBU0NDU3N3Z2drbkFnRUFBb0lDQVFEVTA4YVBiVnJMUUdEd1xcbkxhNjZTWHlTc3NYU2dFVmt1eXFvV1RiRm1lZVdGVWlseXdMSzBqdWk0aXIyOVdVWnVqajZrdDVoOTBXWjBEeUpcXG5pd0lPZTliUHVZZ210dmpvUWNpVmdSdlFCeFJWWGM4SVJ5b3lFZ1dKWGVYMVF1T1RVVVhGcE9lc2VBcjlyV3l4XFxuYlU1MHpNTUxaN0RLSHdZZVBpTWRtc2hMaFBiNm1nUnBHUGl6bHhSQ1FxekRicVc4dERDNWFoWmFDeVBtcWFoSlxcbmFxaUs4MkFjaW1uTy9RZ2UxY3dSSjBrTFNndGRubUt4RlRab25uVjliSXNsMDVIa3MzN0dPektwemRLdHBQWXZcXG5hQmhoWVVGc2NuMkd4K1JsaHBqNlFnUktlcDVKQ1FzdVMxMW1CSjNhNmVWQ0V5WWt1TnR5dFlYeGlQdmFyWFZOXFxuVWRaSENLTW96Y3FKTUx6V2ZVSkFvVFhrcDFSd0VEZGw1c0x5TzlsbmZYTnR2SmJMdjhoQWpTSU9PL2NFQjhiS1xcblZlcldiOW5wSzE5eHF4UkYzRHUyYjhXcHluRzBFaWdtTStJVW5FWEI2TFVDcVlqYlY5dHozM1QwUjNQZGh4NFhcXG5GOHZLc1h2NldDWFV5VVpLTUovQVUwMnN2b2JZbVdycDkxRHRHYncvWGdKRWYwYUlVMkszWkxkVDc1eUVkT1h6XFxuKythWTVtN1YyM2xKQUI4M1N6OE9UdUFtYjJHZGNyL1dsWEVIejRucXZrNG1QUlN6c3FhVXpwVzhKcktXQUdCTFxcblNSdG1VOHVhSGdZMHlhaEZ6SDVrTTcvaGtTU0E2aHlEaWgxcXk5MEoyUTdLNENXK2xPS25kTmE2WkE4dGVTQWNcXG5ud3RweWgwVkkvcndwN01EbmVWeS9MdUNXUVNHTndJREFRQUJBb0lDQUU3N0hJZmpuRHNyZEE0TjFmYjZDSW5rXFxuWURlRE5MMXlIQjJIcGlUa3ZhWGIxaTc0ek50NTgzbTZGeG00N2NFRGM5dkJuMWVaelRHTXJycVlaTFg5VFRXZlxcbmM2QnliS0s4cnZTVWlqN0VNYzZRVnFHS3oyVHZmVENDTVRHNGxmMzR2anpmdXI0dGVsNnorazlKOGtDME1Ibk9cXG5ERFNtR0w0bWJ4K3diajVnWk11UlZxdXVBYldjRG4rY2dNS3lFRDJjWFN5aDZ4T1ZhTWhVRThqVEZTTWp1SG8rXFxuLzQ4NkpjWlRyeng2YU1nUXZYRUxzekptWGQrclZveXFPR1ZjUTVzczVaSXBLOThLSy9JVzh1bWE1dGxVbjFQZ1xcbmxTYnNqWjBEdTBlOE1oMTFyY0lLNGlSWEFaMDNmMkZiUmFJa3V4WUxxQnpFc3FWMUlZb0FyelIzZDE2N0hOajlcXG5iQmJheElXT3A0QVJqc1NQcjNyQzJlTUl0dm84eDhlY1RuaWdpZUtlYklyVXMvcTEvQTRhYmVZemJPTm9SWVhkXFxucFlHOEEweUVTR1hqQ3lHdm12Qy9ZK0NIaUpiVTVwdkpDQ1FPL1RzZUdtRHdDejZNSU5XTitzSlpaR2lOYnUyelxcbnoyRjNGVFZSeFU5UzhXUVdzYmZsRTI4MlpieVQzWDc1dU1TM2RuWU4zbWtwNTZrL0ZCZFl2ZlM4UzdFbS8zTlpcXG5OZG1LbjIvN0JweWRFWkpPUWIrSEh1Um1hbmtPWFRFZlFPWlBOUm14RVNTVlByRGlmTGlYSzhTMitZb29BdkREXFxuL2p3bzhta3FOZVVjRDk5YVlrYU5OdjRyS2g2aUYrUmZob0pvOWhxSDlRQkdrMFBmek1ucjdMNEFhTXB0ZEtXblxcbitDSy8ybkdVV3FmbWVIWWphdk5oQW9JQkFRRHNCQUhTT2hXQ0J5RUFPWTRnbm94T2dvcngyQjlHRk9SdE5qUStcXG54bTF1eGdweWprNURhVCs0QUNXWkVTL3Vza2JIU1dDblUrZTF5TVoxU3RROWZaR3BjclZqbmdGSTl0TFRtd1ZnXFxuc3JscFBqVkNpR0tUM0dzMkNDaHY2cHp5YnRjd1NEQlY1WGxFZE1ydmZFQURQRGlEQmdkNXJOUFVGYUIzSVQyY1xcbmlSRzJTelQxRkVjZjBNVDR4NzJkLzFRSG1oaFRaME9rTERJMnNITjg5V3I0a0NTK1F4TlhmNlh6c1F5Q1pwaitcXG5Pd2RJZzN1eWlSRGh4L0dtd1AwVXRic3VyUmd3S3FVWmYraWt0d1p0R2JqekMrWVpqYU1Pc1g3ZFkzYUhVMjQ3XFxudkNvRmc5bWRtZ2dXdDM3dHdSWTBsY0p6c3piMC9XNm4wM01wanlydUhOdGwrSEtSQW9JQkFRRG0yU0FIRHNscFxcbkp2TEhCeWhIL3pLZnBmNTBSUkxRQllsbzNjRnBmbHdQaG9JcitucG4zaEZnaGNseTFNeTdteFN0NFJYdmI2WlVcXG5vSDNjMldsK29jRlFsbDUrZ3BocmlNYmwvUXJSeG0vMCtpZjNwUStEYytTNWVtTkg3Wjd4ZkgwOUxnbERRZDJqXFxuVlNVeUlOejlQNndXMG5vbzlmZ2tDbnMvbUFaNUJ0clpJR2RPdkI4QXo3WTJtaFlpUjhGTTExamRsS0R5bzFmVVxcbmRXNC9DV3Y4S05sZ1NWRXppTDFQTXB0T1JaMmFBcm02WTE5d2Z1cGtHK0daOFRLMENBUzBOUDVBUThsMmVFWjBcXG5mYVBBbzVOUTFGc0lmMWpnSVZPcGNNMXdWUFRNcUhJOENBUUZublRIRS9DdWVvSklhUmtXa3NLQktGSE5OYzhOXFxuMHE4b0pDVkFNTUJIQW9JQkFIUndnYW1ES0l0UEV4UDJVVTE4aTBKTW0xbzN3eTRqTHBORzg3Mm96ZUtoNkJPZVxcbmE3Uk1YN2hhc2pIelRjK1l1dHlsTWY4N29ReUpjb2Y1ay82R1RlL29mTjhaM0E1d1g1RXdZUlhVOXk2YUYxS3NcXG4wTjJjR0hTK3o1eHZobUVCR0Q5a3pod0NxN0ovWUlPSXJGZ3NSTUUzbjBhRFlycTJ0TVV4YkNFbmFzcWlEZzEvXFxucEp0b3QxVDV6bTM5d3lwQTl4Rm0xL05PTHJQV21CT2xUTkkyNHpuUEErTGVRalNaTzgrMTZITTlFaG5QYko2blxcbml1R3BjR3BSdWtxV1lqUGtDQlB6WmlMUGZTcU9kYWdyMFpodlhXVnNBRzlHV0kzRy9YcEVTaFZFZndMYml1aDdcXG5UdFJPVVZ2aE1DQmZabUVJb090N2dUVmhWK2JBRUhFTFlaN01WVkVDZ2dFQWZIL2pMd3RCZ3MxM3AvRnJQeEVhXFxuSzFIcDNxa1dFVXk3SSt4ZEVGa09xMnplclh0RUl0cDRRcmRFd3dLVGZDYVNTNGlXUFBEWkl0RC9zR2tzNVJlMVxcbjI1R05XdXR4NnFUMHFEc0ZaOGQrdi85ZUtNaERpcUNwWFlMdEluQzhCUDhmeUN3WTRNWVlFNnVyQ05NQ2ZDNm5cXG4wQk1wd1FlUEVWajV5WDFqR0VpakpQQzk1bys4cE1KaFFpZHVBb1R5Y2srOTVKcnhCb3NqcGpqREFZcENTOWQ0XFxuRE43ZHhVNWMwdWEzTGNxTHlmRG9XK2FXSldTOVlzcEtyS3lSck5pYU9OcFB1VGNWNHlmUXo2aW05UkVETlZlaFxcbjFQNWhYMWQ1K0dzVzBSdHdmeVBsb0F5dXBwMGoyKzRjSXUxOWNESUdUczlOeVR5R2lZY1lxUnJVVG5EWUNqdUFcXG5wd0tDQVFBV3hReFdCek52eC9aTWRZUCtKN3k3d1Q5U2NSWGR0eTJUaWxSdHVsU0xqRmZsdW50QnFBdWU1ZVk2XFxuNWNITURqdzdPZWo4ZmhRV3QzdmIvcVBwRHl3aDl0U0tIQkdCcVl0SStzQkV2N25LajVHL051VllIWDhFbjhwb1xcbnNaU1J6YS9xcXh3Ukw2bWh6aTQ5RjhKOWRnWVhyS1M5ejlKQ2kxWUVJQlcwNWNMaVRZOWRWYjhmRW0wcjJZTThcXG5CTmY0NTRMZTRtU1pyUk40aDBuREw3TGc3TExaeXlvOUtWY3NZQ0hua0NhRlUzTUtDZU56eWRGOGF6cmdhZFNvXFxucUMzMm5MYkgxWTBTeVJoRTNRMzlZQ1VlRnpOWW85d3d5bnplZmpGdXBzcnJDcWhBT2UxZ0MrUTExMjR0Rk1adVxcbktFSHcyQUJCRU9XK01OMnZGV3BGeVpwZVR4OU5cXG4tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tIiwic2Vzc2lvbkluZGV4IjozfSx7ImtleSI6ImFwaV9rZXkiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiI0aHdpdnBKQVpJcXZwSmxBV09jdFJYQ1NnVU1sd1p1SyIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiNGh3aXZwSkFaSXF2cEpsQVdPY3RSWENTZ1VNbHdadUsiLCJzZXNzaW9uSW5kZXgiOjR9LHsia2V5IjoiY29uc2VudF9hcHBfYXV0aF9oZWFkZXJfdmFsdWUiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJEekt2Vko1UXF5WjdlTkdRb2MzbjJZbklDbmQyIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJEekt2Vko1UXF5WjdlTkdRb2MzbjJZbklDbmQyIiwic2Vzc2lvbkluZGV4Ijo1fSx7ImtleSI6InRwcF85Njc0OTk4NTM1X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiNTUyODY5ODM0XCIsXCJQYXNzcGhyYXNlXCI6XCJ2UkpxdTEzOWQ3ZHZlclpnKzhlVzd2V0ZTQ2FTbndBV0ZSNlk0dFlYalA3L3VGU2d0djdrMklPd0E0NzhPV3A3WkRxNE1CWUM2aGNUSVRFcm5Od2dieFZtN1ZaOGYzUVVuTC4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI1NTI4Njk4MzRcIixcIlBhc3NwaHJhc2VcIjpcInZSSnF1MTM5ZDdkdmVyWmcrOGVXN3ZXRlNDYVNud0FXRlI2WTR0WVhqUDcvdUZTZ3R2N2sySU93QTQ3OE9XcDdaRHE0TUJZQzZoY1RJVEVybk53Z2J4Vm03Vlo4ZjNRVW5MUFdoKzRLN0VQNWkvNEswQWRHWjBJSzBVdzcrQzdYWmM3RkhnOFJTY0lqaCsyTXFGN3Z1WjQ0dW1lUHZnOGVTTTQ4V1I4SzRYRT1cIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJ6OEVsQ0RJM2Uxc2xXTGJac0lSVXdpaHk4V1pGc2NyMmRQbVRmVXVpK2dBcVE3WmgwV1BWSVhvL005RHVFVnpPM1hhRk9wYkIzd2M5eWhBVWhBWmhVZz09XCJ9Iiwic2Vzc2lvbkluZGV4Ijo2fSx7ImtleSI6InRwcF85Njc0OTk4NDU0X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiODU4ODAzMjAzXCIsXCJQYXNzcGhyYXNlXCI6XCJKVzRIc3JXTWw0SEhNamx4OUJJVW5zUzV1QkpmcUFsWnk0L2VZbUt3a3U5VUZRL0xBQ21PR21tWGJkOG95VUZiMHY3NE14bkVmKzl6UVdPQTQ0QUtPSXQ3bEtFdlJJbzVNYy4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI4NTg4MDMyMDNcIixcIlBhc3NwaHJhc2VcIjpcIkpXNEhzcldNbDRISE1qbHg5QklVbnNTNXVCSmZxQWxaeTQvZVltS3drdTlVRlEvTEFDbU9HbW1YYmQ4b3lVRmIwdjc0TXhuRWYrOXpRV09BNDRBS09JdDdsS0V2UklvNU1jQjVOanZaTkJCaWhMTE82N09xNm9KY0x5bHpDRzFaZUhqTEl4MTJrUnQwblZEc3ZqQ2IyMTZuRm5EYk9mNWkxQWFYbXBTdFVIY1xcdTAwM2RcIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJrMFlPWVdzVHRteGdrVlpTWXA1YXkraEd6eUYyWUhTcEE2YnpxQTZHODdiOWtxbitHTy9XQ3E0RFRiQ2RISGhkUmZCRVhhZThUU2hHa2lpOEt1Qnd3QVxcdTAwM2RcXHUwMDNkXCJ9Iiwic2Vzc2lvbkluZGV4Ijo3fSx7ImtleSI6ImVtaXNfOTY5MjExMzY5OF9hY2Nlc3NfdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiV3VqUGxITDNGK0p4SUpReDdGUER3aWNvKzZWamVEYXp3Zjd2eW91a1M0b2c2RnllZXFxSUlVSkVVdS8zRHZZRkljQUVBenFEdk5hMXk2UGY3Rlg5Q3c9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCI3OWU4MzkyOS0uLi4iLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IntcIkltMUNhY2hlS2V5XCI6XCJXdWpQbEhMM0YrSnhJSlF4N0ZQRHdpY28rNlZqZURhendmN3Z5b3VrUzRvZzZGeWVlcXFJSVVKRVV1LzNEdllGSWNBRUF6cUR2TmExeTZQZjdGWDlDdz09XCIsXCJBY2Nlc3NJZGVudGl0eUd1aWRcIjpcIjc5ZTgzOTI5LWFiNzctNDI2Ni1iMWI5LWZjN2I4MjNjMTUyNVwifSIsInNlc3Npb25JbmRleCI6OH0seyJrZXkiOiJlbWlzXzk2OTIxMTM2MTJfYWNjZXNzX3Rva2VuIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoie1wiSW0xQ2FjaGVLZXlcIjpcIkM4QXZheEp0YjZaMlFlemNSelEzWUprbFRlSVVtU2N6Y0F6Mno1a2tDazlPNjQ0dlVqV20veUJzRWF6c0htZmxPT0V1MDBlc3IvbGxDT2g4RzQzbWNBPT1cIixcIkFjY2Vzc0lkZW50aXR5R3VpZFwiOlwiMjE3ZWY2ZjEtLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiQzhBdmF4SnRiNloyUWV6Y1J6UTNZSmtsVGVJVW1TY3pjQXoyejVra0NrOU82NDR2VWpXbS95QnNFYXpzSG1mbE9PRXUwMGVzci9sbENPaDhHNDNtY0E9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCIyMTdlZjZmMS0xZDcwLTRhOGUtYjcyOC02NjQzMTZjNzU2NTRcIn0iLCJzZXNzaW9uSW5kZXgiOjl9XQ==) ## Onboarding From c1f565ad71332ad96b68328db9a165bf50989832 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Tue, 2 Dec 2025 17:25:17 +0000 Subject: [PATCH 06/15] NPA-5880: Added token scripts from PVRS repo --- scripts/README.md | 141 ++++ scripts/get_app_access_token_int.py | 19 + scripts/get_cis2_access_token_int.py | 20 + scripts/get_nhs_login_access_token_int.py | 20 + scripts/poetry.lock | 978 ++++++++++++++++++++++ scripts/pyproject.toml | 13 + 6 files changed, 1191 insertions(+) create mode 100644 scripts/README.md create mode 100644 scripts/get_app_access_token_int.py create mode 100644 scripts/get_cis2_access_token_int.py create mode 100644 scripts/get_nhs_login_access_token_int.py create mode 100644 scripts/poetry.lock create mode 100644 scripts/pyproject.toml diff --git a/scripts/README.md b/scripts/README.md new file mode 100644 index 00000000..1b97f90c --- /dev/null +++ b/scripts/README.md @@ -0,0 +1,141 @@ +# How to run Scripts + +## First Steps + +### Install packages + +The tooling we use to manage our packages in poetry so this needs to be installed on your local machine in order to run the scripts. + +Then run the following command in the scripts directory + +``` +poetry install +``` + +## Script Specific + +### Get CIS2 Access Token for Int Environment + +#### Set Environment Variables + +You will require the following environment variables in order to run the script: + +``` +export APIGEE_ENVIRONMENT=int +export APPLICATION_CLIENT_ID={application_client_id} +export APPLICATION_CLIENT_SECRET={application_client_secret} +``` + +#### Select an identifier + +There are a different levels of authenticator assurance levels eg. AAL3. +For VRS CIS2 users are only accessible to access selected APIs. +Please find a list of test users detailed in this page: +https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation/testing-apis-with-our-mock-authorisation-service#test-users-for-cis2-authentication +This can be used to select your identifier for the next step. +i.e. 656005750108 to test with a CIS2 user with AAL3 authenticator assurance level. + +#### Run the script + +Then run the following command in the scripts directory + +``` +poetry run python3 get_cis2_access_token_int.py +``` + +You will be prompted to "Enter an identifier: " + +Enter the identifier selected in previous step eg. 656005750108 + +In your terminal you should see a response that includes an access token + +e.g. + +``` +{'access_token': 'EFFs3EeT0SZbF2J14LvM93vVDTaA', 'expires_in': '599', 'refresh_token': 'BDEcXjJI36DJA8Dlw8wS0jCuYJJqC8tK', 'refresh_token_expires_in': '43199', 'refresh_count': '0', 'token_type': 'Bearer'} +``` + +### Get NHS Login Access Token for Int Environment + +#### Set Environment Variables + +You will require the following environment variables in order to run the script: + +``` +export APIGEE_ENVIRONMENT=int +export APPLICATION_CLIENT_ID={application_client_id} +export APPLICATION_CLIENT_SECRET={application_client_secret} +``` + +#### Select an identifier + +There are a different identity proofing levels eg. p9. +For VRS p9 users are only accessible to access selected APIs. +Please find a list of test users detailed in this page: +https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation/testing-apis-with-our-mock-authorisation-service#test-users-for-nhs-login +This can be used to select your identifier for the next step. +i.e. 9912003071 to test with a p9 user. + +#### Run the script + +Then run the following command in the scripts directory + +``` +poetry run python3 get_nhs_login_access_token_int.py +``` + +You will be prompted to "Enter an identifier: " + +Enter the identifier selected in previous step eg. 9912003071 + +In your terminal you should see a response that includes an access token + +e.g. + +``` +{'access_token': 'EFFs3EeT0SZbF2J14LvM93vVDTaA', 'expires_in': '599', 'refresh_token': 'BDEcXjJI36DJA8Dlw8wS0jCuYJJqC8tK', 'refresh_token_expires_in': '43199', 'refresh_count': '0', 'token_type': 'Bearer'} +``` + +### Get App Restricted Access Token for Int Environment + +Application restricted authentication is when a system is trying to access an API rather than a person. For example the Validated Relationship Service (VRS) will need an app restricted access token in order to call the Personal Demographic Service (PDS) API. +https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation#application-restricted-apis + +#### Set Environment Variables + +You will require the following environment variables in order to run the script: + +``` +export APIGEE_ENVIRONMENT=int +export APPLICATION_CLIENT_ID={vrs_application_client_id} +export APPLICATION_CLIENT_KID={vrs_application_client_secret} +export APPLICATION_CLIENT_PRIVATE_KEY={vrs_application_client_private_key} +``` + +Note with VRS_CLIENT_PRIVATE_KEY it needs to be wrapped in double quotation marks otherwise there can be formatting errors + +#### Run the script + +Then run the following command in the scripts directory + +``` +poetry run python3 get_app_access_token_int.py +``` + +In your terminal you should see a response that includes an access token + +e.g. + +``` +{'access_token': 'EFFs3EeT0SZbF2J14LvM93vVDTaA', 'expires_in': '599', 'refresh_token': 'BDEcXjJI36DJA8Dlw8wS0jCuYJJqC8tK', 'refresh_token_expires_in': '43199', 'refresh_count': '0', 'token_type': 'Bearer'} +``` + +### Trouble Shooting + +If you have issues with the script, a good place to start is to ensure the environment variables are accessible to poetry. This can be achieved by installing the poetry dotenv plugin + +Run this command + +``` +poetry plugin add poetry-dotenv-plugin +``` diff --git a/scripts/get_app_access_token_int.py b/scripts/get_app_access_token_int.py new file mode 100644 index 00000000..68999647 --- /dev/null +++ b/scripts/get_app_access_token_int.py @@ -0,0 +1,19 @@ +from os import getenv +from pytest_nhsd_apim.identity_service import ( + ClientCredentialsConfig, + ClientCredentialsAuthenticator, +) + +client_id = getenv("APPLICATION_CLIENT_ID") +kid = getenv("APPLICATION_CLIENT_KID") +private_key = getenv("APPLICATION_CLIENT_PRIVATE_KEY").replace("\\n", "\n") +config = ClientCredentialsConfig( + environment=getenv("APIGEE_ENVIRONMENT"), + identity_service_base_url=f"https://{getenv("APIGEE_ENVIRONMENT")}.api.service.nhs.uk/oauth2-mock", + client_id=client_id, + jwt_private_key=private_key, + jwt_kid=kid, +) + +authenticator = ClientCredentialsAuthenticator(config=config) +print(authenticator.get_token()) diff --git a/scripts/get_cis2_access_token_int.py b/scripts/get_cis2_access_token_int.py new file mode 100644 index 00000000..cf1ab35f --- /dev/null +++ b/scripts/get_cis2_access_token_int.py @@ -0,0 +1,20 @@ +from os import getenv +from pytest_nhsd_apim.identity_service import ( + AuthorizationCodeConfig, + AuthorizationCodeAuthenticator, +) + +identifier = str(input("Enter an identifier: ")) +scope = "nhs-cis2" +config = AuthorizationCodeConfig( + environment=getenv("APIGEE_ENVIRONMENT"), + identity_service_base_url=f"https://{getenv("APIGEE_ENVIRONMENT")}.api.service.nhs.uk/oauth2-mock", + callback_url="https://oauth.pstmn.io/v1/browser-callback", + client_id=getenv("APPLICATION_CLIENT_ID"), + client_secret=getenv("APPLICATION_CLIENT_SECRET"), + scope=scope, + login_form={"username": identifier}, +) + +authenticator = AuthorizationCodeAuthenticator(config=config) +print(authenticator.get_token()) diff --git a/scripts/get_nhs_login_access_token_int.py b/scripts/get_nhs_login_access_token_int.py new file mode 100644 index 00000000..54c517fd --- /dev/null +++ b/scripts/get_nhs_login_access_token_int.py @@ -0,0 +1,20 @@ +from os import getenv +from pytest_nhsd_apim.identity_service import ( + AuthorizationCodeConfig, + AuthorizationCodeAuthenticator, +) + +identifier = str(input("Enter an identifier: ")) +scope = "nhs-login" +config = AuthorizationCodeConfig( + environment=getenv("APIGEE_ENVIRONMENT"), + identity_service_base_url=f"https://{getenv("APIGEE_ENVIRONMENT")}.api.service.nhs.uk/oauth2-mock", + callback_url="https://oauth.pstmn.io/v1/browser-callback", + client_id=getenv("APPLICATION_CLIENT_ID"), + client_secret=getenv("APPLICATION_CLIENT_SECRET"), + scope=scope, + login_form={"username": identifier}, +) + +authenticator = AuthorizationCodeAuthenticator(config=config) +print(authenticator.get_token()) diff --git a/scripts/poetry.lock b/scripts/poetry.lock new file mode 100644 index 00000000..8a3b114b --- /dev/null +++ b/scripts/poetry.lock @@ -0,0 +1,978 @@ +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. + +[[package]] +name = "annotated-types" +version = "0.7.0" +description = "Reusable constraint types to use with typing.Annotated" +optional = false +python-versions = ">=3.8" +files = [ + {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"}, + {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, +] + +[[package]] +name = "authlib" +version = "1.6.5" +description = "The ultimate Python library in building OAuth and OpenID Connect servers and clients." +optional = false +python-versions = ">=3.9" +files = [ + {file = "authlib-1.6.5-py2.py3-none-any.whl", hash = "sha256:3e0e0507807f842b02175507bdee8957a1d5707fd4afb17c32fb43fee90b6e3a"}, + {file = "authlib-1.6.5.tar.gz", hash = "sha256:6aaf9c79b7cc96c900f0b284061691c5d4e61221640a948fe690b556a6d6d10b"}, +] + +[package.dependencies] +cryptography = "*" + +[[package]] +name = "certifi" +version = "2025.11.12" +description = "Python package for providing Mozilla's CA Bundle." +optional = false +python-versions = ">=3.7" +files = [ + {file = "certifi-2025.11.12-py3-none-any.whl", hash = "sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b"}, + {file = "certifi-2025.11.12.tar.gz", hash = "sha256:d8ab5478f2ecd78af242878415affce761ca6bc54a22a27e026d7c25357c3316"}, +] + +[[package]] +name = "cffi" +version = "2.0.0" +description = "Foreign Function Interface for Python calling C code." +optional = false +python-versions = ">=3.9" +files = [ + {file = "cffi-2.0.0-cp310-cp310-macosx_10_13_x86_64.whl", hash = "sha256:0cf2d91ecc3fcc0625c2c530fe004f82c110405f101548512cce44322fa8ac44"}, + {file = "cffi-2.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f73b96c41e3b2adedc34a7356e64c8eb96e03a3782b535e043a986276ce12a49"}, + {file = "cffi-2.0.0-cp310-cp310-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:53f77cbe57044e88bbd5ed26ac1d0514d2acf0591dd6bb02a3ae37f76811b80c"}, + {file = "cffi-2.0.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:3e837e369566884707ddaf85fc1744b47575005c0a229de3327f8f9a20f4efeb"}, + {file = "cffi-2.0.0-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:5eda85d6d1879e692d546a078b44251cdd08dd1cfb98dfb77b670c97cee49ea0"}, + {file = "cffi-2.0.0-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:9332088d75dc3241c702d852d4671613136d90fa6881da7d770a483fd05248b4"}, + {file = "cffi-2.0.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:fc7de24befaeae77ba923797c7c87834c73648a05a4bde34b3b7e5588973a453"}, + {file = "cffi-2.0.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:cf364028c016c03078a23b503f02058f1814320a56ad535686f90565636a9495"}, + {file = "cffi-2.0.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e11e82b744887154b182fd3e7e8512418446501191994dbf9c9fc1f32cc8efd5"}, + {file = "cffi-2.0.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:8ea985900c5c95ce9db1745f7933eeef5d314f0565b27625d9a10ec9881e1bfb"}, + {file = "cffi-2.0.0-cp310-cp310-win32.whl", hash = "sha256:1f72fb8906754ac8a2cc3f9f5aaa298070652a0ffae577e0ea9bd480dc3c931a"}, + {file = "cffi-2.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:b18a3ed7d5b3bd8d9ef7a8cb226502c6bf8308df1525e1cc676c3680e7176739"}, + {file = "cffi-2.0.0-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:b4c854ef3adc177950a8dfc81a86f5115d2abd545751a304c5bcf2c2c7283cfe"}, + {file = "cffi-2.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2de9a304e27f7596cd03d16f1b7c72219bd944e99cc52b84d0145aefb07cbd3c"}, + {file = "cffi-2.0.0-cp311-cp311-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:baf5215e0ab74c16e2dd324e8ec067ef59e41125d3eade2b863d294fd5035c92"}, + {file = "cffi-2.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:730cacb21e1bdff3ce90babf007d0a0917cc3e6492f336c2f0134101e0944f93"}, + {file = "cffi-2.0.0-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:6824f87845e3396029f3820c206e459ccc91760e8fa24422f8b0c3d1731cbec5"}, + {file = "cffi-2.0.0-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:9de40a7b0323d889cf8d23d1ef214f565ab154443c42737dfe52ff82cf857664"}, + {file = "cffi-2.0.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8941aaadaf67246224cee8c3803777eed332a19d909b47e29c9842ef1e79ac26"}, + {file = "cffi-2.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:a05d0c237b3349096d3981b727493e22147f934b20f6f125a3eba8f994bec4a9"}, + {file = "cffi-2.0.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:94698a9c5f91f9d138526b48fe26a199609544591f859c870d477351dc7b2414"}, + {file = "cffi-2.0.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:5fed36fccc0612a53f1d4d9a816b50a36702c28a2aa880cb8a122b3466638743"}, + {file = "cffi-2.0.0-cp311-cp311-win32.whl", hash = "sha256:c649e3a33450ec82378822b3dad03cc228b8f5963c0c12fc3b1e0ab940f768a5"}, + {file = "cffi-2.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:66f011380d0e49ed280c789fbd08ff0d40968ee7b665575489afa95c98196ab5"}, + {file = "cffi-2.0.0-cp311-cp311-win_arm64.whl", hash = "sha256:c6638687455baf640e37344fe26d37c404db8b80d037c3d29f58fe8d1c3b194d"}, + {file = "cffi-2.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:6d02d6655b0e54f54c4ef0b94eb6be0607b70853c45ce98bd278dc7de718be5d"}, + {file = "cffi-2.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8eca2a813c1cb7ad4fb74d368c2ffbbb4789d377ee5bb8df98373c2cc0dee76c"}, + {file = "cffi-2.0.0-cp312-cp312-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:21d1152871b019407d8ac3985f6775c079416c282e431a4da6afe7aefd2bccbe"}, + {file = "cffi-2.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:b21e08af67b8a103c71a250401c78d5e0893beff75e28c53c98f4de42f774062"}, + {file = "cffi-2.0.0-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:1e3a615586f05fc4065a8b22b8152f0c1b00cdbc60596d187c2a74f9e3036e4e"}, + {file = "cffi-2.0.0-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:81afed14892743bbe14dacb9e36d9e0e504cd204e0b165062c488942b9718037"}, + {file = "cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3e17ed538242334bf70832644a32a7aae3d83b57567f9fd60a26257e992b79ba"}, + {file = "cffi-2.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3925dd22fa2b7699ed2617149842d2e6adde22b262fcbfada50e3d195e4b3a94"}, + {file = "cffi-2.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2c8f814d84194c9ea681642fd164267891702542f028a15fc97d4674b6206187"}, + {file = "cffi-2.0.0-cp312-cp312-win32.whl", hash = "sha256:da902562c3e9c550df360bfa53c035b2f241fed6d9aef119048073680ace4a18"}, + {file = "cffi-2.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:da68248800ad6320861f129cd9c1bf96ca849a2771a59e0344e88681905916f5"}, + {file = "cffi-2.0.0-cp312-cp312-win_arm64.whl", hash = "sha256:4671d9dd5ec934cb9a73e7ee9676f9362aba54f7f34910956b84d727b0d73fb6"}, + {file = "cffi-2.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:00bdf7acc5f795150faa6957054fbbca2439db2f775ce831222b66f192f03beb"}, + {file = "cffi-2.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:45d5e886156860dc35862657e1494b9bae8dfa63bf56796f2fb56e1679fc0bca"}, + {file = "cffi-2.0.0-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b"}, + {file = "cffi-2.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b"}, + {file = "cffi-2.0.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2"}, + {file = "cffi-2.0.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3"}, + {file = "cffi-2.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26"}, + {file = "cffi-2.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c"}, + {file = "cffi-2.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b"}, + {file = "cffi-2.0.0-cp313-cp313-win32.whl", hash = "sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27"}, + {file = "cffi-2.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75"}, + {file = "cffi-2.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91"}, + {file = "cffi-2.0.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fc33c5141b55ed366cfaad382df24fe7dcbc686de5be719b207bb248e3053dc5"}, + {file = "cffi-2.0.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c654de545946e0db659b3400168c9ad31b5d29593291482c43e3564effbcee13"}, + {file = "cffi-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b"}, + {file = "cffi-2.0.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c"}, + {file = "cffi-2.0.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef"}, + {file = "cffi-2.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775"}, + {file = "cffi-2.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205"}, + {file = "cffi-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1"}, + {file = "cffi-2.0.0-cp314-cp314-win32.whl", hash = "sha256:087067fa8953339c723661eda6b54bc98c5625757ea62e95eb4898ad5e776e9f"}, + {file = "cffi-2.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25"}, + {file = "cffi-2.0.0-cp314-cp314-win_arm64.whl", hash = "sha256:dbd5c7a25a7cb98f5ca55d258b103a2054f859a46ae11aaf23134f9cc0d356ad"}, + {file = "cffi-2.0.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:9a67fc9e8eb39039280526379fb3a70023d77caec1852002b4da7e8b270c4dd9"}, + {file = "cffi-2.0.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7a66c7204d8869299919db4d5069a82f1561581af12b11b3c9f48c584eb8743d"}, + {file = "cffi-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c"}, + {file = "cffi-2.0.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8"}, + {file = "cffi-2.0.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc"}, + {file = "cffi-2.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592"}, + {file = "cffi-2.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512"}, + {file = "cffi-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4"}, + {file = "cffi-2.0.0-cp314-cp314t-win32.whl", hash = "sha256:1fc9ea04857caf665289b7a75923f2c6ed559b8298a1b8c49e59f7dd95c8481e"}, + {file = "cffi-2.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6"}, + {file = "cffi-2.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:0a1527a803f0a659de1af2e1fd700213caba79377e27e4693648c2923da066f9"}, + {file = "cffi-2.0.0-cp39-cp39-macosx_10_13_x86_64.whl", hash = "sha256:fe562eb1a64e67dd297ccc4f5addea2501664954f2692b69a76449ec7913ecbf"}, + {file = "cffi-2.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:de8dad4425a6ca6e4e5e297b27b5c824ecc7581910bf9aee86cb6835e6812aa7"}, + {file = "cffi-2.0.0-cp39-cp39-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:4647afc2f90d1ddd33441e5b0e85b16b12ddec4fca55f0d9671fef036ecca27c"}, + {file = "cffi-2.0.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:3f4d46d8b35698056ec29bca21546e1551a205058ae1a181d871e278b0b28165"}, + {file = "cffi-2.0.0-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:e6e73b9e02893c764e7e8d5bb5ce277f1a009cd5243f8228f75f842bf937c534"}, + {file = "cffi-2.0.0-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:cb527a79772e5ef98fb1d700678fe031e353e765d1ca2d409c92263c6d43e09f"}, + {file = "cffi-2.0.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:61d028e90346df14fedc3d1e5441df818d095f3b87d286825dfcbd6459b7ef63"}, + {file = "cffi-2.0.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:0f6084a0ea23d05d20c3edcda20c3d006f9b6f3fefeac38f59262e10cef47ee2"}, + {file = "cffi-2.0.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:1cd13c99ce269b3ed80b417dcd591415d3372bcac067009b6e0f59c7d4015e65"}, + {file = "cffi-2.0.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:89472c9762729b5ae1ad974b777416bfda4ac5642423fa93bd57a09204712322"}, + {file = "cffi-2.0.0-cp39-cp39-win32.whl", hash = "sha256:2081580ebb843f759b9f617314a24ed5738c51d2aee65d31e02f6f7a2b97707a"}, + {file = "cffi-2.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:b882b3df248017dba09d6b16defe9b5c407fe32fc7c65a9c69798e6175601be9"}, + {file = "cffi-2.0.0.tar.gz", hash = "sha256:44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529"}, +] + +[package.dependencies] +pycparser = {version = "*", markers = "implementation_name != \"PyPy\""} + +[[package]] +name = "charset-normalizer" +version = "3.4.4" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +optional = false +python-versions = ">=3.7" +files = [ + {file = "charset_normalizer-3.4.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e824f1492727fa856dd6eda4f7cee25f8518a12f3c4a56a74e8095695089cf6d"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4bd5d4137d500351a30687c2d3971758aac9a19208fc110ccb9d7188fbe709e8"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:027f6de494925c0ab2a55eab46ae5129951638a49a34d87f4c3eda90f696b4ad"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f820802628d2694cb7e56db99213f930856014862f3fd943d290ea8438d07ca8"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:798d75d81754988d2565bff1b97ba5a44411867c0cf32b77a7e8f8d84796b10d"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d1bb833febdff5c8927f922386db610b49db6e0d4f4ee29601d71e7c2694313"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:9cd98cdc06614a2f768d2b7286d66805f94c48cde050acdbbb7db2600ab3197e"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:077fbb858e903c73f6c9db43374fd213b0b6a778106bc7032446a8e8b5b38b93"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:244bfb999c71b35de57821b8ea746b24e863398194a4014e4c76adc2bbdfeff0"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:64b55f9dce520635f018f907ff1b0df1fdc31f2795a922fb49dd14fbcdf48c84"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_riscv64.whl", hash = "sha256:faa3a41b2b66b6e50f84ae4a68c64fcd0c44355741c6374813a800cd6695db9e"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:6515f3182dbe4ea06ced2d9e8666d97b46ef4c75e326b79bb624110f122551db"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cc00f04ed596e9dc0da42ed17ac5e596c6ccba999ba6bd92b0e0aef2f170f2d6"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-win32.whl", hash = "sha256:f34be2938726fc13801220747472850852fe6b1ea75869a048d6f896838c896f"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-win_amd64.whl", hash = "sha256:a61900df84c667873b292c3de315a786dd8dac506704dea57bc957bd31e22c7d"}, + {file = "charset_normalizer-3.4.4-cp310-cp310-win_arm64.whl", hash = "sha256:cead0978fc57397645f12578bfd2d5ea9138ea0fac82b2f63f7f7c6877986a69"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6e1fcf0720908f200cd21aa4e6750a48ff6ce4afe7ff5a79a90d5ed8a08296f8"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5f819d5fe9234f9f82d75bdfa9aef3a3d72c4d24a6e57aeaebba32a704553aa0"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:a59cb51917aa591b1c4e6a43c132f0cdc3c76dbad6155df4e28ee626cc77a0a3"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:8ef3c867360f88ac904fd3f5e1f902f13307af9052646963ee08ff4f131adafc"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d9e45d7faa48ee908174d8fe84854479ef838fc6a705c9315372eacbc2f02897"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:840c25fb618a231545cbab0564a799f101b63b9901f2569faecd6b222ac72381"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ca5862d5b3928c4940729dacc329aa9102900382fea192fc5e52eb69d6093815"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d9c7f57c3d666a53421049053eaacdd14bbd0a528e2186fcb2e672effd053bb0"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:277e970e750505ed74c832b4bf75dac7476262ee2a013f5574dd49075879e161"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:31fd66405eaf47bb62e8cd575dc621c56c668f27d46a61d975a249930dd5e2a4"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:0d3d8f15c07f86e9ff82319b3d9ef6f4bf907608f53fe9d92b28ea9ae3d1fd89"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:9f7fcd74d410a36883701fafa2482a6af2ff5ba96b9a620e9e0721e28ead5569"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:ebf3e58c7ec8a8bed6d66a75d7fb37b55e5015b03ceae72a8e7c74495551e224"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-win32.whl", hash = "sha256:eecbc200c7fd5ddb9a7f16c7decb07b566c29fa2161a16cf67b8d068bd21690a"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-win_amd64.whl", hash = "sha256:5ae497466c7901d54b639cf42d5b8c1b6a4fead55215500d2f486d34db48d016"}, + {file = "charset_normalizer-3.4.4-cp311-cp311-win_arm64.whl", hash = "sha256:65e2befcd84bc6f37095f5961e68a6f077bf44946771354a28ad434c2cce0ae1"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:0a98e6759f854bd25a58a73fa88833fba3b7c491169f86ce1180c948ab3fd394"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b5b290ccc2a263e8d185130284f8501e3e36c5e02750fc6b6bdeb2e9e96f1e25"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:74bb723680f9f7a6234dcf67aea57e708ec1fbdf5699fb91dfd6f511b0a320ef"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f1e34719c6ed0b92f418c7c780480b26b5d9c50349e9a9af7d76bf757530350d"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2437418e20515acec67d86e12bf70056a33abdacb5cb1655042f6538d6b085a8"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:11d694519d7f29d6cd09f6ac70028dba10f92f6cdd059096db198c283794ac86"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ac1c4a689edcc530fc9d9aa11f5774b9e2f33f9a0c6a57864e90908f5208d30a"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:21d142cc6c0ec30d2efee5068ca36c128a30b0f2c53c1c07bd78cb6bc1d3be5f"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:5dbe56a36425d26d6cfb40ce79c314a2e4dd6211d51d6d2191c00bed34f354cc"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:5bfbb1b9acf3334612667b61bd3002196fe2a1eb4dd74d247e0f2a4d50ec9bbf"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:d055ec1e26e441f6187acf818b73564e6e6282709e9bcb5b63f5b23068356a15"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:af2d8c67d8e573d6de5bc30cdb27e9b95e49115cd9baad5ddbd1a6207aaa82a9"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:780236ac706e66881f3b7f2f32dfe90507a09e67d1d454c762cf642e6e1586e0"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-win32.whl", hash = "sha256:5833d2c39d8896e4e19b689ffc198f08ea58116bee26dea51e362ecc7cd3ed26"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-win_amd64.whl", hash = "sha256:a79cfe37875f822425b89a82333404539ae63dbdddf97f84dcbc3d339aae9525"}, + {file = "charset_normalizer-3.4.4-cp312-cp312-win_arm64.whl", hash = "sha256:376bec83a63b8021bb5c8ea75e21c4ccb86e7e45ca4eb81146091b56599b80c3"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:e1f185f86a6f3403aa2420e815904c67b2f9ebc443f045edd0de921108345794"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b39f987ae8ccdf0d2642338faf2abb1862340facc796048b604ef14919e55ed"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3162d5d8ce1bb98dd51af660f2121c55d0fa541b46dff7bb9b9f86ea1d87de72"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:81d5eb2a312700f4ecaa977a8235b634ce853200e828fbadf3a9c50bab278328"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5bd2293095d766545ec1a8f612559f6b40abc0eb18bb2f5d1171872d34036ede"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a8a8b89589086a25749f471e6a900d3f662d1d3b6e2e59dcecf787b1cc3a1894"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:bc7637e2f80d8530ee4a78e878bce464f70087ce73cf7c1caf142416923b98f1"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f8bf04158c6b607d747e93949aa60618b61312fe647a6369f88ce2ff16043490"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:554af85e960429cf30784dd47447d5125aaa3b99a6f0683589dbd27e2f45da44"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:74018750915ee7ad843a774364e13a3db91682f26142baddf775342c3f5b1133"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:c0463276121fdee9c49b98908b3a89c39be45d86d1dbaa22957e38f6321d4ce3"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:362d61fd13843997c1c446760ef36f240cf81d3ebf74ac62652aebaf7838561e"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9a26f18905b8dd5d685d6d07b0cdf98a79f3c7a918906af7cc143ea2e164c8bc"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-win32.whl", hash = "sha256:9b35f4c90079ff2e2edc5b26c0c77925e5d2d255c42c74fdb70fb49b172726ac"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-win_amd64.whl", hash = "sha256:b435cba5f4f750aa6c0a0d92c541fb79f69a387c91e61f1795227e4ed9cece14"}, + {file = "charset_normalizer-3.4.4-cp313-cp313-win_arm64.whl", hash = "sha256:542d2cee80be6f80247095cc36c418f7bddd14f4a6de45af91dfad36d817bba2"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:da3326d9e65ef63a817ecbcc0df6e94463713b754fe293eaa03da99befb9a5bd"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8af65f14dc14a79b924524b1e7fffe304517b2bff5a58bf64f30b98bbc5079eb"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:74664978bb272435107de04e36db5a9735e78232b85b77d45cfb38f758efd33e"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:752944c7ffbfdd10c074dc58ec2d5a8a4cd9493b314d367c14d24c17684ddd14"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d1f13550535ad8cff21b8d757a3257963e951d96e20ec82ab44bc64aeb62a191"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ecaae4149d99b1c9e7b88bb03e3221956f68fd6d50be2ef061b2381b61d20838"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:cb6254dc36b47a990e59e1068afacdcd02958bdcce30bb50cc1700a8b9d624a6"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c8ae8a0f02f57a6e61203a31428fa1d677cbe50c93622b4149d5c0f319c1d19e"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:47cc91b2f4dd2833fddaedd2893006b0106129d4b94fdb6af1f4ce5a9965577c"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:82004af6c302b5d3ab2cfc4cc5f29db16123b1a8417f2e25f9066f91d4411090"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:2b7d8f6c26245217bd2ad053761201e9f9680f8ce52f0fcd8d0755aeae5b2152"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:799a7a5e4fb2d5898c60b640fd4981d6a25f1c11790935a44ce38c54e985f828"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:99ae2cffebb06e6c22bdc25801d7b30f503cc87dbd283479e7b606f70aff57ec"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-win32.whl", hash = "sha256:f9d332f8c2a2fcbffe1378594431458ddbef721c1769d78e2cbc06280d8155f9"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-win_amd64.whl", hash = "sha256:8a6562c3700cce886c5be75ade4a5db4214fda19fede41d9792d100288d8f94c"}, + {file = "charset_normalizer-3.4.4-cp314-cp314-win_arm64.whl", hash = "sha256:de00632ca48df9daf77a2c65a484531649261ec9f25489917f09e455cb09ddb2"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ce8a0633f41a967713a59c4139d29110c07e826d131a316b50ce11b1d79b4f84"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:eaabd426fe94daf8fd157c32e571c85cb12e66692f15516a83a03264b08d06c3"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:c4ef880e27901b6cc782f1b95f82da9313c0eb95c3af699103088fa0ac3ce9ac"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:2aaba3b0819274cc41757a1da876f810a3e4d7b6eb25699253a4effef9e8e4af"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:778d2e08eda00f4256d7f672ca9fef386071c9202f5e4607920b86d7803387f2"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f155a433c2ec037d4e8df17d18922c3a0d9b3232a396690f17175d2946f0218d"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:a8bf8d0f749c5757af2142fe7903a9df1d2e8aa3841559b2bad34b08d0e2bcf3"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:194f08cbb32dc406d6e1aea671a68be0823673db2832b38405deba2fb0d88f63"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-musllinux_1_2_armv7l.whl", hash = "sha256:6aee717dcfead04c6eb1ce3bd29ac1e22663cdea57f943c87d1eab9a025438d7"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:cd4b7ca9984e5e7985c12bc60a6f173f3c958eae74f3ef6624bb6b26e2abbae4"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-musllinux_1_2_riscv64.whl", hash = "sha256:b7cf1017d601aa35e6bb650b6ad28652c9cd78ee6caff19f3c28d03e1c80acbf"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:e912091979546adf63357d7e2ccff9b44f026c075aeaf25a52d0e95ad2281074"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:5cb4d72eea50c8868f5288b7f7f33ed276118325c1dfd3957089f6b519e1382a"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-win32.whl", hash = "sha256:837c2ce8c5a65a2035be9b3569c684358dfbf109fd3b6969630a87535495ceaa"}, + {file = "charset_normalizer-3.4.4-cp38-cp38-win_amd64.whl", hash = "sha256:44c2a8734b333e0578090c4cd6b16f275e07aa6614ca8715e6c038e865e70576"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a9768c477b9d7bd54bc0c86dbaebdec6f03306675526c9927c0e8a04e8f94af9"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1bee1e43c28aa63cb16e5c14e582580546b08e535299b8b6158a7c9c768a1f3d"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:fd44c878ea55ba351104cb93cc85e74916eb8fa440ca7903e57575e97394f608"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:0f04b14ffe5fdc8c4933862d8306109a2c51e0704acfa35d51598eb45a1e89fc"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:cd09d08005f958f370f539f186d10aec3377d55b9eeb0d796025d4886119d76e"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4fe7859a4e3e8457458e2ff592f15ccb02f3da787fcd31e0183879c3ad4692a1"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:fa09f53c465e532f4d3db095e0c55b615f010ad81803d383195b6b5ca6cbf5f3"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:7fa17817dc5625de8a027cb8b26d9fefa3ea28c8253929b8d6649e705d2835b6"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:5947809c8a2417be3267efc979c47d76a079758166f7d43ef5ae8e9f92751f88"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:4902828217069c3c5c71094537a8e623f5d097858ac6ca8252f7b4d10b7560f1"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-musllinux_1_2_riscv64.whl", hash = "sha256:7c308f7e26e4363d79df40ca5b2be1c6ba9f02bdbccfed5abddb7859a6ce72cf"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:2c9d3c380143a1fedbff95a312aa798578371eb29da42106a29019368a475318"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:cb01158d8b88ee68f15949894ccc6712278243d95f344770fa7593fa2d94410c"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-win32.whl", hash = "sha256:2677acec1a2f8ef614c6888b5b4ae4060cc184174a938ed4e8ef690e15d3e505"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-win_amd64.whl", hash = "sha256:f8e160feb2aed042cd657a72acc0b481212ed28b1b9a95c0cee1621b524e1966"}, + {file = "charset_normalizer-3.4.4-cp39-cp39-win_arm64.whl", hash = "sha256:b5d84d37db046c5ca74ee7bb47dd6cbc13f80665fdde3e8040bdd3fb015ecb50"}, + {file = "charset_normalizer-3.4.4-py3-none-any.whl", hash = "sha256:7a32c560861a02ff789ad905a2fe94e3f840803362c84fecf1851cb4cf3dc37f"}, + {file = "charset_normalizer-3.4.4.tar.gz", hash = "sha256:94537985111c35f28720e43603b8e7b43a6ecfb2ce1d3058bbe955b73404e21a"}, +] + +[[package]] +name = "colorama" +version = "0.4.6" +description = "Cross-platform colored terminal text." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] + +[[package]] +name = "cryptography" +version = "46.0.3" +description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." +optional = false +python-versions = "!=3.9.0,!=3.9.1,>=3.8" +files = [ + {file = "cryptography-46.0.3-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:109d4ddfadf17e8e7779c39f9b18111a09efb969a301a31e987416a0191ed93a"}, + {file = "cryptography-46.0.3-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:09859af8466b69bc3c27bdf4f5d84a665e0f7ab5088412e9e2ec49758eca5cbc"}, + {file = "cryptography-46.0.3-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:01ca9ff2885f3acc98c29f1860552e37f6d7c7d013d7334ff2a9de43a449315d"}, + {file = "cryptography-46.0.3-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:6eae65d4c3d33da080cff9c4ab1f711b15c1d9760809dad6ea763f3812d254cb"}, + {file = "cryptography-46.0.3-cp311-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:e5bf0ed4490068a2e72ac03d786693adeb909981cc596425d09032d372bcc849"}, + {file = "cryptography-46.0.3-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:5ecfccd2329e37e9b7112a888e76d9feca2347f12f37918facbb893d7bb88ee8"}, + {file = "cryptography-46.0.3-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:a2c0cd47381a3229c403062f764160d57d4d175e022c1df84e168c6251a22eec"}, + {file = "cryptography-46.0.3-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:549e234ff32571b1f4076ac269fcce7a808d3bf98b76c8dd560e42dbc66d7d91"}, + {file = "cryptography-46.0.3-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:c0a7bb1a68a5d3471880e264621346c48665b3bf1c3759d682fc0864c540bd9e"}, + {file = "cryptography-46.0.3-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:10b01676fc208c3e6feeb25a8b83d81767e8059e1fe86e1dc62d10a3018fa926"}, + {file = "cryptography-46.0.3-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:0abf1ffd6e57c67e92af68330d05760b7b7efb243aab8377e583284dbab72c71"}, + {file = "cryptography-46.0.3-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a04bee9ab6a4da801eb9b51f1b708a1b5b5c9eb48c03f74198464c66f0d344ac"}, + {file = "cryptography-46.0.3-cp311-abi3-win32.whl", hash = "sha256:f260d0d41e9b4da1ed1e0f1ce571f97fe370b152ab18778e9e8f67d6af432018"}, + {file = "cryptography-46.0.3-cp311-abi3-win_amd64.whl", hash = "sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb"}, + {file = "cryptography-46.0.3-cp311-abi3-win_arm64.whl", hash = "sha256:5d7f93296ee28f68447397bf5198428c9aeeab45705a55d53a6343455dcb2c3c"}, + {file = "cryptography-46.0.3-cp314-cp314t-macosx_10_9_universal2.whl", hash = "sha256:00a5e7e87938e5ff9ff5447ab086a5706a957137e6e433841e9d24f38a065217"}, + {file = "cryptography-46.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:c8daeb2d2174beb4575b77482320303f3d39b8e81153da4f0fb08eb5fe86a6c5"}, + {file = "cryptography-46.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:39b6755623145ad5eff1dab323f4eae2a32a77a7abef2c5089a04a3d04366715"}, + {file = "cryptography-46.0.3-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:db391fa7c66df6762ee3f00c95a89e6d428f4d60e7abc8328f4fe155b5ac6e54"}, + {file = "cryptography-46.0.3-cp314-cp314t-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:78a97cf6a8839a48c49271cdcbd5cf37ca2c1d6b7fdd86cc864f302b5e9bf459"}, + {file = "cryptography-46.0.3-cp314-cp314t-manylinux_2_28_ppc64le.whl", hash = "sha256:dfb781ff7eaa91a6f7fd41776ec37c5853c795d3b358d4896fdbb5df168af422"}, + {file = "cryptography-46.0.3-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:6f61efb26e76c45c4a227835ddeae96d83624fb0d29eb5df5b96e14ed1a0afb7"}, + {file = "cryptography-46.0.3-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:23b1a8f26e43f47ceb6d6a43115f33a5a37d57df4ea0ca295b780ae8546e8044"}, + {file = "cryptography-46.0.3-cp314-cp314t-manylinux_2_34_ppc64le.whl", hash = "sha256:b419ae593c86b87014b9be7396b385491ad7f320bde96826d0dd174459e54665"}, + {file = "cryptography-46.0.3-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:50fc3343ac490c6b08c0cf0d704e881d0d660be923fd3076db3e932007e726e3"}, + {file = "cryptography-46.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:22d7e97932f511d6b0b04f2bfd818d73dcd5928db509460aaf48384778eb6d20"}, + {file = "cryptography-46.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d55f3dffadd674514ad19451161118fd010988540cee43d8bc20675e775925de"}, + {file = "cryptography-46.0.3-cp314-cp314t-win32.whl", hash = "sha256:8a6e050cb6164d3f830453754094c086ff2d0b2f3a897a1d9820f6139a1f0914"}, + {file = "cryptography-46.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db"}, + {file = "cryptography-46.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:516ea134e703e9fe26bcd1277a4b59ad30586ea90c365a87781d7887a646fe21"}, + {file = "cryptography-46.0.3-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:cb3d760a6117f621261d662bccc8ef5bc32ca673e037c83fbe565324f5c46936"}, + {file = "cryptography-46.0.3-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:4b7387121ac7d15e550f5cb4a43aef2559ed759c35df7336c402bb8275ac9683"}, + {file = "cryptography-46.0.3-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:15ab9b093e8f09daab0f2159bb7e47532596075139dd74365da52ecc9cb46c5d"}, + {file = "cryptography-46.0.3-cp38-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:46acf53b40ea38f9c6c229599a4a13f0d46a6c3fa9ef19fc1a124d62e338dfa0"}, + {file = "cryptography-46.0.3-cp38-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:10ca84c4668d066a9878890047f03546f3ae0a6b8b39b697457b7757aaf18dbc"}, + {file = "cryptography-46.0.3-cp38-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:36e627112085bb3b81b19fed209c05ce2a52ee8b15d161b7c643a7d5a88491f3"}, + {file = "cryptography-46.0.3-cp38-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:1000713389b75c449a6e979ffc7dcc8ac90b437048766cef052d4d30b8220971"}, + {file = "cryptography-46.0.3-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:b02cf04496f6576afffef5ddd04a0cb7d49cf6be16a9059d793a30b035f6b6ac"}, + {file = "cryptography-46.0.3-cp38-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:71e842ec9bc7abf543b47cf86b9a743baa95f4677d22baa4c7d5c69e49e9bc04"}, + {file = "cryptography-46.0.3-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:402b58fc32614f00980b66d6e56a5b4118e6cb362ae8f3fda141ba4689bd4506"}, + {file = "cryptography-46.0.3-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ef639cb3372f69ec44915fafcd6698b6cc78fbe0c2ea41be867f6ed612811963"}, + {file = "cryptography-46.0.3-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:3b51b8ca4f1c6453d8829e1eb7299499ca7f313900dd4d89a24b8b87c0a780d4"}, + {file = "cryptography-46.0.3-cp38-abi3-win32.whl", hash = "sha256:6276eb85ef938dc035d59b87c8a7dc559a232f954962520137529d77b18ff1df"}, + {file = "cryptography-46.0.3-cp38-abi3-win_amd64.whl", hash = "sha256:416260257577718c05135c55958b674000baef9a1c7d9e8f306ec60d71db850f"}, + {file = "cryptography-46.0.3-cp38-abi3-win_arm64.whl", hash = "sha256:d89c3468de4cdc4f08a57e214384d0471911a3830fcdaf7a8cc587e42a866372"}, + {file = "cryptography-46.0.3-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a23582810fedb8c0bc47524558fb6c56aac3fc252cb306072fd2815da2a47c32"}, + {file = "cryptography-46.0.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:e7aec276d68421f9574040c26e2a7c3771060bc0cff408bae1dcb19d3ab1e63c"}, + {file = "cryptography-46.0.3-pp311-pypy311_pp73-macosx_10_9_x86_64.whl", hash = "sha256:7ce938a99998ed3c8aa7e7272dca1a610401ede816d36d0693907d863b10d9ea"}, + {file = "cryptography-46.0.3-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:191bb60a7be5e6f54e30ba16fdfae78ad3a342a0599eb4193ba88e3f3d6e185b"}, + {file = "cryptography-46.0.3-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c70cc23f12726be8f8bc72e41d5065d77e4515efae3690326764ea1b07845cfb"}, + {file = "cryptography-46.0.3-pp311-pypy311_pp73-manylinux_2_34_aarch64.whl", hash = "sha256:9394673a9f4de09e28b5356e7fff97d778f8abad85c9d5ac4a4b7e25a0de7717"}, + {file = "cryptography-46.0.3-pp311-pypy311_pp73-manylinux_2_34_x86_64.whl", hash = "sha256:94cd0549accc38d1494e1f8de71eca837d0509d0d44bf11d158524b0e12cebf9"}, + {file = "cryptography-46.0.3-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:6b5063083824e5509fdba180721d55909ffacccc8adbec85268b48439423d78c"}, + {file = "cryptography-46.0.3.tar.gz", hash = "sha256:a8b17438104fed022ce745b362294d9ce35b4c2e45c1d958ad4a4b019285f4a1"}, +] + +[package.dependencies] +cffi = {version = ">=2.0.0", markers = "python_full_version >= \"3.9\" and platform_python_implementation != \"PyPy\""} + +[package.extras] +docs = ["sphinx (>=5.3.0)", "sphinx-inline-tabs", "sphinx-rtd-theme (>=3.0.0)"] +docstest = ["pyenchant (>=3)", "readme-renderer (>=30.0)", "sphinxcontrib-spelling (>=7.3.1)"] +nox = ["nox[uv] (>=2024.4.15)"] +pep8test = ["check-sdist", "click (>=8.0.1)", "mypy (>=1.14)", "ruff (>=0.11.11)"] +sdist = ["build (>=1.0.0)"] +ssh = ["bcrypt (>=3.1.5)"] +test = ["certifi (>=2024)", "cryptography-vectors (==46.0.3)", "pretend (>=0.7)", "pytest (>=7.4.0)", "pytest-benchmark (>=4.0)", "pytest-cov (>=2.10.1)", "pytest-xdist (>=3.5.0)"] +test-randomorder = ["pytest-randomly"] + +[[package]] +name = "idna" +version = "3.11" +description = "Internationalized Domain Names in Applications (IDNA)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "idna-3.11-py3-none-any.whl", hash = "sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea"}, + {file = "idna-3.11.tar.gz", hash = "sha256:795dafcc9c04ed0c1fb032c2aa73654d8e8c5023a7df64a53f39190ada629902"}, +] + +[package.extras] +all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"] + +[[package]] +name = "iniconfig" +version = "2.3.0" +description = "brain-dead simple config-ini parsing" +optional = false +python-versions = ">=3.10" +files = [ + {file = "iniconfig-2.3.0-py3-none-any.whl", hash = "sha256:f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53fbf12"}, + {file = "iniconfig-2.3.0.tar.gz", hash = "sha256:c76315c77db068650d49c5b56314774a7804df16fee4402c1f19d6d15d8c4730"}, +] + +[[package]] +name = "lxml" +version = "5.4.0" +description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." +optional = false +python-versions = ">=3.6" +files = [ + {file = "lxml-5.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e7bc6df34d42322c5289e37e9971d6ed114e3776b45fa879f734bded9d1fea9c"}, + {file = "lxml-5.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6854f8bd8a1536f8a1d9a3655e6354faa6406621cf857dc27b681b69860645c7"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:696ea9e87442467819ac22394ca36cb3d01848dad1be6fac3fb612d3bd5a12cf"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ef80aeac414f33c24b3815ecd560cee272786c3adfa5f31316d8b349bfade28"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b9c2754cef6963f3408ab381ea55f47dabc6f78f4b8ebb0f0b25cf1ac1f7609"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7a62cc23d754bb449d63ff35334acc9f5c02e6dae830d78dab4dd12b78a524f4"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f82125bc7203c5ae8633a7d5d20bcfdff0ba33e436e4ab0abc026a53a8960b7"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:b67319b4aef1a6c56576ff544b67a2a6fbd7eaee485b241cabf53115e8908b8f"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_28_ppc64le.whl", hash = "sha256:a8ef956fce64c8551221f395ba21d0724fed6b9b6242ca4f2f7beb4ce2f41997"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_28_s390x.whl", hash = "sha256:0a01ce7d8479dce84fc03324e3b0c9c90b1ece9a9bb6a1b6c9025e7e4520e78c"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:91505d3ddebf268bb1588eb0f63821f738d20e1e7f05d3c647a5ca900288760b"}, + {file = "lxml-5.4.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:a3bcdde35d82ff385f4ede021df801b5c4a5bcdfb61ea87caabcebfc4945dc1b"}, + {file = "lxml-5.4.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:aea7c06667b987787c7d1f5e1dfcd70419b711cdb47d6b4bb4ad4b76777a0563"}, + {file = "lxml-5.4.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:a7fb111eef4d05909b82152721a59c1b14d0f365e2be4c742a473c5d7372f4f5"}, + {file = "lxml-5.4.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:43d549b876ce64aa18b2328faff70f5877f8c6dede415f80a2f799d31644d776"}, + {file = "lxml-5.4.0-cp310-cp310-win32.whl", hash = "sha256:75133890e40d229d6c5837b0312abbe5bac1c342452cf0e12523477cd3aa21e7"}, + {file = "lxml-5.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:de5b4e1088523e2b6f730d0509a9a813355b7f5659d70eb4f319c76beea2e250"}, + {file = "lxml-5.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:98a3912194c079ef37e716ed228ae0dcb960992100461b704aea4e93af6b0bb9"}, + {file = "lxml-5.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0ea0252b51d296a75f6118ed0d8696888e7403408ad42345d7dfd0d1e93309a7"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b92b69441d1bd39f4940f9eadfa417a25862242ca2c396b406f9272ef09cdcaa"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20e16c08254b9b6466526bc1828d9370ee6c0d60a4b64836bc3ac2917d1e16df"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7605c1c32c3d6e8c990dd28a0970a3cbbf1429d5b92279e37fda05fb0c92190e"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ecf4c4b83f1ab3d5a7ace10bafcb6f11df6156857a3c418244cef41ca9fa3e44"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0cef4feae82709eed352cd7e97ae062ef6ae9c7b5dbe3663f104cd2c0e8d94ba"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:df53330a3bff250f10472ce96a9af28628ff1f4efc51ccba351a8820bca2a8ba"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_28_ppc64le.whl", hash = "sha256:aefe1a7cb852fa61150fcb21a8c8fcea7b58c4cb11fbe59c97a0a4b31cae3c8c"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_28_s390x.whl", hash = "sha256:ef5a7178fcc73b7d8c07229e89f8eb45b2908a9238eb90dcfc46571ccf0383b8"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:d2ed1b3cb9ff1c10e6e8b00941bb2e5bb568b307bfc6b17dffbbe8be5eecba86"}, + {file = "lxml-5.4.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:72ac9762a9f8ce74c9eed4a4e74306f2f18613a6b71fa065495a67ac227b3056"}, + {file = "lxml-5.4.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:f5cb182f6396706dc6cc1896dd02b1c889d644c081b0cdec38747573db88a7d7"}, + {file = "lxml-5.4.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:3a3178b4873df8ef9457a4875703488eb1622632a9cee6d76464b60e90adbfcd"}, + {file = "lxml-5.4.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:e094ec83694b59d263802ed03a8384594fcce477ce484b0cbcd0008a211ca751"}, + {file = "lxml-5.4.0-cp311-cp311-win32.whl", hash = "sha256:4329422de653cdb2b72afa39b0aa04252fca9071550044904b2e7036d9d97fe4"}, + {file = "lxml-5.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:fd3be6481ef54b8cfd0e1e953323b7aa9d9789b94842d0e5b142ef4bb7999539"}, + {file = "lxml-5.4.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:b5aff6f3e818e6bdbbb38e5967520f174b18f539c2b9de867b1e7fde6f8d95a4"}, + {file = "lxml-5.4.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:942a5d73f739ad7c452bf739a62a0f83e2578afd6b8e5406308731f4ce78b16d"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:460508a4b07364d6abf53acaa0a90b6d370fafde5693ef37602566613a9b0779"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:529024ab3a505fed78fe3cc5ddc079464e709f6c892733e3f5842007cec8ac6e"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ca56ebc2c474e8f3d5761debfd9283b8b18c76c4fc0967b74aeafba1f5647f9"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a81e1196f0a5b4167a8dafe3a66aa67c4addac1b22dc47947abd5d5c7a3f24b5"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:00b8686694423ddae324cf614e1b9659c2edb754de617703c3d29ff568448df5"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:c5681160758d3f6ac5b4fea370495c48aac0989d6a0f01bb9a72ad8ef5ab75c4"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_28_ppc64le.whl", hash = "sha256:2dc191e60425ad70e75a68c9fd90ab284df64d9cd410ba8d2b641c0c45bc006e"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_28_s390x.whl", hash = "sha256:67f779374c6b9753ae0a0195a892a1c234ce8416e4448fe1e9f34746482070a7"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:79d5bfa9c1b455336f52343130b2067164040604e41f6dc4d8313867ed540079"}, + {file = "lxml-5.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3d3c30ba1c9b48c68489dc1829a6eede9873f52edca1dda900066542528d6b20"}, + {file = "lxml-5.4.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:1af80c6316ae68aded77e91cd9d80648f7dd40406cef73df841aa3c36f6907c8"}, + {file = "lxml-5.4.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:4d885698f5019abe0de3d352caf9466d5de2baded00a06ef3f1216c1a58ae78f"}, + {file = "lxml-5.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:aea53d51859b6c64e7c51d522c03cc2c48b9b5d6172126854cc7f01aa11f52bc"}, + {file = "lxml-5.4.0-cp312-cp312-win32.whl", hash = "sha256:d90b729fd2732df28130c064aac9bb8aff14ba20baa4aee7bd0795ff1187545f"}, + {file = "lxml-5.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:1dc4ca99e89c335a7ed47d38964abcb36c5910790f9bd106f2a8fa2ee0b909d2"}, + {file = "lxml-5.4.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:773e27b62920199c6197130632c18fb7ead3257fce1ffb7d286912e56ddb79e0"}, + {file = "lxml-5.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ce9c671845de9699904b1e9df95acfe8dfc183f2310f163cdaa91a3535af95de"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9454b8d8200ec99a224df8854786262b1bd6461f4280064c807303c642c05e76"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cccd007d5c95279e529c146d095f1d39ac05139de26c098166c4beb9374b0f4d"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0fce1294a0497edb034cb416ad3e77ecc89b313cff7adbee5334e4dc0d11f422"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:24974f774f3a78ac12b95e3a20ef0931795ff04dbb16db81a90c37f589819551"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:497cab4d8254c2a90bf988f162ace2ddbfdd806fce3bda3f581b9d24c852e03c"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:e794f698ae4c5084414efea0f5cc9f4ac562ec02d66e1484ff822ef97c2cadff"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_28_ppc64le.whl", hash = "sha256:2c62891b1ea3094bb12097822b3d44b93fc6c325f2043c4d2736a8ff09e65f60"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_28_s390x.whl", hash = "sha256:142accb3e4d1edae4b392bd165a9abdee8a3c432a2cca193df995bc3886249c8"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:1a42b3a19346e5601d1b8296ff6ef3d76038058f311902edd574461e9c036982"}, + {file = "lxml-5.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4291d3c409a17febf817259cb37bc62cb7eb398bcc95c1356947e2871911ae61"}, + {file = "lxml-5.4.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4f5322cf38fe0e21c2d73901abf68e6329dc02a4994e483adbcf92b568a09a54"}, + {file = "lxml-5.4.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:0be91891bdb06ebe65122aa6bf3fc94489960cf7e03033c6f83a90863b23c58b"}, + {file = "lxml-5.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:15a665ad90054a3d4f397bc40f73948d48e36e4c09f9bcffc7d90c87410e478a"}, + {file = "lxml-5.4.0-cp313-cp313-win32.whl", hash = "sha256:d5663bc1b471c79f5c833cffbc9b87d7bf13f87e055a5c86c363ccd2348d7e82"}, + {file = "lxml-5.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:bcb7a1096b4b6b24ce1ac24d4942ad98f983cd3810f9711bcd0293f43a9d8b9f"}, + {file = "lxml-5.4.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:7be701c24e7f843e6788353c055d806e8bd8466b52907bafe5d13ec6a6dbaecd"}, + {file = "lxml-5.4.0-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fb54f7c6bafaa808f27166569b1511fc42701a7713858dddc08afdde9746849e"}, + {file = "lxml-5.4.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:97dac543661e84a284502e0cf8a67b5c711b0ad5fb661d1bd505c02f8cf716d7"}, + {file = "lxml-5.4.0-cp36-cp36m-manylinux_2_28_x86_64.whl", hash = "sha256:c70e93fba207106cb16bf852e421c37bbded92acd5964390aad07cb50d60f5cf"}, + {file = "lxml-5.4.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:9c886b481aefdf818ad44846145f6eaf373a20d200b5ce1a5c8e1bc2d8745410"}, + {file = "lxml-5.4.0-cp36-cp36m-musllinux_1_2_x86_64.whl", hash = "sha256:fa0e294046de09acd6146be0ed6727d1f42ded4ce3ea1e9a19c11b6774eea27c"}, + {file = "lxml-5.4.0-cp36-cp36m-win32.whl", hash = "sha256:61c7bbf432f09ee44b1ccaa24896d21075e533cd01477966a5ff5a71d88b2f56"}, + {file = "lxml-5.4.0-cp36-cp36m-win_amd64.whl", hash = "sha256:7ce1a171ec325192c6a636b64c94418e71a1964f56d002cc28122fceff0b6121"}, + {file = "lxml-5.4.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:795f61bcaf8770e1b37eec24edf9771b307df3af74d1d6f27d812e15a9ff3872"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:29f451a4b614a7b5b6c2e043d7b64a15bd8304d7e767055e8ab68387a8cacf4e"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:891f7f991a68d20c75cb13c5c9142b2a3f9eb161f1f12a9489c82172d1f133c0"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4aa412a82e460571fad592d0f93ce9935a20090029ba08eca05c614f99b0cc92"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_28_aarch64.whl", hash = "sha256:ac7ba71f9561cd7d7b55e1ea5511543c0282e2b6450f122672a2694621d63b7e"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:c5d32f5284012deaccd37da1e2cd42f081feaa76981f0eaa474351b68df813c5"}, + {file = "lxml-5.4.0-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:ce31158630a6ac85bddd6b830cffd46085ff90498b397bd0a259f59d27a12188"}, + {file = "lxml-5.4.0-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:31e63621e073e04697c1b2d23fcb89991790eef370ec37ce4d5d469f40924ed6"}, + {file = "lxml-5.4.0-cp37-cp37m-win32.whl", hash = "sha256:be2ba4c3c5b7900246a8f866580700ef0d538f2ca32535e991027bdaba944063"}, + {file = "lxml-5.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:09846782b1ef650b321484ad429217f5154da4d6e786636c38e434fa32e94e49"}, + {file = "lxml-5.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:eaf24066ad0b30917186420d51e2e3edf4b0e2ea68d8cd885b14dc8afdcf6556"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2b31a3a77501d86d8ade128abb01082724c0dfd9524f542f2f07d693c9f1175f"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e108352e203c7afd0eb91d782582f00a0b16a948d204d4dec8565024fafeea5"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a11a96c3b3f7551c8a8109aa65e8594e551d5a84c76bf950da33d0fb6dfafab7"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:ca755eebf0d9e62d6cb013f1261e510317a41bf4650f22963474a663fdfe02aa"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:4cd915c0fb1bed47b5e6d6edd424ac25856252f09120e3e8ba5154b6b921860e"}, + {file = "lxml-5.4.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:226046e386556a45ebc787871d6d2467b32c37ce76c2680f5c608e25823ffc84"}, + {file = "lxml-5.4.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:b108134b9667bcd71236c5a02aad5ddd073e372fb5d48ea74853e009fe38acb6"}, + {file = "lxml-5.4.0-cp38-cp38-win32.whl", hash = "sha256:1320091caa89805df7dcb9e908add28166113dcd062590668514dbd510798c88"}, + {file = "lxml-5.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:073eb6dcdf1f587d9b88c8c93528b57eccda40209cf9be549d469b942b41d70b"}, + {file = "lxml-5.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:bda3ea44c39eb74e2488297bb39d47186ed01342f0022c8ff407c250ac3f498e"}, + {file = "lxml-5.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9ceaf423b50ecfc23ca00b7f50b64baba85fb3fb91c53e2c9d00bc86150c7e40"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:664cdc733bc87449fe781dbb1f309090966c11cc0c0cd7b84af956a02a8a4729"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:67ed8a40665b84d161bae3181aa2763beea3747f748bca5874b4af4d75998f87"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9b4a3bd174cc9cdaa1afbc4620c049038b441d6ba07629d89a83b408e54c35cd"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:b0989737a3ba6cf2a16efb857fb0dfa20bc5c542737fddb6d893fde48be45433"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:dc0af80267edc68adf85f2a5d9be1cdf062f973db6790c1d065e45025fa26140"}, + {file = "lxml-5.4.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:639978bccb04c42677db43c79bdaa23785dc7f9b83bfd87570da8207872f1ce5"}, + {file = "lxml-5.4.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5a99d86351f9c15e4a901fc56404b485b1462039db59288b203f8c629260a142"}, + {file = "lxml-5.4.0-cp39-cp39-win32.whl", hash = "sha256:3e6d5557989cdc3ebb5302bbdc42b439733a841891762ded9514e74f60319ad6"}, + {file = "lxml-5.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:a8c9b7f16b63e65bbba889acb436a1034a82d34fa09752d754f88d708eca80e1"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:1b717b00a71b901b4667226bba282dd462c42ccf618ade12f9ba3674e1fabc55"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:27a9ded0f0b52098ff89dd4c418325b987feed2ea5cc86e8860b0f844285d740"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b7ce10634113651d6f383aa712a194179dcd496bd8c41e191cec2099fa09de5"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:53370c26500d22b45182f98847243efb518d268374a9570409d2e2276232fd37"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c6364038c519dffdbe07e3cf42e6a7f8b90c275d4d1617a69bb59734c1a2d571"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:b12cb6527599808ada9eb2cd6e0e7d3d8f13fe7bbb01c6311255a15ded4c7ab4"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5f11a1526ebd0dee85e7b1e39e39a0cc0d9d03fb527f56d8457f6df48a10dc0c"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48b4afaf38bf79109bb060d9016fad014a9a48fb244e11b94f74ae366a64d252"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de6f6bb8a7840c7bf216fb83eec4e2f79f7325eca8858167b68708b929ab2172"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:5cca36a194a4eb4e2ed6be36923d3cffd03dcdf477515dea687185506583d4c9"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:b7c86884ad23d61b025989d99bfdd92a7351de956e01c61307cb87035960bcb1"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:53d9469ab5460402c19553b56c3648746774ecd0681b1b27ea74d5d8a3ef5590"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:56dbdbab0551532bb26c19c914848d7251d73edb507c3079d6805fa8bba5b706"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:14479c2ad1cb08b62bb941ba8e0e05938524ee3c3114644df905d2331c76cd57"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:32697d2ea994e0db19c1df9e40275ffe84973e4232b5c274f47e7c1ec9763cdd"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:24f6df5f24fc3385f622c0c9d63fe34604893bc1a5bdbb2dbf5870f85f9a404a"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:151d6c40bc9db11e960619d2bf2ec5829f0aaffb10b41dcf6ad2ce0f3c0b2325"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:4025bf2884ac4370a3243c5aa8d66d3cb9e15d3ddd0af2d796eccc5f0244390e"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:9459e6892f59ecea2e2584ee1058f5d8f629446eab52ba2305ae13a32a059530"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:47fb24cc0f052f0576ea382872b3fc7e1f7e3028e53299ea751839418ade92a6"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50441c9de951a153c698b9b99992e806b71c1f36d14b154592580ff4a9d0d877"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:ab339536aa798b1e17750733663d272038bf28069761d5be57cb4a9b0137b4f8"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:9776af1aad5a4b4a1317242ee2bea51da54b2a7b7b48674be736d463c999f37d"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:63e7968ff83da2eb6fdda967483a7a023aa497d85ad8f05c3ad9b1f2e8c84987"}, + {file = "lxml-5.4.0.tar.gz", hash = "sha256:d12832e1dbea4be280b22fd0ea7c9b87f0d8fc51ba06e92dc62d52f804f78ebd"}, +] + +[package.extras] +cssselect = ["cssselect (>=0.7)"] +html-clean = ["lxml_html_clean"] +html5 = ["html5lib"] +htmlsoup = ["BeautifulSoup4"] +source = ["Cython (>=3.0.11,<3.1.0)"] + +[[package]] +name = "packaging" +version = "25.0" +description = "Core utilities for Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484"}, + {file = "packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f"}, +] + +[[package]] +name = "pluggy" +version = "1.6.0" +description = "plugin and hook calling mechanisms for python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746"}, + {file = "pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3"}, +] + +[package.extras] +dev = ["pre-commit", "tox"] +testing = ["coverage", "pytest", "pytest-benchmark"] + +[[package]] +name = "pycparser" +version = "2.23" +description = "C parser in Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pycparser-2.23-py3-none-any.whl", hash = "sha256:e5c6e8d3fbad53479cab09ac03729e0a9faf2bee3db8208a550daf5af81a5934"}, + {file = "pycparser-2.23.tar.gz", hash = "sha256:78816d4f24add8f10a06d6f05b4d424ad9e96cfebf68a4ddc99c65c0720d00c2"}, +] + +[[package]] +name = "pycryptodome" +version = "3.23.0" +description = "Cryptographic library for Python" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "pycryptodome-3.23.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a176b79c49af27d7f6c12e4b178b0824626f40a7b9fed08f712291b6d54bf566"}, + {file = "pycryptodome-3.23.0-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:573a0b3017e06f2cffd27d92ef22e46aa3be87a2d317a5abf7cc0e84e321bd75"}, + {file = "pycryptodome-3.23.0-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:63dad881b99ca653302b2c7191998dd677226222a3f2ea79999aa51ce695f720"}, + {file = "pycryptodome-3.23.0-cp27-cp27m-win32.whl", hash = "sha256:b34e8e11d97889df57166eda1e1ddd7676da5fcd4d71a0062a760e75060514b4"}, + {file = "pycryptodome-3.23.0-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:7ac1080a8da569bde76c0a104589c4f414b8ba296c0b3738cf39a466a9fb1818"}, + {file = "pycryptodome-3.23.0-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:6fe8258e2039eceb74dfec66b3672552b6b7d2c235b2dfecc05d16b8921649a8"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:0011f7f00cdb74879142011f95133274741778abba114ceca229adbf8e62c3e4"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:90460fc9e088ce095f9ee8356722d4f10f86e5be06e2354230a9880b9c549aae"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4764e64b269fc83b00f682c47443c2e6e85b18273712b98aa43bcb77f8570477"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eb8f24adb74984aa0e5d07a2368ad95276cf38051fe2dc6605cbcf482e04f2a7"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d97618c9c6684a97ef7637ba43bdf6663a2e2e77efe0f863cce97a76af396446"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9a53a4fe5cb075075d515797d6ce2f56772ea7e6a1e5e4b96cf78a14bac3d265"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:763d1d74f56f031788e5d307029caef067febf890cd1f8bf61183ae142f1a77b"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:954af0e2bd7cea83ce72243b14e4fb518b18f0c1649b576d114973e2073b273d"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-win32.whl", hash = "sha256:257bb3572c63ad8ba40b89f6fc9d63a2a628e9f9708d31ee26560925ebe0210a"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-win_amd64.whl", hash = "sha256:6501790c5b62a29fcb227bd6b62012181d886a767ce9ed03b303d1f22eb5c625"}, + {file = "pycryptodome-3.23.0-cp313-cp313t-win_arm64.whl", hash = "sha256:9a77627a330ab23ca43b48b130e202582e91cc69619947840ea4d2d1be21eb39"}, + {file = "pycryptodome-3.23.0-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:187058ab80b3281b1de11c2e6842a357a1f71b42cb1e15bce373f3d238135c27"}, + {file = "pycryptodome-3.23.0-cp37-abi3-macosx_10_9_x86_64.whl", hash = "sha256:cfb5cd445280c5b0a4e6187a7ce8de5a07b5f3f897f235caa11f1f435f182843"}, + {file = "pycryptodome-3.23.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:67bd81fcbe34f43ad9422ee8fd4843c8e7198dd88dd3d40e6de42ee65fbe1490"}, + {file = "pycryptodome-3.23.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c8987bd3307a39bc03df5c8e0e3d8be0c4c3518b7f044b0f4c15d1aa78f52575"}, + {file = "pycryptodome-3.23.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aa0698f65e5b570426fc31b8162ed4603b0c2841cbb9088e2b01641e3065915b"}, + {file = "pycryptodome-3.23.0-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:53ecbafc2b55353edcebd64bf5da94a2a2cdf5090a6915bcca6eca6cc452585a"}, + {file = "pycryptodome-3.23.0-cp37-abi3-musllinux_1_2_i686.whl", hash = "sha256:156df9667ad9f2ad26255926524e1c136d6664b741547deb0a86a9acf5ea631f"}, + {file = "pycryptodome-3.23.0-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:dea827b4d55ee390dc89b2afe5927d4308a8b538ae91d9c6f7a5090f397af1aa"}, + {file = "pycryptodome-3.23.0-cp37-abi3-win32.whl", hash = "sha256:507dbead45474b62b2bbe318eb1c4c8ee641077532067fec9c1aa82c31f84886"}, + {file = "pycryptodome-3.23.0-cp37-abi3-win_amd64.whl", hash = "sha256:c75b52aacc6c0c260f204cbdd834f76edc9fb0d8e0da9fbf8352ef58202564e2"}, + {file = "pycryptodome-3.23.0-cp37-abi3-win_arm64.whl", hash = "sha256:11eeeb6917903876f134b56ba11abe95c0b0fd5e3330def218083c7d98bbcb3c"}, + {file = "pycryptodome-3.23.0-pp27-pypy_73-manylinux2010_x86_64.whl", hash = "sha256:350ebc1eba1da729b35ab7627a833a1a355ee4e852d8ba0447fafe7b14504d56"}, + {file = "pycryptodome-3.23.0-pp27-pypy_73-win32.whl", hash = "sha256:93837e379a3e5fd2bb00302a47aee9fdf7940d83595be3915752c74033d17ca7"}, + {file = "pycryptodome-3.23.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:ddb95b49df036ddd264a0ad246d1be5b672000f12d6961ea2c267083a5e19379"}, + {file = "pycryptodome-3.23.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8e95564beb8782abfd9e431c974e14563a794a4944c29d6d3b7b5ea042110b4"}, + {file = "pycryptodome-3.23.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14e15c081e912c4b0d75632acd8382dfce45b258667aa3c67caf7a4d4c13f630"}, + {file = "pycryptodome-3.23.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a7fc76bf273353dc7e5207d172b83f569540fc9a28d63171061c42e361d22353"}, + {file = "pycryptodome-3.23.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:45c69ad715ca1a94f778215a11e66b7ff989d792a4d63b68dc586a1da1392ff5"}, + {file = "pycryptodome-3.23.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:865d83c906b0fc6a59b510deceee656b6bc1c4fa0d82176e2b77e97a420a996a"}, + {file = "pycryptodome-3.23.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89d4d56153efc4d81defe8b65fd0821ef8b2d5ddf8ed19df31ba2f00872b8002"}, + {file = "pycryptodome-3.23.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3f2d0aaf8080bda0587d58fc9fe4766e012441e2eed4269a77de6aea981c8be"}, + {file = "pycryptodome-3.23.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:64093fc334c1eccfd3933c134c4457c34eaca235eeae49d69449dc4728079339"}, + {file = "pycryptodome-3.23.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:ce64e84a962b63a47a592690bdc16a7eaf709d2c2697ababf24a0def566899a6"}, + {file = "pycryptodome-3.23.0.tar.gz", hash = "sha256:447700a657182d60338bab09fdb27518f8856aecd80ae4c6bdddb67ff5da44ef"}, +] + +[[package]] +name = "pydantic" +version = "2.12.5" +description = "Data validation using Python type hints" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pydantic-2.12.5-py3-none-any.whl", hash = "sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d"}, + {file = "pydantic-2.12.5.tar.gz", hash = "sha256:4d351024c75c0f085a9febbb665ce8c0c6ec5d30e903bdb6394b7ede26aebb49"}, +] + +[package.dependencies] +annotated-types = ">=0.6.0" +pydantic-core = "2.41.5" +typing-extensions = ">=4.14.1" +typing-inspection = ">=0.4.2" + +[package.extras] +email = ["email-validator (>=2.0.0)"] +timezone = ["tzdata"] + +[[package]] +name = "pydantic-core" +version = "2.41.5" +description = "Core functionality for Pydantic validation and serialization" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pydantic_core-2.41.5-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:77b63866ca88d804225eaa4af3e664c5faf3568cea95360d21f4725ab6e07146"}, + {file = "pydantic_core-2.41.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:dfa8a0c812ac681395907e71e1274819dec685fec28273a28905df579ef137e2"}, + {file = "pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5921a4d3ca3aee735d9fd163808f5e8dd6c6972101e4adbda9a4667908849b97"}, + {file = "pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e25c479382d26a2a41b7ebea1043564a937db462816ea07afa8a44c0866d52f9"}, + {file = "pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f547144f2966e1e16ae626d8ce72b4cfa0caedc7fa28052001c94fb2fcaa1c52"}, + {file = "pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f52298fbd394f9ed112d56f3d11aabd0d5bd27beb3084cc3d8ad069483b8941"}, + {file = "pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:100baa204bb412b74fe285fb0f3a385256dad1d1879f0a5cb1499ed2e83d132a"}, + {file = "pydantic_core-2.41.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:05a2c8852530ad2812cb7914dc61a1125dc4e06252ee98e5638a12da6cc6fb6c"}, + {file = "pydantic_core-2.41.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:29452c56df2ed968d18d7e21f4ab0ac55e71dc59524872f6fc57dcf4a3249ed2"}, + {file = "pydantic_core-2.41.5-cp310-cp310-musllinux_1_1_armv7l.whl", hash = "sha256:d5160812ea7a8a2ffbe233d8da666880cad0cbaf5d4de74ae15c313213d62556"}, + {file = "pydantic_core-2.41.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:df3959765b553b9440adfd3c795617c352154e497a4eaf3752555cfb5da8fc49"}, + {file = "pydantic_core-2.41.5-cp310-cp310-win32.whl", hash = "sha256:1f8d33a7f4d5a7889e60dc39856d76d09333d8a6ed0f5f1190635cbec70ec4ba"}, + {file = "pydantic_core-2.41.5-cp310-cp310-win_amd64.whl", hash = "sha256:62de39db01b8d593e45871af2af9e497295db8d73b085f6bfd0b18c83c70a8f9"}, + {file = "pydantic_core-2.41.5-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:a3a52f6156e73e7ccb0f8cced536adccb7042be67cb45f9562e12b319c119da6"}, + {file = "pydantic_core-2.41.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7f3bf998340c6d4b0c9a2f02d6a400e51f123b59565d74dc60d252ce888c260b"}, + {file = "pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:378bec5c66998815d224c9ca994f1e14c0c21cb95d2f52b6021cc0b2a58f2a5a"}, + {file = "pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e7b576130c69225432866fe2f4a469a85a54ade141d96fd396dffcf607b558f8"}, + {file = "pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6cb58b9c66f7e4179a2d5e0f849c48eff5c1fca560994d6eb6543abf955a149e"}, + {file = "pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:88942d3a3dff3afc8288c21e565e476fc278902ae4d6d134f1eeda118cc830b1"}, + {file = "pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f31d95a179f8d64d90f6831d71fa93290893a33148d890ba15de25642c5d075b"}, + {file = "pydantic_core-2.41.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c1df3d34aced70add6f867a8cf413e299177e0c22660cc767218373d0779487b"}, + {file = "pydantic_core-2.41.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:4009935984bd36bd2c774e13f9a09563ce8de4abaa7226f5108262fa3e637284"}, + {file = "pydantic_core-2.41.5-cp311-cp311-musllinux_1_1_armv7l.whl", hash = "sha256:34a64bc3441dc1213096a20fe27e8e128bd3ff89921706e83c0b1ac971276594"}, + {file = "pydantic_core-2.41.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:c9e19dd6e28fdcaa5a1de679aec4141f691023916427ef9bae8584f9c2fb3b0e"}, + {file = "pydantic_core-2.41.5-cp311-cp311-win32.whl", hash = "sha256:2c010c6ded393148374c0f6f0bf89d206bf3217f201faa0635dcd56bd1520f6b"}, + {file = "pydantic_core-2.41.5-cp311-cp311-win_amd64.whl", hash = "sha256:76ee27c6e9c7f16f47db7a94157112a2f3a00e958bc626e2f4ee8bec5c328fbe"}, + {file = "pydantic_core-2.41.5-cp311-cp311-win_arm64.whl", hash = "sha256:4bc36bbc0b7584de96561184ad7f012478987882ebf9f9c389b23f432ea3d90f"}, + {file = "pydantic_core-2.41.5-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:f41a7489d32336dbf2199c8c0a215390a751c5b014c2c1c5366e817202e9cdf7"}, + {file = "pydantic_core-2.41.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:070259a8818988b9a84a449a2a7337c7f430a22acc0859c6b110aa7212a6d9c0"}, + {file = "pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e96cea19e34778f8d59fe40775a7a574d95816eb150850a85a7a4c8f4b94ac69"}, + {file = "pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed2e99c456e3fadd05c991f8f437ef902e00eedf34320ba2b0842bd1c3ca3a75"}, + {file = "pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:65840751b72fbfd82c3c640cff9284545342a4f1eb1586ad0636955b261b0b05"}, + {file = "pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e536c98a7626a98feb2d3eaf75944ef6f3dbee447e1f841eae16f2f0a72d8ddc"}, + {file = "pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eceb81a8d74f9267ef4081e246ffd6d129da5d87e37a77c9bde550cb04870c1c"}, + {file = "pydantic_core-2.41.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d38548150c39b74aeeb0ce8ee1d8e82696f4a4e16ddc6de7b1d8823f7de4b9b5"}, + {file = "pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c23e27686783f60290e36827f9c626e63154b82b116d7fe9adba1fda36da706c"}, + {file = "pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:482c982f814460eabe1d3bb0adfdc583387bd4691ef00b90575ca0d2b6fe2294"}, + {file = "pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:bfea2a5f0b4d8d43adf9d7b8bf019fb46fdd10a2e5cde477fbcb9d1fa08c68e1"}, + {file = "pydantic_core-2.41.5-cp312-cp312-win32.whl", hash = "sha256:b74557b16e390ec12dca509bce9264c3bbd128f8a2c376eaa68003d7f327276d"}, + {file = "pydantic_core-2.41.5-cp312-cp312-win_amd64.whl", hash = "sha256:1962293292865bca8e54702b08a4f26da73adc83dd1fcf26fbc875b35d81c815"}, + {file = "pydantic_core-2.41.5-cp312-cp312-win_arm64.whl", hash = "sha256:1746d4a3d9a794cacae06a5eaaccb4b8643a131d45fbc9af23e353dc0a5ba5c3"}, + {file = "pydantic_core-2.41.5-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:941103c9be18ac8daf7b7adca8228f8ed6bb7a1849020f643b3a14d15b1924d9"}, + {file = "pydantic_core-2.41.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:112e305c3314f40c93998e567879e887a3160bb8689ef3d2c04b6cc62c33ac34"}, + {file = "pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cbaad15cb0c90aa221d43c00e77bb33c93e8d36e0bf74760cd00e732d10a6a0"}, + {file = "pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:03ca43e12fab6023fc79d28ca6b39b05f794ad08ec2feccc59a339b02f2b3d33"}, + {file = "pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc799088c08fa04e43144b164feb0c13f9a0bc40503f8df3e9fde58a3c0c101e"}, + {file = "pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:97aeba56665b4c3235a0e52b2c2f5ae9cd071b8a8310ad27bddb3f7fb30e9aa2"}, + {file = "pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:406bf18d345822d6c21366031003612b9c77b3e29ffdb0f612367352aab7d586"}, + {file = "pydantic_core-2.41.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b93590ae81f7010dbe380cdeab6f515902ebcbefe0b9327cc4804d74e93ae69d"}, + {file = "pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:01a3d0ab748ee531f4ea6c3e48ad9dac84ddba4b0d82291f87248f2f9de8d740"}, + {file = "pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:6561e94ba9dacc9c61bce40e2d6bdc3bfaa0259d3ff36ace3b1e6901936d2e3e"}, + {file = "pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:915c3d10f81bec3a74fbd4faebe8391013ba61e5a1a8d48c4455b923bdda7858"}, + {file = "pydantic_core-2.41.5-cp313-cp313-win32.whl", hash = "sha256:650ae77860b45cfa6e2cdafc42618ceafab3a2d9a3811fcfbd3bbf8ac3c40d36"}, + {file = "pydantic_core-2.41.5-cp313-cp313-win_amd64.whl", hash = "sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11"}, + {file = "pydantic_core-2.41.5-cp313-cp313-win_arm64.whl", hash = "sha256:3f84d5c1b4ab906093bdc1ff10484838aca54ef08de4afa9de0f5f14d69639cd"}, + {file = "pydantic_core-2.41.5-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:3f37a19d7ebcdd20b96485056ba9e8b304e27d9904d233d7b1015db320e51f0a"}, + {file = "pydantic_core-2.41.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1d1d9764366c73f996edd17abb6d9d7649a7eb690006ab6adbda117717099b14"}, + {file = "pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25e1c2af0fce638d5f1988b686f3b3ea8cd7de5f244ca147c777769e798a9cd1"}, + {file = "pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:506d766a8727beef16b7adaeb8ee6217c64fc813646b424d0804d67c16eddb66"}, + {file = "pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4819fa52133c9aa3c387b3328f25c1facc356491e6135b459f1de698ff64d869"}, + {file = "pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2b761d210c9ea91feda40d25b4efe82a1707da2ef62901466a42492c028553a2"}, + {file = "pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:22f0fb8c1c583a3b6f24df2470833b40207e907b90c928cc8d3594b76f874375"}, + {file = "pydantic_core-2.41.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2782c870e99878c634505236d81e5443092fba820f0373997ff75f90f68cd553"}, + {file = "pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:0177272f88ab8312479336e1d777f6b124537d47f2123f89cb37e0accea97f90"}, + {file = "pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_armv7l.whl", hash = "sha256:63510af5e38f8955b8ee5687740d6ebf7c2a0886d15a6d65c32814613681bc07"}, + {file = "pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:e56ba91f47764cc14f1daacd723e3e82d1a89d783f0f5afe9c364b8bb491ccdb"}, + {file = "pydantic_core-2.41.5-cp314-cp314-win32.whl", hash = "sha256:aec5cf2fd867b4ff45b9959f8b20ea3993fc93e63c7363fe6851424c8a7e7c23"}, + {file = "pydantic_core-2.41.5-cp314-cp314-win_amd64.whl", hash = "sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf"}, + {file = "pydantic_core-2.41.5-cp314-cp314-win_arm64.whl", hash = "sha256:e672ba74fbc2dc8eea59fb6d4aed6845e6905fc2a8afe93175d94a83ba2a01a0"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:8566def80554c3faa0e65ac30ab0932b9e3a5cd7f8323764303d468e5c37595a"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:b80aa5095cd3109962a298ce14110ae16b8c1aece8b72f9dafe81cf597ad80b3"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3006c3dd9ba34b0c094c544c6006cc79e87d8612999f1a5d43b769b89181f23c"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:72f6c8b11857a856bcfa48c86f5368439f74453563f951e473514579d44aa612"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5cb1b2f9742240e4bb26b652a5aeb840aa4b417c7748b6f8387927bc6e45e40d"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bd3d54f38609ff308209bd43acea66061494157703364ae40c951f83ba99a1a9"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ff4321e56e879ee8d2a879501c8e469414d948f4aba74a2d4593184eb326660"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d0d2568a8c11bf8225044aa94409e21da0cb09dcdafe9ecd10250b2baad531a9"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:a39455728aabd58ceabb03c90e12f71fd30fa69615760a075b9fec596456ccc3"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_armv7l.whl", hash = "sha256:239edca560d05757817c13dc17c50766136d21f7cd0fac50295499ae24f90fdf"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:2a5e06546e19f24c6a96a129142a75cee553cc018ffee48a460059b1185f4470"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-win32.whl", hash = "sha256:b4ececa40ac28afa90871c2cc2b9ffd2ff0bf749380fbdf57d165fd23da353aa"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl", hash = "sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c"}, + {file = "pydantic_core-2.41.5-cp314-cp314t-win_arm64.whl", hash = "sha256:35b44f37a3199f771c3eaa53051bc8a70cd7b54f333531c59e29fd4db5d15008"}, + {file = "pydantic_core-2.41.5-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:8bfeaf8735be79f225f3fefab7f941c712aaca36f1128c9d7e2352ee1aa87bdf"}, + {file = "pydantic_core-2.41.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:346285d28e4c8017da95144c7f3acd42740d637ff41946af5ce6e5e420502dd5"}, + {file = "pydantic_core-2.41.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a75dafbf87d6276ddc5b2bf6fae5254e3d0876b626eb24969a574fff9149ee5d"}, + {file = "pydantic_core-2.41.5-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7b93a4d08587e2b7e7882de461e82b6ed76d9026ce91ca7915e740ecc7855f60"}, + {file = "pydantic_core-2.41.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e8465ab91a4bd96d36dde3263f06caa6a8a6019e4113f24dc753d79a8b3a3f82"}, + {file = "pydantic_core-2.41.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:299e0a22e7ae2b85c1a57f104538b2656e8ab1873511fd718a1c1c6f149b77b5"}, + {file = "pydantic_core-2.41.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:707625ef0983fcfb461acfaf14de2067c5942c6bb0f3b4c99158bed6fedd3cf3"}, + {file = "pydantic_core-2.41.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f41eb9797986d6ebac5e8edff36d5cef9de40def462311b3eb3eeded1431e425"}, + {file = "pydantic_core-2.41.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0384e2e1021894b1ff5a786dbf94771e2986ebe2869533874d7e43bc79c6f504"}, + {file = "pydantic_core-2.41.5-cp39-cp39-musllinux_1_1_armv7l.whl", hash = "sha256:f0cd744688278965817fd0839c4a4116add48d23890d468bc436f78beb28abf5"}, + {file = "pydantic_core-2.41.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:753e230374206729bf0a807954bcc6c150d3743928a73faffee51ac6557a03c3"}, + {file = "pydantic_core-2.41.5-cp39-cp39-win32.whl", hash = "sha256:873e0d5b4fb9b89ef7c2d2a963ea7d02879d9da0da8d9d4933dee8ee86a8b460"}, + {file = "pydantic_core-2.41.5-cp39-cp39-win_amd64.whl", hash = "sha256:e4f4a984405e91527a0d62649ee21138f8e3d0ef103be488c1dc11a80d7f184b"}, + {file = "pydantic_core-2.41.5-graalpy311-graalpy242_311_native-macosx_10_12_x86_64.whl", hash = "sha256:b96d5f26b05d03cc60f11a7761a5ded1741da411e7fe0909e27a5e6a0cb7b034"}, + {file = "pydantic_core-2.41.5-graalpy311-graalpy242_311_native-macosx_11_0_arm64.whl", hash = "sha256:634e8609e89ceecea15e2d61bc9ac3718caaaa71963717bf3c8f38bfde64242c"}, + {file = "pydantic_core-2.41.5-graalpy311-graalpy242_311_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:93e8740d7503eb008aa2df04d3b9735f845d43ae845e6dcd2be0b55a2da43cd2"}, + {file = "pydantic_core-2.41.5-graalpy311-graalpy242_311_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f15489ba13d61f670dcc96772e733aad1a6f9c429cc27574c6cdaed82d0146ad"}, + {file = "pydantic_core-2.41.5-graalpy312-graalpy250_312_native-macosx_10_12_x86_64.whl", hash = "sha256:7da7087d756b19037bc2c06edc6c170eeef3c3bafcb8f532ff17d64dc427adfd"}, + {file = "pydantic_core-2.41.5-graalpy312-graalpy250_312_native-macosx_11_0_arm64.whl", hash = "sha256:aabf5777b5c8ca26f7824cb4a120a740c9588ed58df9b2d196ce92fba42ff8dc"}, + {file = "pydantic_core-2.41.5-graalpy312-graalpy250_312_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c007fe8a43d43b3969e8469004e9845944f1a80e6acd47c150856bb87f230c56"}, + {file = "pydantic_core-2.41.5-graalpy312-graalpy250_312_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:76d0819de158cd855d1cbb8fcafdf6f5cf1eb8e470abe056d5d161106e38062b"}, + {file = "pydantic_core-2.41.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:b5819cd790dbf0c5eb9f82c73c16b39a65dd6dd4d1439dcdea7816ec9adddab8"}, + {file = "pydantic_core-2.41.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:5a4e67afbc95fa5c34cf27d9089bca7fcab4e51e57278d710320a70b956d1b9a"}, + {file = "pydantic_core-2.41.5-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ece5c59f0ce7d001e017643d8d24da587ea1f74f6993467d85ae8a5ef9d4f42b"}, + {file = "pydantic_core-2.41.5-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:16f80f7abe3351f8ea6858914ddc8c77e02578544a0ebc15b4c2e1a0e813b0b2"}, + {file = "pydantic_core-2.41.5-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:33cb885e759a705b426baada1fe68cbb0a2e68e34c5d0d0289a364cf01709093"}, + {file = "pydantic_core-2.41.5-pp310-pypy310_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:c8d8b4eb992936023be7dee581270af5c6e0697a8559895f527f5b7105ecd36a"}, + {file = "pydantic_core-2.41.5-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:242a206cd0318f95cd21bdacff3fcc3aab23e79bba5cac3db5a841c9ef9c6963"}, + {file = "pydantic_core-2.41.5-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:d3a978c4f57a597908b7e697229d996d77a6d3c94901e9edee593adada95ce1a"}, + {file = "pydantic_core-2.41.5-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:b2379fa7ed44ddecb5bfe4e48577d752db9fc10be00a6b7446e9663ba143de26"}, + {file = "pydantic_core-2.41.5-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:266fb4cbf5e3cbd0b53669a6d1b039c45e3ce651fd5442eff4d07c2cc8d66808"}, + {file = "pydantic_core-2.41.5-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58133647260ea01e4d0500089a8c4f07bd7aa6ce109682b1426394988d8aaacc"}, + {file = "pydantic_core-2.41.5-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:287dad91cfb551c363dc62899a80e9e14da1f0e2b6ebde82c806612ca2a13ef1"}, + {file = "pydantic_core-2.41.5-pp311-pypy311_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:03b77d184b9eb40240ae9fd676ca364ce1085f203e1b1256f8ab9984dca80a84"}, + {file = "pydantic_core-2.41.5-pp311-pypy311_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:a668ce24de96165bb239160b3d854943128f4334822900534f2fe947930e5770"}, + {file = "pydantic_core-2.41.5-pp311-pypy311_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f14f8f046c14563f8eb3f45f499cc658ab8d10072961e07225e507adb700e93f"}, + {file = "pydantic_core-2.41.5-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:56121965f7a4dc965bff783d70b907ddf3d57f6eba29b6d2e5dabfaf07799c51"}, + {file = "pydantic_core-2.41.5.tar.gz", hash = "sha256:08daa51ea16ad373ffd5e7606252cc32f07bc72b28284b6bc9c6df804816476e"}, +] + +[package.dependencies] +typing-extensions = ">=4.14.1" + +[[package]] +name = "pydantic-settings" +version = "2.12.0" +description = "Settings management using Pydantic" +optional = false +python-versions = ">=3.10" +files = [ + {file = "pydantic_settings-2.12.0-py3-none-any.whl", hash = "sha256:fddb9fd99a5b18da837b29710391e945b1e30c135477f484084ee513adb93809"}, + {file = "pydantic_settings-2.12.0.tar.gz", hash = "sha256:005538ef951e3c2a68e1c08b292b5f2e71490def8589d4221b95dab00dafcfd0"}, +] + +[package.dependencies] +pydantic = ">=2.7.0" +python-dotenv = ">=0.21.0" +typing-inspection = ">=0.4.0" + +[package.extras] +aws-secrets-manager = ["boto3 (>=1.35.0)", "boto3-stubs[secretsmanager]"] +azure-key-vault = ["azure-identity (>=1.16.0)", "azure-keyvault-secrets (>=4.8.0)"] +gcp-secret-manager = ["google-cloud-secret-manager (>=2.23.1)"] +toml = ["tomli (>=2.0.1)"] +yaml = ["pyyaml (>=6.0.1)"] + +[[package]] +name = "pygments" +version = "2.19.2" +description = "Pygments is a syntax highlighting package written in Python." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b"}, + {file = "pygments-2.19.2.tar.gz", hash = "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887"}, +] + +[package.extras] +windows-terminal = ["colorama (>=0.4.6)"] + +[[package]] +name = "pyjwt" +version = "2.10.1" +description = "JSON Web Token implementation in Python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "PyJWT-2.10.1-py3-none-any.whl", hash = "sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb"}, + {file = "pyjwt-2.10.1.tar.gz", hash = "sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953"}, +] + +[package.extras] +crypto = ["cryptography (>=3.4.0)"] +dev = ["coverage[toml] (==5.0.4)", "cryptography (>=3.4.0)", "pre-commit", "pytest (>=6.0.0,<7.0.0)", "sphinx", "sphinx-rtd-theme", "zope.interface"] +docs = ["sphinx", "sphinx-rtd-theme", "zope.interface"] +tests = ["coverage[toml] (==5.0.4)", "pytest (>=6.0.0,<7.0.0)"] + +[[package]] +name = "pyotp" +version = "2.9.0" +description = "Python One Time Password Library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pyotp-2.9.0-py3-none-any.whl", hash = "sha256:81c2e5865b8ac55e825b0358e496e1d9387c811e85bb40e71a3b29b288963612"}, + {file = "pyotp-2.9.0.tar.gz", hash = "sha256:346b6642e0dbdde3b4ff5a930b664ca82abfa116356ed48cc42c7d6590d36f63"}, +] + +[package.extras] +test = ["coverage", "mypy", "ruff", "wheel"] + +[[package]] +name = "pytest" +version = "8.4.2" +description = "pytest: simple powerful testing with Python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pytest-8.4.2-py3-none-any.whl", hash = "sha256:872f880de3fc3a5bdc88a11b39c9710c3497a547cfa9320bc3c5e62fbf272e79"}, + {file = "pytest-8.4.2.tar.gz", hash = "sha256:86c0d0b93306b961d58d62a4db4879f27fe25513d4b969df351abdddb3c30e01"}, +] + +[package.dependencies] +colorama = {version = ">=0.4", markers = "sys_platform == \"win32\""} +iniconfig = ">=1" +packaging = ">=20" +pluggy = ">=1.5,<2" +pygments = ">=2.7.2" + +[package.extras] +dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "requests", "setuptools", "xmlschema"] + +[[package]] +name = "pytest-nhsd-apim" +version = "5.0.6" +description = "Pytest plugin accessing NHSDigital's APIM proxies" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "pytest_nhsd_apim-5.0.6-py3-none-any.whl", hash = "sha256:b562297c62594275dcce5b08187d7cea4f56e2704f2354f1beb80c8f3db8202e"}, + {file = "pytest_nhsd_apim-5.0.6.tar.gz", hash = "sha256:77be049fe6f840c7b37bb7607ee1650ef6cea17806c29051eab5721c6b272be4"}, +] + +[package.dependencies] +Authlib = ">=1.3.1,<2.0.0" +cryptography = ">42.0.0" +lxml = ">=5.3.1,<6.0.0" +pycryptodome = ">=3.20.0,<4.0.0" +pydantic = ">=2.9.2,<3.0.0" +pydantic-settings = ">=2.2.1,<3.0.0" +PyJWT = ">=2.8.0,<3.0.0" +pyotp = ">=2.9.0,<3.0.0" +pytest = ">=8.2.0,<9.0.0" +requests = ">=2.32.0,<3.0.0" +toml = ">=0.10.2,<0.11.0" +typing-extensions = ">=4.11.0,<5.0.0" +wheel = ">=0.37.1,<0.39.0" + +[[package]] +name = "python-dotenv" +version = "1.2.1" +description = "Read key-value pairs from a .env file and set them as environment variables" +optional = false +python-versions = ">=3.9" +files = [ + {file = "python_dotenv-1.2.1-py3-none-any.whl", hash = "sha256:b81ee9561e9ca4004139c6cbba3a238c32b03e4894671e181b671e8cb8425d61"}, + {file = "python_dotenv-1.2.1.tar.gz", hash = "sha256:42667e897e16ab0d66954af0e60a9caa94f0fd4ecf3aaf6d2d260eec1aa36ad6"}, +] + +[package.extras] +cli = ["click (>=5.0)"] + +[[package]] +name = "requests" +version = "2.32.5" +description = "Python HTTP for Humans." +optional = false +python-versions = ">=3.9" +files = [ + {file = "requests-2.32.5-py3-none-any.whl", hash = "sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6"}, + {file = "requests-2.32.5.tar.gz", hash = "sha256:dbba0bac56e100853db0ea71b82b4dfd5fe2bf6d3754a8893c3af500cec7d7cf"}, +] + +[package.dependencies] +certifi = ">=2017.4.17" +charset_normalizer = ">=2,<4" +idna = ">=2.5,<4" +urllib3 = ">=1.21.1,<3" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] + +[[package]] +name = "toml" +version = "0.10.2" +description = "Python Library for Tom's Obvious, Minimal Language" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, + {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, +] + +[[package]] +name = "typing-extensions" +version = "4.15.0" +description = "Backported and Experimental Type Hints for Python 3.9+" +optional = false +python-versions = ">=3.9" +files = [ + {file = "typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548"}, + {file = "typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466"}, +] + +[[package]] +name = "typing-inspection" +version = "0.4.2" +description = "Runtime typing introspection tools" +optional = false +python-versions = ">=3.9" +files = [ + {file = "typing_inspection-0.4.2-py3-none-any.whl", hash = "sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7"}, + {file = "typing_inspection-0.4.2.tar.gz", hash = "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464"}, +] + +[package.dependencies] +typing-extensions = ">=4.12.0" + +[[package]] +name = "urllib3" +version = "2.5.0" +description = "HTTP library with thread-safe connection pooling, file post, and more." +optional = false +python-versions = ">=3.9" +files = [ + {file = "urllib3-2.5.0-py3-none-any.whl", hash = "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc"}, + {file = "urllib3-2.5.0.tar.gz", hash = "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760"}, +] + +[package.extras] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "wheel" +version = "0.38.4" +description = "A built-package format for Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "wheel-0.38.4-py3-none-any.whl", hash = "sha256:b60533f3f5d530e971d6737ca6d58681ee434818fab630c83a734bb10c083ce8"}, + {file = "wheel-0.38.4.tar.gz", hash = "sha256:965f5259b566725405b05e7cf774052044b1ed30119b5d586b2703aafe8719ac"}, +] + +[package.extras] +test = ["pytest (>=3.0.0)"] + +[metadata] +lock-version = "2.0" +python-versions = "^3.12" +content-hash = "c183564b3e80b78d90779d28724d530d63869f1e56415eb3925a958c5d9cdd55" diff --git a/scripts/pyproject.toml b/scripts/pyproject.toml new file mode 100644 index 00000000..57fa394e --- /dev/null +++ b/scripts/pyproject.toml @@ -0,0 +1,13 @@ +[tool.poetry] +name = "scripts" +readme = "README.md" +package-mode = false + +[tool.poetry.dependencies] +python = "^3.12" +pytest-nhsd-apim = "^5.0.0" + + +[build-system] +requires = ["poetry-core"] +build-backend = "poetry.core.masonry.api" From 348cc4d2b44cc6a31b3c582787dc4c4fc76a9831 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Tue, 2 Dec 2025 17:25:55 +0000 Subject: [PATCH 07/15] NPA-5880: Added info about scripts and difference between NAM and NPS get consent tests to Postman collection --- ...ervice.integration.postman_collection.json | 190 +++++------------- 1 file changed, 51 insertions(+), 139 deletions(-) diff --git a/postman/validated_relationship_service.integration.postman_collection.json b/postman/validated_relationship_service.integration.postman_collection.json index 34867351..ea679bd8 100644 --- a/postman/validated_relationship_service.integration.postman_collection.json +++ b/postman/validated_relationship_service.integration.postman_collection.json @@ -2,7 +2,7 @@ "info": { "_postman_id": "c3ee07a1-47e5-43f7-96f9-5e56d403af45", "name": "Validated Relationship Service - Integration", - "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `private_key`\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `app_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value`\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp/emis_(nhs_number)_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\nPre-requisites:\n\n- Get access to the authorization scripts from VRS by speaking to your onboarding contact.\n \n\nSteps:\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", + "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `private_key`\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `app_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value`\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp/emis_(nhs_number)_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\n##### Pre-requisites\n\nAccess the token generation scripts from the [validated-relationships-service-api repo](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts):\n\n- get_app_access_token_int.py - for app restricted authorization\n \n- get_cis2_access_token_int.py - for CIS2 authorization\n \n- get_nhs_login_access_token_int.py - for Login user authorization\n \n\nSee the [README](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts/README.md) for information about how to run them and what environment variables are needed.\n\n##### Steps\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "_exporter_id": "18067099", "_collection_link": "https://www.postman.com/lunar-crescent-672573/workspace/validated-relationship-service-pre-prod-20-11-2025/collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=share&source=collection_link&creator=18067099" @@ -179,7 +179,7 @@ } ] }, - "description": "## Example scenario\n\n**Given** proxy roles exist for a performer (proxy) in the National Proxy Store (NPS) \n**When** a GET /Consent request is sent with the performer identifier \n**Then** the proxy roles in NPS are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + "description": "This request and its examples will only retrieve proxy roles from the National Proxy Store and not directly from GPIT suppliers via NAM.\n\nSee folder-level docs for more info.\n\n## Example scenario\n\n**Given** proxy roles exist for a performer (proxy) in the National Proxy Store (NPS) \n**When** a GET /Consent request is sent with the performer identifier \n**Then** the proxy roles in NPS are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." }, "response": [ { @@ -189,12 +189,12 @@ "header": [ { "key": "X-Request-ID", - "value": "74302b29-5251-4fea-a613-018d6403392b", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "249327af-3b5d-4cdb-8a5a-1fa148865d87", + "value": "{{$guid}}", "type": "text" }, { @@ -210,19 +210,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9736898148", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898148", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -938,7 +930,7 @@ } ] }, - "description": "## Example scenario\n\n**Given** proxy roles exist for a patient in the National Proxy Store (NPS) \n**When** a GET /Consent request is sent with the patient identifier \n**Then** the proxy roles in NPS are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + "description": "This request and its examples will only retrieve proxy roles from the National Proxy Store and not directly from GPIT suppliers via NAM.\n\nSee folder level docs for more info.\n\n## Example scenario\n\n**Given** proxy roles exist for a patient in the National Proxy Store (NPS) \n**When** a GET /Consent request is sent with the patient identifier \n**Then** the proxy roles in NPS are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." }, "response": [ { @@ -948,12 +940,12 @@ "header": [ { "key": "X-Request-ID", - "value": "253b12b6-c608-47f3-b9f1-77b0a7b2489d", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "e6fb51de-1bf5-4421-9426-6da603ed5b65", + "value": "{{$guid}}", "type": "text" }, { @@ -969,19 +961,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient:identifier=9736898644", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898644", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -1658,7 +1642,7 @@ } ] }, - "description": "## Example scenario\n\n**Given** proxy roles exist for a patient in the National Proxy Store (NPS) \n**When** a GET /Consent request is sent with the performer and patient identifier \n**Then** a single proxy role from NPS is returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + "description": "This request and its examples will only retrieve proxy roles from the National Proxy Store and not directly from GPIT suppliers via NAM.\n\nSee folder level docs for more info.\n\n## Example scenario\n\n**Given** proxy roles exist for a patient in the National Proxy Store (NPS) \n**When** a GET /Consent request is sent with the performer and patient identifier \n**Then** a single proxy role from NPS is returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." }, "response": [ { @@ -1668,12 +1652,12 @@ "header": [ { "key": "X-Request-ID", - "value": "44ea037d-996e-4d37-b981-8ccc70283ab1", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "90a6c9dd-1b7c-4810-9cfb-3d12acdebada", + "value": "{{$guid}}", "type": "text" }, { @@ -1689,19 +1673,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9736898121&patient:identifier=9736898644", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898121&patient:identifier=9736898644", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -2339,7 +2315,7 @@ } ] }, - "description": "## Example scenario\n\n**Given** proxy roles exist for a patient/performer in a GPIT system \n**And** no proxy roles exist in the National Proxy Store (NPS) for the patient/performer \n**When** a GET /Consent request is sent with the performer/patient identifier \n**Then** the proxy roles from GPIT are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." + "description": "This request and its examples will only retrieve proxy roles directly from GPIT suppliers via NAM and not from the National Proxy Store.\n\nSee folder level docs for more info.\n\n## Example scenario\n\n**Given** proxy roles exist for a patient/performer in a GPIT system \n**And** no proxy roles exist in the National Proxy Store (NPS) for the patient/performer \n**When** a GET /Consent request is sent with the performer/patient identifier \n**Then** the proxy roles from GPIT are returned\n\n## Authorization\n\nPlease see the folder overview for details of how to generate tokens for this endpoint." }, "response": [ { @@ -2349,17 +2325,17 @@ "header": [ { "key": "X-Request-ID", - "value": "613cee6a-7e22-453d-90b4-16eb4cbea217", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "211d9a6a-fe7a-4dde-93f0-e8ef813bccc8", + "value": "{{$guid}}", "type": "text" }, { "key": "X-IM1-Connection-Params", - "value": "•••••••;A82648", + "value": "{{tpp_9674998535_access_token}};A82648", "type": "text" }, { @@ -2370,19 +2346,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9674998535&_include=Consent:performer&_include=Consent:patient", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?performer:identifier=9674998535&_include=Consent:performer&_include=Consent:patient", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -2816,12 +2784,12 @@ "header": [ { "key": "X-Request-ID", - "value": "911c6d29-bbeb-4e37-a253-9fad44e9de8c", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "667f4355-7cdc-49cd-9a83-09b52ce09839", + "value": "{{$guid}}", "type": "text" }, { @@ -2837,19 +2805,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient:identifier=9736898199", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898199", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -2979,12 +2939,12 @@ "header": [ { "key": "X-Request-ID", - "value": "4f076df1-8cb6-4bb7-b45e-f7bb60e57ca6", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "ffcc9ca5-75ce-41cd-b8fd-570a40e6b898", + "value": "{{$guid}}", "type": "text" }, { @@ -3000,19 +2960,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient:identifier=9736898199&status=test", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?patient:identifier=9736898199&status=test", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -3146,12 +3098,12 @@ "header": [ { "key": "X-Request-ID", - "value": "5f4bc40f-fd82-4866-9d92-92a4ee37dcf3", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "b3b606f6-1f1d-4a23-979f-582ed92f5027", + "value": "{{$guid}}", "type": "text" }, { @@ -3167,19 +3119,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9736898148&_include=Consent:test", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898148&_include=Consent:test", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -3309,12 +3253,12 @@ "header": [ { "key": "X-Request-ID", - "value": "02692231-4b75-4417-9b5e-f650c211bb48", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "4eca6665-d20c-4781-b9ce-7411743d41bd", + "value": "{{$guid}}", "type": "text" }, { @@ -3330,19 +3274,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=90000000", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?performer:identifier=90000000", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -3468,12 +3404,12 @@ "header": [ { "key": "X-Request-ID", - "value": "52cc6c4c-1233-43d9-a271-15cd6bbe599a", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "b1bf848a-4f5d-4397-b970-d2d6b2aa1233", + "value": "{{$guid}}", "type": "text" }, { @@ -3489,19 +3425,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=invalid|9736898199", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?performer:identifier=invalid|9736898199", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -3621,12 +3549,12 @@ "header": [ { "key": "X-Request-ID", - "value": "ed167870-7087-45f7-b274-23c91043ac92", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "39ff0b60-969e-4583-9bc0-605ccf179cbb", + "value": "{{$guid}}", "type": "text" }, { @@ -3642,19 +3570,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent", - "protocol": "https", + "raw": "{{api_base_url}}/Consent", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ] } @@ -3774,12 +3694,12 @@ "header": [ { "key": "X-Request-ID", - "value": "7f1b75d4-0e4c-4945-904c-d5db0073aae9", + "value": "{{$guid}}", "type": "text" }, { "key": "X-Correlation-ID", - "value": "39a01e38-6e47-465a-afbb-cf8153598699", + "value": "{{$guid}}", "type": "text" }, { @@ -3795,19 +3715,11 @@ } ], "url": { - "raw": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer:identifier=9736898229", - "protocol": "https", + "raw": "{{api_base_url}}/Consent?performer:identifier=9736898229", "host": [ - "int", - "api", - "service", - "nhs", - "uk" + "{{api_base_url}}" ], "path": [ - "validated-relationships", - "FHIR", - "R4", "Consent" ], "query": [ @@ -3869,7 +3781,7 @@ ] } ], - "description": "## Authorization\n\n### Allowed auth methods\n\n- App restricted token\n \n- NHS Login token - Auth with test user `9730675929`\n \n- CIS2 token - Auth with test user `656005750108`\n \n\nSee collection level documentation for info about how to get authorization tokens.\n\n## Test headers\n\nIn some of the requests within this folder, the `X-Test-Routing-Flag` header is used. This header is used in the VRS pre-prod environments to control where the proxy roles are retrieved from. It is intended to be used for testing purposes only. Omission of this header will cause the default routing settings for the given environment to be followed instead.", + "description": "## Authorization\n\n### Allowed auth methods\n\n- App restricted token\n \n- NHS Login token - Auth with test user `9730675929`\n \n- CIS2 token - Auth with test user `656005750108`\n \n\nSee collection level documentation for info about how to get authorization tokens.\n\n## NPS and NAM routing\n\nYou will notice that there are 'Valid request - NPS' and 'Valid request - NAM' requests and examples within this folder. These are set up to retrieve the proxy roles from different data sources:\n\n- **Valid request - NPS**: Retrieves the roles from the National Proxy Store (NPS) only. Following the eventual migration of all proxy and related person data from GPIT to NPS, this will become the only route for all requests.\n \n- **Valid request - NAM:** Retrives the roles as related person data from the GPIT suppliers via NAM without checking if any exist in NPS first. This requires specific connection parameters to authorise with the GPIT supplier systems\n \n\nThis routing is controlled in the requests by the `X-Test-Routing-Flag` header. This header is used in the VRS pre-prod environments to control where the proxy roles are retrieved from. It is intended to be used for testing purposes only. Omission of this header will cause the default routing settings for the given environment to be followed instead. This is typically for roles to be retrieved from NPS, with NAM used as a fallback if none are found.", "auth": { "type": "bearer", "bearer": [ From 6aa7c6d6a931b8f271751e09e4b9739bae7ae3e0 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Tue, 2 Dec 2025 17:32:41 +0000 Subject: [PATCH 08/15] NPA-5880: formatting fixes for scripts --- scripts/get_app_access_token_int.py | 2 +- scripts/get_cis2_access_token_int.py | 2 +- scripts/get_nhs_login_access_token_int.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/get_app_access_token_int.py b/scripts/get_app_access_token_int.py index 68999647..d08b6e7d 100644 --- a/scripts/get_app_access_token_int.py +++ b/scripts/get_app_access_token_int.py @@ -9,7 +9,7 @@ private_key = getenv("APPLICATION_CLIENT_PRIVATE_KEY").replace("\\n", "\n") config = ClientCredentialsConfig( environment=getenv("APIGEE_ENVIRONMENT"), - identity_service_base_url=f"https://{getenv("APIGEE_ENVIRONMENT")}.api.service.nhs.uk/oauth2-mock", + identity_service_base_url=f"https://{getenv('APIGEE_ENVIRONMENT')}.api.service.nhs.uk/oauth2-mock", client_id=client_id, jwt_private_key=private_key, jwt_kid=kid, diff --git a/scripts/get_cis2_access_token_int.py b/scripts/get_cis2_access_token_int.py index cf1ab35f..8d496ceb 100644 --- a/scripts/get_cis2_access_token_int.py +++ b/scripts/get_cis2_access_token_int.py @@ -8,7 +8,7 @@ scope = "nhs-cis2" config = AuthorizationCodeConfig( environment=getenv("APIGEE_ENVIRONMENT"), - identity_service_base_url=f"https://{getenv("APIGEE_ENVIRONMENT")}.api.service.nhs.uk/oauth2-mock", + identity_service_base_url=f"https://{getenv('APIGEE_ENVIRONMENT')}.api.service.nhs.uk/oauth2-mock", callback_url="https://oauth.pstmn.io/v1/browser-callback", client_id=getenv("APPLICATION_CLIENT_ID"), client_secret=getenv("APPLICATION_CLIENT_SECRET"), diff --git a/scripts/get_nhs_login_access_token_int.py b/scripts/get_nhs_login_access_token_int.py index 54c517fd..fa2d3f2d 100644 --- a/scripts/get_nhs_login_access_token_int.py +++ b/scripts/get_nhs_login_access_token_int.py @@ -8,7 +8,7 @@ scope = "nhs-login" config = AuthorizationCodeConfig( environment=getenv("APIGEE_ENVIRONMENT"), - identity_service_base_url=f"https://{getenv("APIGEE_ENVIRONMENT")}.api.service.nhs.uk/oauth2-mock", + identity_service_base_url=f"https://{getenv('APIGEE_ENVIRONMENT')}.api.service.nhs.uk/oauth2-mock", callback_url="https://oauth.pstmn.io/v1/browser-callback", client_id=getenv("APPLICATION_CLIENT_ID"), client_secret=getenv("APPLICATION_CLIENT_SECRET"), From 915ae974d069e6db21b16f03aa3338be06e928c9 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Wed, 3 Dec 2025 16:53:53 +0000 Subject: [PATCH 09/15] NPA-5880: Tweaked docs in Postman --- ...ted_relationship_service.integration.postman_collection.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/postman/validated_relationship_service.integration.postman_collection.json b/postman/validated_relationship_service.integration.postman_collection.json index ea679bd8..415cb361 100644 --- a/postman/validated_relationship_service.integration.postman_collection.json +++ b/postman/validated_relationship_service.integration.postman_collection.json @@ -2,7 +2,7 @@ "info": { "_postman_id": "c3ee07a1-47e5-43f7-96f9-5e56d403af45", "name": "Validated Relationship Service - Integration", - "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `private_key`\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `app_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value`\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp/emis_(nhs_number)_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\n##### Pre-requisites\n\nAccess the token generation scripts from the [validated-relationships-service-api repo](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts):\n\n- get_app_access_token_int.py - for app restricted authorization\n \n- get_cis2_access_token_int.py - for CIS2 authorization\n \n- get_nhs_login_access_token_int.py - for Login user authorization\n \n\nSee the [README](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts/README.md) for information about how to run them and what environment variables are needed.\n\n##### Steps\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", + "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `private_key`\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from AWS Secrets Manager or requested to be sent securely from a member of the VRS team. This is not the same as the private key in the NHS Developer Account portal.\n\n#### `app_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value`\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp/emis_(nhs_number)_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\n##### Pre-requisites\n\nAccess the token generation scripts from the [validated-relationships-service-api repo](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts):\n\n- get_app_access_token_int.py - for app restricted authorization\n \n- get_cis2_access_token_int.py - for CIS2 authorization\n \n- get_nhs_login_access_token_int.py - for Login user authorization\n \n\nSee the [README](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts/README.md) for information about how to run them and what environment variables are needed.\n\n##### Steps\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "_exporter_id": "18067099", "_collection_link": "https://www.postman.com/lunar-crescent-672573/workspace/validated-relationship-service-pre-prod-20-11-2025/collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=share&source=collection_link&creator=18067099" From 49c7cf785b3294e1cc3752aba7dc0b6a0b1b13e6 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Thu, 4 Dec 2025 11:30:59 +0000 Subject: [PATCH 10/15] NPA-5880: Updated proxy roles in collection --- ...ervice.integration.postman_collection.json | 690 +++++++++++++----- 1 file changed, 499 insertions(+), 191 deletions(-) diff --git a/postman/validated_relationship_service.integration.postman_collection.json b/postman/validated_relationship_service.integration.postman_collection.json index 415cb361..6855a7d8 100644 --- a/postman/validated_relationship_service.integration.postman_collection.json +++ b/postman/validated_relationship_service.integration.postman_collection.json @@ -227,11 +227,11 @@ }, "status": "OK", "code": 200, - "_postman_previewlanguage": null, + "_postman_previewlanguage": "json", "header": [ { "key": "Date", - "value": "Thu, 20 Nov 2025 10:17:51 GMT" + "value": "Thu, 04 Dec 2025 10:48:19 GMT" }, { "key": "Content-Type", @@ -239,7 +239,7 @@ }, { "key": "Content-Length", - "value": "4826" + "value": "3486" }, { "key": "Connection", @@ -247,23 +247,23 @@ }, { "key": "x-amzn-RequestId", - "value": "817f93ea-41cd-4326-a43c-d1c6faea9627" + "value": "cf3a99a3-7592-4968-893c-e443d6cb27c8" }, { "key": "x-amz-apigw-id", - "value": "UVmf9EbBLPEFnPA=" + "value": "VD0FoHiurPEFXqQ=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-691eeacc-ca87d12c7343c6f10a62f024" + "value": "Root=1-693166f0-1bb8c61dd3aa101687d0b754" }, { "key": "X-Request-ID", - "value": "b2c08a0a-2c7d-430e-ae5b-7c89f48fd81e" + "value": "d3ec5ec8-088f-4db6-8342-1a21d2a2af16" }, { "key": "X-Correlation-ID", - "value": "bac08e0e-5ebb-447b-ae3d-69d712fd42f8" + "value": "656bfa49-711b-48c4-9427-1ed8fa34260f" }, { "key": "Strict-Transport-Security", @@ -271,7 +271,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-20T10:17:51Z\",\n \"total\": 4,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9730675929\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2ff700ea-f15d-4bf3-a29b-4227b7ea5955\",\n \"resource\": {\n \"id\": \"2ff700ea-f15d-4bf3-a29b-4227b7ea5955\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676070\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"GUARD\",\n \"display\": \"Guardian\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"start\": \"2025-02-11\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/1d87825f-5cca-4222-a4d6-cd273cec90d8\",\n \"resource\": {\n \"id\": \"1d87825f-5cca-4222-a4d6-cd273cec90d8\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-18T13:11:34Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676186\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"period\": {}\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"proposed\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ac66bbfb-2ce3-4bd4-8f48-628df78c652c\",\n \"resource\": {\n \"id\": \"ac66bbfb-2ce3-4bd4-8f48-628df78c652c\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676399\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"GUARD\",\n \"display\": \"Guardian\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"start\": \"2025-02-11\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/1ffc1ce2-b306-4d27-ba23-a936ff3a2ba0\",\n \"resource\": {\n \"id\": \"1ffc1ce2-b306-4d27-ba23-a936ff3a2ba0\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-18T11:56:24Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675422\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"period\": {}\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"proposed\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T10:48:19Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"resource\": {\n \"id\": \"7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:46:27Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"resource\": {\n \"id\": \"b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:47:43Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Include patient details", @@ -326,7 +326,7 @@ "header": [ { "key": "Date", - "value": "Thu, 27 Nov 2025 16:59:00 GMT" + "value": "Thu, 04 Dec 2025 10:50:25 GMT" }, { "key": "Content-Type", @@ -334,7 +334,7 @@ }, { "key": "Content-Length", - "value": "6271" + "value": "6923" }, { "key": "Connection", @@ -342,23 +342,23 @@ }, { "key": "x-amzn-RequestId", - "value": "fed2e423-3543-4616-a2ee-7edb4c91da82" + "value": "edd035fd-2cdb-4c7a-a55c-a55e6faf5743" }, { "key": "x-amz-apigw-id", - "value": "UtlznGeWLPEFqOA=" + "value": "VD0ZXFA2LPEFYqg=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69288349-e8e52575b520a528e453a878" + "value": "Root=1-6931676e-74035c00139aae000a60b5d7" }, { "key": "X-Request-ID", - "value": "2144020f-05ff-4da9-9fd1-751931febcc4" + "value": "64b0f06f-a35e-44bb-baf4-33de94895236" }, { "key": "X-Correlation-ID", - "value": "a96f8392-3dff-48e1-a1b4-b3146b88637a" + "value": "6a95b411-9936-49bb-bbcb-8e6776417762" }, { "key": "Strict-Transport-Security", @@ -366,7 +366,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T16:59:00Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7421566f-6667-4f91-b2bd-179e514ae539\",\n \"resource\": {\n \"id\": \"7421566f-6667-4f91-b2bd-179e514ae539\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898717\",\n \"resource\": {\n \"id\": \"9736898717\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"16654057\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"YoGEf\",\n \"line\": [\n \"GLENVILLE\",\n \"FERRY ROAD\",\n \"GOXHILL\",\n \"BARROW-UPON-HUMBER\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2016-04-09\"\n },\n \"postalCode\": \"DN19 7JY\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2010-05-31\",\n \"gender\": \"male\",\n \"generalPractitioner\": [\n {\n \"id\": \"bYoHa\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2016-02-12\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CASH\",\n \"given\": [\n \"Jacob\",\n \"Chas\"\n ],\n \"period\": {\n \"start\": \"2025-07-22\"\n },\n \"prefix\": [\n \"MR\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T10:50:25Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"resource\": {\n \"id\": \"7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:46:27Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"resource\": {\n \"id\": \"b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:47:43Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898717\",\n \"resource\": {\n \"id\": \"9736898717\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"16654057\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"YoGEf\",\n \"line\": [\n \"GLENVILLE\",\n \"FERRY ROAD\",\n \"GOXHILL\",\n \"BARROW-UPON-HUMBER\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2016-04-09\"\n },\n \"postalCode\": \"DN19 7JY\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2010-05-31\",\n \"gender\": \"male\",\n \"generalPractitioner\": [\n {\n \"id\": \"bYoHa\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2016-02-12\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CASH\",\n \"given\": [\n \"Jacob\",\n \"Chas\"\n ],\n \"period\": {\n \"start\": \"2025-07-22\"\n },\n \"prefix\": [\n \"MR\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Include performer details", @@ -421,7 +421,7 @@ "header": [ { "key": "Date", - "value": "Thu, 27 Nov 2025 17:00:02 GMT" + "value": "Thu, 04 Dec 2025 10:50:45 GMT" }, { "key": "Content-Type", @@ -429,7 +429,7 @@ }, { "key": "Content-Length", - "value": "4637" + "value": "5289" }, { "key": "Connection", @@ -437,23 +437,23 @@ }, { "key": "x-amzn-RequestId", - "value": "4edca28f-29b2-48f0-9435-716fe90161a3" + "value": "60649be0-6363-4601-b792-d631af45a966" }, { "key": "x-amz-apigw-id", - "value": "Utl-uG4ZLPEFseg=" + "value": "VD0cyFTYLPEF-Fg=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69288391-9befe227edf10feb023c6693" + "value": "Root=1-69316784-cee1c757e6d4e43fb4837684" }, { "key": "X-Request-ID", - "value": "72a98783-3c7a-457c-b772-7a8732a4415f" + "value": "8a113b57-8af9-4d34-b300-100c84059319" }, { "key": "X-Correlation-ID", - "value": "5d31f5af-735b-4538-bb71-3138c12155dc" + "value": "a3683a8c-6172-44a7-8410-0e78a705907b" }, { "key": "Strict-Transport-Security", @@ -461,7 +461,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T17:00:01Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7421566f-6667-4f91-b2bd-179e514ae539\",\n \"resource\": {\n \"id\": \"7421566f-6667-4f91-b2bd-179e514ae539\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/UwTCq\",\n \"resource\": {\n \"id\": \"UwTCq\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T10:50:45Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"resource\": {\n \"id\": \"7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:46:27Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"resource\": {\n \"id\": \"b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:47:43Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/UwTCq\",\n \"resource\": {\n \"id\": \"UwTCq\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Include patient and performer details", @@ -520,7 +520,7 @@ "header": [ { "key": "Date", - "value": "Thu, 27 Nov 2025 17:00:23 GMT" + "value": "Thu, 04 Dec 2025 10:51:06 GMT" }, { "key": "Content-Type", @@ -528,7 +528,7 @@ }, { "key": "Content-Length", - "value": "8074" + "value": "8726" }, { "key": "Connection", @@ -536,23 +536,23 @@ }, { "key": "x-amzn-RequestId", - "value": "1dd03d34-18e2-446d-b8a2-ff44b13892ea" + "value": "2b36e22f-2649-44c9-b3ce-929ea840df0f" }, { "key": "x-amz-apigw-id", - "value": "UtmCIH2-rPEFYkg=" + "value": "VD0gJFjQLPEF_Ew=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-692883a6-4e406bc5899e2ce162084187" + "value": "Root=1-6931679a-aa7dfa232b694d8fdbd9823f" }, { "key": "X-Request-ID", - "value": "4add4408-494d-498d-b792-f4d19ea859d9" + "value": "d5743541-7330-4347-b9c7-9067feb4b144" }, { "key": "X-Correlation-ID", - "value": "0ba25f8c-d38c-4e07-8f0a-9ce352650ffe" + "value": "af030657-aad8-45f4-9c70-85e4755a189f" }, { "key": "Strict-Transport-Security", @@ -560,7 +560,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T17:00:23Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7421566f-6667-4f91-b2bd-179e514ae539\",\n \"resource\": {\n \"id\": \"7421566f-6667-4f91-b2bd-179e514ae539\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898717\",\n \"resource\": {\n \"id\": \"9736898717\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"16654057\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"YoGEf\",\n \"line\": [\n \"GLENVILLE\",\n \"FERRY ROAD\",\n \"GOXHILL\",\n \"BARROW-UPON-HUMBER\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2016-04-09\"\n },\n \"postalCode\": \"DN19 7JY\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2010-05-31\",\n \"gender\": \"male\",\n \"generalPractitioner\": [\n {\n \"id\": \"bYoHa\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2016-02-12\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CASH\",\n \"given\": [\n \"Jacob\",\n \"Chas\"\n ],\n \"period\": {\n \"start\": \"2025-07-22\"\n },\n \"prefix\": [\n \"MR\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/UwTCq\",\n \"resource\": {\n \"id\": \"UwTCq\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T10:51:06Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898148&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"resource\": {\n \"id\": \"7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:46:27Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"resource\": {\n \"id\": \"b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:47:43Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898717\",\n \"resource\": {\n \"id\": \"9736898717\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"16654057\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"YoGEf\",\n \"line\": [\n \"GLENVILLE\",\n \"FERRY ROAD\",\n \"GOXHILL\",\n \"BARROW-UPON-HUMBER\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2016-04-09\"\n },\n \"postalCode\": \"DN19 7JY\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2010-05-31\",\n \"gender\": \"male\",\n \"generalPractitioner\": [\n {\n \"id\": \"bYoHa\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2016-02-12\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CASH\",\n \"given\": [\n \"Jacob\",\n \"Chas\"\n ],\n \"period\": {\n \"start\": \"2025-07-22\"\n },\n \"prefix\": [\n \"MR\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/UwTCq\",\n \"resource\": {\n \"id\": \"UwTCq\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Filtered by status 'inactive'", @@ -615,7 +615,7 @@ "header": [ { "key": "Date", - "value": "Thu, 27 Nov 2025 17:01:01 GMT" + "value": "Thu, 04 Dec 2025 11:09:14 GMT" }, { "key": "Content-Type", @@ -623,7 +623,7 @@ }, { "key": "Content-Length", - "value": "1563" + "value": "1888" }, { "key": "Connection", @@ -631,23 +631,23 @@ }, { "key": "x-amzn-RequestId", - "value": "46dd347f-0ce4-440d-9ce4-b96a810b4af9" + "value": "290a4ffd-6021-435c-af76-8d6c80492b72" }, { "key": "x-amz-apigw-id", - "value": "UtmIHH3arPEFdkg=" + "value": "VD3JoHOkrPEFSoA=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-692883cd-80d85a3fe5c113dfe931e008" + "value": "Root=1-69316bd6-5bd69e7021cf6e4e0696d153" }, { "key": "X-Request-ID", - "value": "68f33554-b98f-4c7c-bf61-c88ac3c91cd7" + "value": "8b8298dc-a9a4-4257-a6b9-f99d5ff65983" }, { "key": "X-Correlation-ID", - "value": "9b3f5b13-dba6-45a2-b7ca-80a7f2f19d5a" + "value": "5af5dfe2-b247-4624-8268-bb4e78593eb3" }, { "key": "Strict-Transport-Security", @@ -655,7 +655,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T17:01:01Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&status=inactive\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/26a38545-0c3c-4627-8db8-d16bde388299\",\n \"resource\": {\n \"id\": \"26a38545-0c3c-4627-8db8-d16bde388299\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898652\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9728570368\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2025-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"inactive\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:09:14Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&status=inactive\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/750cb586-eb9b-46c7-a1a5-711307a087af\",\n \"resource\": {\n \"id\": \"750cb586-eb9b-46c7-a1a5-711307a087af\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:55:53Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898652\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2025-12-05\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"inactive\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Filtered by status 'active' and include patient and performer details", @@ -718,7 +718,7 @@ "header": [ { "key": "Date", - "value": "Thu, 27 Nov 2025 17:01:15 GMT" + "value": "Thu, 04 Dec 2025 11:09:41 GMT" }, { "key": "Content-Type", @@ -726,7 +726,7 @@ }, { "key": "Content-Length", - "value": "4203" + "value": "4528" }, { "key": "Connection", @@ -734,23 +734,23 @@ }, { "key": "x-amzn-RequestId", - "value": "f30e1a7a-c04a-44a4-808d-83039d62cc98" + "value": "44c6f0cf-6bdb-4b96-8889-55ebe68b8c60" }, { "key": "x-amz-apigw-id", - "value": "UtmKRG96rPEFYTw=" + "value": "VD3M5FGYrPEFZVg=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-692883da-d158f7424a5fd14c387b9d82" + "value": "Root=1-69316beb-f2f5e05791f831ed34fb0afa" }, { "key": "X-Request-ID", - "value": "a0d3cef4-ac60-4704-9f71-5eb6bc74777b" + "value": "73bded49-9645-4418-bf08-ebd13d92c2a1" }, { "key": "X-Correlation-ID", - "value": "d71b0826-150e-40d6-9359-6135d9b26ad9" + "value": "15b5d9d5-9909-458a-91c5-64ee20e93a01" }, { "key": "Strict-Transport-Security", @@ -758,7 +758,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-27T17:01:15Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&status=active&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/80bc6669-fbbd-43b0-a29a-c3d09fd35975\",\n \"resource\": {\n \"id\": \"80bc6669-fbbd-43b0-a29a-c3d09fd35975\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9728570368\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2026-11-11\",\n \"start\": \"2025-11-12\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898660\",\n \"resource\": {\n \"id\": \"9736898660\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"19976537\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"pBQDr\",\n \"line\": [\n \"CARLTON\",\n \"VICARAGE LANE\",\n \"REDBOURNE\",\n \"GAINSBOROUGH\",\n \"LINCS\"\n ],\n \"period\": {\n \"start\": \"2025-07-15\"\n },\n \"postalCode\": \"DN21 4QW\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2012-04-24\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"xSEnH\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2024-11-06\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n ],\n \"name\": [\n {\n \"family\": \"GODREY\",\n \"given\": [\n \"Davina\",\n \"Linda\"\n ],\n \"period\": {\n \"start\": \"2017-04-22\"\n },\n \"prefix\": [\n \"MISS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/nVLgl\",\n \"resource\": {\n \"id\": \"nVLgl\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:09:40Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&status=active&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"resource\": {\n \"id\": \"4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:08:46Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-12-05\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898660\",\n \"resource\": {\n \"id\": \"9736898660\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"19976537\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"pBQDr\",\n \"line\": [\n \"CARLTON\",\n \"VICARAGE LANE\",\n \"REDBOURNE\",\n \"GAINSBOROUGH\",\n \"LINCS\"\n ],\n \"period\": {\n \"start\": \"2025-07-15\"\n },\n \"postalCode\": \"DN21 4QW\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2012-04-24\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"xSEnH\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2024-11-06\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n ],\n \"name\": [\n {\n \"family\": \"GODREY\",\n \"given\": [\n \"Davina\",\n \"Linda\"\n ],\n \"period\": {\n \"start\": \"2017-04-22\"\n },\n \"prefix\": [\n \"MISS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/nVLgl\",\n \"resource\": {\n \"id\": \"nVLgl\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" } ] }, @@ -978,11 +978,11 @@ }, "status": "OK", "code": 200, - "_postman_previewlanguage": null, + "_postman_previewlanguage": "json", "header": [ { "key": "Date", - "value": "Thu, 20 Nov 2025 10:17:51 GMT" + "value": "Thu, 04 Dec 2025 11:17:19 GMT" }, { "key": "Content-Type", @@ -990,7 +990,7 @@ }, { "key": "Content-Length", - "value": "4826" + "value": "3484" }, { "key": "Connection", @@ -998,23 +998,23 @@ }, { "key": "x-amzn-RequestId", - "value": "817f93ea-41cd-4326-a43c-d1c6faea9627" + "value": "cd84643e-5789-445f-9d2f-eb53fe6b57c5" }, { "key": "x-amz-apigw-id", - "value": "UVmf9EbBLPEFnPA=" + "value": "VD4VeEsnLPEFmxA=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-691eeacc-ca87d12c7343c6f10a62f024" + "value": "Root=1-69316dbc-851b7fe822d672bb07d0be6d" }, { "key": "X-Request-ID", - "value": "b2c08a0a-2c7d-430e-ae5b-7c89f48fd81e" + "value": "b7120974-233d-4634-80e2-f404e817f80b" }, { "key": "X-Correlation-ID", - "value": "bac08e0e-5ebb-447b-ae3d-69d712fd42f8" + "value": "73e7ab39-f339-4f53-8090-d4320c6a1fc5" }, { "key": "Strict-Transport-Security", @@ -1022,7 +1022,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-20T10:17:51Z\",\n \"total\": 4,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9730675929\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2ff700ea-f15d-4bf3-a29b-4227b7ea5955\",\n \"resource\": {\n \"id\": \"2ff700ea-f15d-4bf3-a29b-4227b7ea5955\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676070\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"GUARD\",\n \"display\": \"Guardian\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"start\": \"2025-02-11\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/1d87825f-5cca-4222-a4d6-cd273cec90d8\",\n \"resource\": {\n \"id\": \"1d87825f-5cca-4222-a4d6-cd273cec90d8\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-18T13:11:34Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676186\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"period\": {}\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"proposed\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ac66bbfb-2ce3-4bd4-8f48-628df78c652c\",\n \"resource\": {\n \"id\": \"ac66bbfb-2ce3-4bd4-8f48-628df78c652c\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730676399\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"GUARD\",\n \"display\": \"Guardian\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"start\": \"2025-02-11\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/1ffc1ce2-b306-4d27-ba23-a936ff3a2ba0\",\n \"resource\": {\n \"id\": \"1ffc1ce2-b306-4d27-ba23-a936ff3a2ba0\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-18T11:56:24Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675422\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9730675929\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"period\": {}\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"proposed\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:17:19Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"resource\": {\n \"id\": \"7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:46:27Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"resource\": {\n \"id\": \"553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:15:26Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Include performer details", @@ -1077,7 +1077,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 11:41:16 GMT" + "value": "Thu, 04 Dec 2025 11:17:45 GMT" }, { "key": "Content-Type", @@ -1085,7 +1085,7 @@ }, { "key": "Content-Length", - "value": "4635" + "value": "5287" }, { "key": "Connection", @@ -1093,23 +1093,23 @@ }, { "key": "x-amzn-RequestId", - "value": "c599df38-faaa-4363-b1bd-0cfbc3e528d9" + "value": "d6ea589d-359b-43a5-ac3d-6b570eec9cac" }, { "key": "x-amz-apigw-id", - "value": "UwKM2Hi3rPEFmOw=" + "value": "VD4YuGlSLPEF7zw=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69298a51-1ca3219b9a6291c76d513db4" + "value": "Root=1-69316dd1-47a064ac1a1d588355c13564" }, { "key": "X-Request-ID", - "value": "ff58bf80-3b76-420f-b33b-1c4e87becb62" + "value": "eb00dad3-5e15-4ade-8ee9-f3597bfab4d3" }, { "key": "X-Correlation-ID", - "value": "e12eaad8-f6f7-473a-a86b-7c4d20bc4ea2" + "value": "a496e8bd-c333-4e87-9927-bbe9ead436a4" }, { "key": "Strict-Transport-Security", @@ -1117,7 +1117,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:41:16Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:17:45Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"resource\": {\n \"id\": \"7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:46:27Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"resource\": {\n \"id\": \"553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:15:26Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Include patient details", @@ -1172,7 +1172,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 10:01:56 GMT" + "value": "Thu, 04 Dec 2025 11:18:02 GMT" }, { "key": "Content-Type", @@ -1180,7 +1180,7 @@ }, { "key": "Content-Length", - "value": "4566" + "value": "5218" }, { "key": "Connection", @@ -1188,23 +1188,23 @@ }, { "key": "x-amzn-RequestId", - "value": "ec58cea8-8bb8-417c-9970-530bd1c83e2f" + "value": "3a81d012-80ef-4350-8d7b-1f8cda1ef809" }, { "key": "x-amz-apigw-id", - "value": "Uv7pfHGgLPEFUVg=" + "value": "VD4cPGnErPEFYsw=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69297309-2bb77dd8b3fb60b4ff8d8da2" + "value": "Root=1-69316de7-bb724d308ffa3272269bfba9" }, { "key": "X-Request-ID", - "value": "bccad6b3-ac2c-4d17-adfb-ad0f0264d1e6" + "value": "ada44c4a-9dcc-4666-a97e-72ebce5630a8" }, { "key": "X-Correlation-ID", - "value": "0056fe7d-6aeb-434b-8ea6-c07afee940de" + "value": "cfa6112c-4235-41a4-9e58-f4f04d4f7614" }, { "key": "Strict-Transport-Security", @@ -1212,7 +1212,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:01:56Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:18:02Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"resource\": {\n \"id\": \"7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:46:27Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"resource\": {\n \"id\": \"553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:15:26Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Include patient and performer details", @@ -1271,7 +1271,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 11:41:36 GMT" + "value": "Thu, 04 Dec 2025 11:18:17 GMT" }, { "key": "Content-Type", @@ -1279,7 +1279,7 @@ }, { "key": "Content-Length", - "value": "6369" + "value": "7021" }, { "key": "Connection", @@ -1287,23 +1287,23 @@ }, { "key": "x-amzn-RequestId", - "value": "367d8579-b057-48f4-9da3-17886483e3ca" + "value": "013f49d1-ffbe-4880-bfd6-1b92d13d08a3" }, { "key": "x-amz-apigw-id", - "value": "UwKRjEZDLPEFutQ=" + "value": "VD4evE6yLPEFZZA=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69298a6f-cec0423593155ba22883c796" + "value": "Root=1-69316df7-175910d69cd894708a0921b9" }, { "key": "X-Request-ID", - "value": "f37245b7-6994-4a6d-8e44-b0a6b7131abb" + "value": "9ce9a6d5-2bd2-4d5e-a984-2c78a457f4d4" }, { "key": "X-Correlation-ID", - "value": "aa061a8a-2391-4887-a15d-dfe675d1b866" + "value": "02eabdf7-0a76-4fec-9c99-306273ea8da5" }, { "key": "Strict-Transport-Security", @@ -1311,7 +1311,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:41:36Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"resource\": {\n \"id\": \"77363c92-8c33-490f-b5c9-9ef81c2cf16f\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"MTH\",\n \"display\": \"Mother\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:18:17Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898644&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"resource\": {\n \"id\": \"7597397b-ac6e-4eb7-b49e-bb1636115d2e\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:46:27Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"resource\": {\n \"id\": \"553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:15:26Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/ZfgKO\",\n \"resource\": {\n \"id\": \"ZfgKO\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Filtered by status 'inactive'", @@ -1366,7 +1366,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 11:41:54 GMT" + "value": "Thu, 04 Dec 2025 11:18:37 GMT" }, { "key": "Content-Type", @@ -1374,7 +1374,7 @@ }, { "key": "Content-Length", - "value": "1560" + "value": "1886" }, { "key": "Connection", @@ -1382,23 +1382,23 @@ }, { "key": "x-amzn-RequestId", - "value": "64d1de7b-aa10-4d16-8d99-26c6475da137" + "value": "595418c1-5c22-46b6-907c-e799e9fdf609" }, { "key": "x-amz-apigw-id", - "value": "UwKUYHcpLPEF5aQ=" + "value": "VD4iFHTWLPEFnHA=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69298a82-8851496dbe88d87c6acde0d3" + "value": "Root=1-69316e0c-b334c67c9e4d72fd5809672a" }, { "key": "X-Request-ID", - "value": "a3e8da6f-1699-4c42-8398-6e1124e9a135" + "value": "e6ad06af-45a7-4f98-92c2-88300871c3bc" }, { "key": "X-Correlation-ID", - "value": "64a41f28-0044-4020-8d12-5433e63a1d4b" + "value": "8d75c837-bd9e-4784-ac40-84322ee4d188" }, { "key": "Strict-Transport-Security", @@ -1406,7 +1406,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:41:54Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898717&status=inactive\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/40ff37fc-bc2e-4229-b86a-94f062154b4b\",\n \"resource\": {\n \"id\": \"40ff37fc-bc2e-4229-b86a-94f062154b4b\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2025-11-25\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"inactive\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:18:37Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898717&status=inactive\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/cf7bc8e6-f8e0-41c5-8d08-1741eee5a256\",\n \"resource\": {\n \"id\": \"cf7bc8e6-f8e0-41c5-8d08-1741eee5a256\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:16:43Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"inactive\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Filtered by status 'active' and include patient and performer details", @@ -1463,10 +1463,53 @@ ] } }, - "_postman_previewlanguage": null, - "header": null, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 04 Dec 2025 11:18:51 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4528" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "bd5079fb-1fc3-428c-ab53-5ba1dfacc510" + }, + { + "key": "x-amz-apigw-id", + "value": "VD4kRHuoLPEF-DQ=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69316e1a-0dc7c19d64d48ad8a86c4518" + }, + { + "key": "X-Request-ID", + "value": "8da5a25e-ef8b-4cec-84c0-81af22e5132f" + }, + { + "key": "X-Correlation-ID", + "value": "ce7840a8-db71-4897-9853-d06c699adca9" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], "cookie": [], - "body": null + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:18:51Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?patient%3Aidentifier=9736898717&status=active&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"resource\": {\n \"id\": \"b22d6068-fe78-40f4-b71a-b916dac48c0b\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:47:43Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898717\",\n \"resource\": {\n \"id\": \"9736898717\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"16654057\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"YoGEf\",\n \"line\": [\n \"GLENVILLE\",\n \"FERRY ROAD\",\n \"GOXHILL\",\n \"BARROW-UPON-HUMBER\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2016-04-09\"\n },\n \"postalCode\": \"DN19 7JY\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2010-05-31\",\n \"gender\": \"male\",\n \"generalPractitioner\": [\n {\n \"id\": \"bYoHa\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2016-02-12\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CASH\",\n \"given\": [\n \"Jacob\",\n \"Chas\"\n ],\n \"period\": {\n \"start\": \"2025-07-22\"\n },\n \"prefix\": [\n \"MR\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/UwTCq\",\n \"resource\": {\n \"id\": \"UwTCq\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" } ] }, @@ -1698,7 +1741,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 10:20:25 GMT" + "value": "Thu, 04 Dec 2025 11:19:27 GMT" }, { "key": "Content-Type", @@ -1706,7 +1749,7 @@ }, { "key": "Content-Length", - "value": "1576" + "value": "1902" }, { "key": "Connection", @@ -1714,23 +1757,23 @@ }, { "key": "x-amzn-RequestId", - "value": "d7a1a454-ff49-417b-9863-6f8a69d0aaa0" + "value": "3d56eb4c-4bc0-47d8-bc61-a55b098dfd9c" }, { "key": "x-amz-apigw-id", - "value": "Uv-YcFOZLPEF8Fg=" + "value": "VD4p_GRgrPEFVPA=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69297768-2e315ff5cc191f709fa51b48" + "value": "Root=1-69316e3f-6ddd811fdb997165b9c6a0d5" }, { "key": "X-Request-ID", - "value": "35f86e34-bd09-4a60-86df-050bd9f5a918" + "value": "f8ac2f03-2a5f-4ff7-8ada-093f55fb9c38" }, { "key": "X-Correlation-ID", - "value": "f7d539b5-d919-4f45-876b-245c80b3483e" + "value": "8fc4ed98-4b94-41e1-bff0-0065b6058201" }, { "key": "Strict-Transport-Security", @@ -1738,7 +1781,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:20:25Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:19:27Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"resource\": {\n \"id\": \"553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:15:26Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Include performer details", @@ -1797,7 +1840,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 10:21:48 GMT" + "value": "Thu, 04 Dec 2025 11:19:44 GMT" }, { "key": "Content-Type", @@ -1805,7 +1848,7 @@ }, { "key": "Content-Length", - "value": "2492" + "value": "2818" }, { "key": "Connection", @@ -1813,23 +1856,23 @@ }, { "key": "x-amzn-RequestId", - "value": "bf920a80-fba5-4718-b140-d695fabde380" + "value": "12da5c87-c8eb-4085-ad09-ab9df3923150" }, { "key": "x-amz-apigw-id", - "value": "Uv-kMG2RLPEFTQw=" + "value": "VD4slFJ5rPEF6Mg=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-692977b4-48772f19d665138051cc62d3" + "value": "Root=1-69316e50-a15563e078d9633ab0d45fb6" }, { "key": "X-Request-ID", - "value": "fa0c7715-d629-49ac-9935-73eb56fae653" + "value": "51afba5e-eea1-415e-a0c3-bc5d47e884fd" }, { "key": "X-Correlation-ID", - "value": "2e5350ae-054e-40a0-a0e0-9531c445b500" + "value": "c31bc807-8bc9-4aa5-b531-f44fbfeeef0c" }, { "key": "Strict-Transport-Security", @@ -1837,7 +1880,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:21:48Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:19:44Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"resource\": {\n \"id\": \"553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:15:26Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Include patient details", @@ -1896,7 +1939,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 10:22:27 GMT" + "value": "Thu, 04 Dec 2025 11:19:57 GMT" }, { "key": "Content-Type", @@ -1904,7 +1947,7 @@ }, { "key": "Content-Length", - "value": "3310" + "value": "3636" }, { "key": "Connection", @@ -1912,23 +1955,23 @@ }, { "key": "x-amzn-RequestId", - "value": "0b1c5dc9-c23e-4c57-8fc6-557ec9c07ce0" + "value": "341e64dd-974f-4307-a16b-e775c0777fdd" }, { "key": "x-amz-apigw-id", - "value": "Uv-rlGONrPEFU5g=" + "value": "VD4uhGhjLPEF8-A=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-692977e3-bee2c5d4e4a8b8ca25e3c2d9" + "value": "Root=1-69316e5c-16469b05761a5ee0d5ffe220" }, { "key": "X-Request-ID", - "value": "37e047bb-1927-47dc-a273-c6589cde0943" + "value": "2762b971-bfcc-42c6-be87-b2d2a98cf5b5" }, { "key": "X-Correlation-ID", - "value": "789df859-cff8-49fd-b5e3-7c72f17e3414" + "value": "94e42484-2c4d-46fc-8364-027c06a21798" }, { "key": "Strict-Transport-Security", @@ -1936,7 +1979,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:22:27Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:19:56Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"resource\": {\n \"id\": \"553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:15:26Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Include patient and performer details", @@ -1999,7 +2042,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 10:22:54 GMT" + "value": "Thu, 04 Dec 2025 11:20:24 GMT" }, { "key": "Content-Type", @@ -2007,7 +2050,7 @@ }, { "key": "Content-Length", - "value": "4226" + "value": "4552" }, { "key": "Connection", @@ -2015,23 +2058,23 @@ }, { "key": "x-amzn-RequestId", - "value": "305d25a2-0121-40f1-b278-f9cb2d81d3d4" + "value": "306d5243-752e-45e4-9c44-f175a008c1de" }, { "key": "x-amz-apigw-id", - "value": "Uv-vjHZerPEFTLw=" + "value": "VD4y2Gg1rPEFcxQ=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-692977fc-04cf5b6443bff2438c4ca14f" + "value": "Root=1-69316e78-df1338116d16a7272e1de2dc" }, { "key": "X-Request-ID", - "value": "4c398f9c-8e3b-4c8b-bd11-c955c07c7f06" + "value": "b05f7a59-c008-47d8-868c-011cbdf17500" }, { "key": "X-Correlation-ID", - "value": "68bb5628-ce37-4b66-b987-be6b8be4b145" + "value": "95f4ebb0-274e-4757-91f3-91a5fc0a3f0f" }, { "key": "Strict-Transport-Security", @@ -2039,7 +2082,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:22:54Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"resource\": {\n \"id\": \"ea306762-f372-4627-b6e7-ad31ef40c6f6\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"PRN\",\n \"display\": \"Parent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:20:24Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898121&patient%3Aidentifier=9736898644&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"resource\": {\n \"id\": \"553ee1cd-1acd-48bb-a918-4a6434ab39b2\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:15:26Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898121\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-11-23\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898644\",\n \"resource\": {\n \"id\": \"9736898644\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"29706100\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"gDmhc\",\n \"line\": [\n \"BRAMBLE COTTAGE\",\n \"OLD VICARAGE PARK\",\n \"SCAWBY\",\n \"BRIGG\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2021-09-10\"\n },\n \"postalCode\": \"DN20 9RL\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2015-09-26\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"gDHTb\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2018-08-22\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n ],\n \"name\": [\n {\n \"family\": \"SHEPP\",\n \"given\": [\n \"Ashley\",\n \"Ellen\"\n ],\n \"period\": {\n \"start\": \"2025-08-06\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/EAONj\",\n \"resource\": {\n \"id\": \"EAONj\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898644\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Filtered by status 'inactive'", @@ -2098,7 +2141,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 10:24:46 GMT" + "value": "Thu, 04 Dec 2025 11:21:09 GMT" }, { "key": "Content-Type", @@ -2106,7 +2149,7 @@ }, { "key": "Content-Length", - "value": "1595" + "value": "1920" }, { "key": "Connection", @@ -2114,23 +2157,23 @@ }, { "key": "x-amzn-RequestId", - "value": "bd503f91-795a-46f2-a8c7-14e1ca83b8f1" + "value": "24bfc7a0-5f30-47b4-a751-7534837f5224" }, { "key": "x-amz-apigw-id", - "value": "Uv_BUGW9rPEFxRQ=" + "value": "VD455ErXrPEFuaQ=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-6929786e-c38a9a4945319f56a4f283a2" + "value": "Root=1-69316ea5-6c272d90a7d3656142da3073" }, { "key": "X-Request-ID", - "value": "bad91686-c649-48e4-9753-387dba7e69f3" + "value": "67a71930-24b3-4baa-8b13-65f27c413a41" }, { "key": "X-Correlation-ID", - "value": "5f56109b-29dc-43d6-a208-1b0ee10299e8" + "value": "dd934795-88bf-44a3-a2c3-eff757413bfb" }, { "key": "Strict-Transport-Security", @@ -2138,7 +2181,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:24:46Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&patient%3Aidentifier=9736898652&status=inactive\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/26a38545-0c3c-4627-8db8-d16bde388299\",\n \"resource\": {\n \"id\": \"26a38545-0c3c-4627-8db8-d16bde388299\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-02-11T14:30:00Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898652\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9728570368\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2025-11-23\",\n \"start\": \"2025-11-23\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"inactive\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:21:09Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&patient%3Aidentifier=9736898652&status=inactive\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/750cb586-eb9b-46c7-a1a5-711307a087af\",\n \"resource\": {\n \"id\": \"750cb586-eb9b-46c7-a1a5-711307a087af\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T10:55:53Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898652\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2025-12-05\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"inactive\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" }, { "name": "Proxy roles returned - Filtered by status 'active' and include patient and performer details", @@ -2205,7 +2248,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 10:25:30 GMT" + "value": "Thu, 04 Dec 2025 11:21:28 GMT" }, { "key": "Content-Type", @@ -2221,23 +2264,23 @@ }, { "key": "x-amzn-RequestId", - "value": "862b22fa-9abf-470b-ba41-a163dfc07ce9" + "value": "f44b69f0-f814-4e0f-89eb-349f1f7e143d" }, { "key": "x-amz-apigw-id", - "value": "Uv_IFH49rPEFseg=" + "value": "VD48uEKHLPEF67A=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69297899-7841288af830881b736c9c20" + "value": "Root=1-69316eb7-00b15aebe653e94192bc60ee" }, { "key": "X-Request-ID", - "value": "ecf5ab11-9124-4d22-9a09-bd8cd9718502" + "value": "8f40b74e-99fa-4401-bcf1-def08a63da50" }, { "key": "X-Correlation-ID", - "value": "f0a6ee70-051d-440a-a246-73b8be6c059c" + "value": "1460d166-ba8d-4d1c-8822-83394abe1169" }, { "key": "Strict-Transport-Security", @@ -2245,7 +2288,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T10:25:30Z\",\n \"total\": 0,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&patient%3Aidentifier=9736898652&status=active&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898652\",\n \"resource\": {\n \"id\": \"9736898652\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"6290975\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"RPnzd\",\n \"line\": [\n \"77 ANGERSTEIN ROAD\",\n \"SCUNTHORPE\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2019-11-10\"\n },\n \"postalCode\": \"DN17 2NB\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2013-09-02\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"yIjPV\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2021-01-07\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898652\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CLYDE\",\n \"given\": [\n \"Deanne\",\n \"Tara\"\n ],\n \"period\": {\n \"start\": \"2018-06-16\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:21:27Z\",\n \"total\": 0,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9736898156&patient%3Aidentifier=9736898652&status=active&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898652\",\n \"resource\": {\n \"id\": \"9736898652\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"6290975\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"RPnzd\",\n \"line\": [\n \"77 ANGERSTEIN ROAD\",\n \"SCUNTHORPE\",\n \"S HUMBERSIDE\"\n ],\n \"period\": {\n \"start\": \"2019-11-10\"\n },\n \"postalCode\": \"DN17 2NB\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2013-09-02\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"yIjPV\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2021-01-07\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898652\"\n }\n ],\n \"name\": [\n {\n \"family\": \"CLYDE\",\n \"given\": [\n \"Deanne\",\n \"Tara\"\n ],\n \"period\": {\n \"start\": \"2018-06-16\"\n },\n \"prefix\": [\n \"MS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" } ] }, @@ -2375,7 +2418,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 11:28:42 GMT" + "value": "Thu, 04 Dec 2025 11:22:00 GMT" }, { "key": "Content-Type", @@ -2391,23 +2434,23 @@ }, { "key": "x-amzn-RequestId", - "value": "f503df1a-ed91-481b-93dc-de9299ec4462" + "value": "94465816-7aaa-4d03-81c9-e19156606316" }, { "key": "x-amz-apigw-id", - "value": "UwIYNFlXLPEFyOg=" + "value": "VD5BAEGOLPEFVPA=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69298767-430d5030473e9a3b1a2accb8" + "value": "Root=1-69316ed8-af72bfe69942b25c155a4daa" }, { "key": "X-Request-ID", - "value": "4c1794ce-1608-4c5c-a098-efa4bc28b4f8" + "value": "ed28025a-9c27-468c-85fd-9b1b8f794198" }, { "key": "X-Correlation-ID", - "value": "09b3f16a-a7e4-4ab2-a91d-6ba5fc7083a7" + "value": "fbd025d4-c7e1-4085-8bf8-d11b84652f8d" }, { "key": "Strict-Transport-Security", @@ -2415,7 +2458,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:28:42Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9674998535&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/3a86ad92\",\n \"resource\": {\n \"id\": \"3a86ad92\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:28:42.096743+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9692113736\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/5c0c47d9\",\n \"resource\": {\n \"id\": \"5c0c47d9\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:28:42.096784+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/0b36c4e0\",\n \"resource\": {\n \"id\": \"0b36c4e0\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"8af3500000000000\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9692113736\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/bd6da0a0\",\n \"resource\": {\n \"id\": \"bd6da0a0\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"8af3500000000000\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/e41dfa63\",\n \"resource\": {\n \"id\": \"e41dfa63\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1985-05-29\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9692113736\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"84df400000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Mr Kevin Barry\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/2d10a3d9\",\n \"resource\": {\n \"id\": \"2d10a3d9\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1921-10-17\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"d024500000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Mr Landon Fahey\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:22:00Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9674998535&_include=Consent%3Aperformer&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/3a86ad92\",\n \"resource\": {\n \"id\": \"3a86ad92\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:21:58.915488+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9692113736\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/5c0c47d9\",\n \"resource\": {\n \"id\": \"5c0c47d9\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:21:58.915640+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/0b36c4e0\",\n \"resource\": {\n \"id\": \"0b36c4e0\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"8af3500000000000\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9692113736\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/bd6da0a0\",\n \"resource\": {\n \"id\": \"bd6da0a0\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998535\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"8af3500000000000\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/e41dfa63\",\n \"resource\": {\n \"id\": \"e41dfa63\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1985-05-29\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9692113736\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"84df400000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Mr Kevin Barry\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/2d10a3d9\",\n \"resource\": {\n \"id\": \"2d10a3d9\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1921-10-17\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"d024500000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Mr Landon Fahey\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Linked profiles returned from NAM - TPP user", @@ -2470,7 +2513,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 11:34:17 GMT" + "value": "Thu, 04 Dec 2025 11:22:15 GMT" }, { "key": "Content-Type", @@ -2486,23 +2529,23 @@ }, { "key": "x-amzn-RequestId", - "value": "1361ba24-c83b-4d88-985f-0edaaecf31e0" + "value": "1b190446-e56f-4a64-8c54-25688af8f8f7" }, { "key": "x-amz-apigw-id", - "value": "UwJMiGErrPEF76w=" + "value": "VD5EAFv1rPEF7zw=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-692988b6-0cf09f6d502ccce8d7279f69" + "value": "Root=1-69316ee6-9925773ab605850282f2d18c" }, { "key": "X-Request-ID", - "value": "709b4f5e-3f11-4657-8eed-8b45e4dc7e96" + "value": "dfa182c6-8f6a-46e9-bdc1-1ef5a00740c1" }, { "key": "X-Correlation-ID", - "value": "57f90acc-4352-4573-8f7b-ec2b7728ef2c" + "value": "d50ce1da-c025-451c-847e-c405c299115f" }, { "key": "Strict-Transport-Security", @@ -2510,7 +2553,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:34:17Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9674998454&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/92a66114\",\n \"resource\": {\n \"id\": \"92a66114\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:34:15.833315+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998640\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/0b02be0a\",\n \"resource\": {\n \"id\": \"0b02be0a\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:34:15.833355+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998543\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/934bfd54\",\n \"resource\": {\n \"id\": \"934bfd54\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1998-11-14\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998640\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"e254500000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Mr Harry Hood\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/29b6ab39\",\n \"resource\": {\n \"id\": \"29b6ab39\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1930-11-02\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998543\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"52f3500000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Miss Lisa Hankey\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:22:15Z\",\n \"total\": 2,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9674998454&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/92a66114\",\n \"resource\": {\n \"id\": \"92a66114\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:22:15.290954+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998640\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/0b02be0a\",\n \"resource\": {\n \"id\": \"0b02be0a\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:22:15.290994+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998543\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998454\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/934bfd54\",\n \"resource\": {\n \"id\": \"934bfd54\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1998-11-14\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998640\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"e254500000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Mr Harry Hood\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/29b6ab39\",\n \"resource\": {\n \"id\": \"29b6ab39\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1930-11-02\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A82648\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998543\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"52f3500000000000\"\n }\n ],\n \"name\": [\n {\n \"text\": \"Miss Lisa Hankey\",\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "No linked profiles returned from NAM - EMIS user", @@ -2565,7 +2608,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 11:34:52 GMT" + "value": "Thu, 04 Dec 2025 11:22:37 GMT" }, { "key": "Content-Type", @@ -2581,23 +2624,23 @@ }, { "key": "x-amzn-RequestId", - "value": "ecb926e6-a82c-46bc-b76f-afefcab83fa5" + "value": "15121c1a-99de-4830-86c7-00925d4faf3a" }, { "key": "x-amz-apigw-id", - "value": "UwJSNEAlLPEFlDA=" + "value": "VD5HEE6MLPEFz5w=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-692988da-c10362f08fd90a22323040d1" + "value": "Root=1-69316ef9-58a10d83bc130c381cdb0b44" }, { "key": "X-Request-ID", - "value": "0c65e25f-4ca5-4def-8e1a-208976c9b96f" + "value": "1828501c-86dc-4baf-9a13-e37a822e327f" }, { "key": "X-Correlation-ID", - "value": "7e409c54-be25-4b9c-9aed-72d0220596ee" + "value": "b891fe97-7778-4db5-be39-b23c03879d2d" }, { "key": "Strict-Transport-Security", @@ -2605,7 +2648,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:34:52Z\",\n \"total\": 0,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9692113612&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": []\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:22:36Z\",\n \"total\": 0,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9692113612&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": []\n}" }, { "name": "Linked profiles returned from NAM - EMIS user", @@ -2635,7 +2678,7 @@ } ], "url": { - "raw": "{{api_base_url}}/Consent?performer:identifier=9692113698&_include=Consent:patient&_include=Consent:performer", + "raw": "{{api_base_url}}/Consent?performer:identifier=9692113698&_include=Consent:performer", "host": [ "{{api_base_url}}" ], @@ -2649,7 +2692,8 @@ }, { "key": "_include", - "value": "Consent:patient" + "value": "Consent:patient", + "disabled": true }, { "key": "_include", @@ -2664,7 +2708,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 11:01:58 GMT" + "value": "Thu, 04 Dec 2025 11:24:08 GMT" }, { "key": "Content-Type", @@ -2672,7 +2716,7 @@ }, { "key": "Content-Length", - "value": "19177" + "value": "17617" }, { "key": "Connection", @@ -2680,23 +2724,23 @@ }, { "key": "x-amzn-RequestId", - "value": "f7b37e35-3b92-4085-9468-baa5ec99a53e" + "value": "739313dc-9917-4df2-9b9d-e59bf36d8c4e" }, { "key": "x-amz-apigw-id", - "value": "UwEdmHA1LPEFSAg=" + "value": "VD5U-FHkLPEF0fw=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-69298123-54622899a0dc2299798252e1" + "value": "Root=1-69316f52-1205235fe7d41983ba807831" }, { "key": "X-Request-ID", - "value": "1129a1db-76bc-47c0-8bb9-d49efb0d4ee8" + "value": "2eb98c87-f421-4902-a885-ecc408bd8d89" }, { "key": "X-Correlation-ID", - "value": "019ada39-23a7-4a1f-b68c-82900195615d" + "value": "4ac19b94-25d4-4de6-9be6-fe5a4a520d15" }, { "key": "Strict-Transport-Security", @@ -2704,7 +2748,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-11-28T11:01:57Z\",\n \"total\": 9,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9692113698&_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2993b769\",\n \"resource\": {\n \"id\": \"2993b769\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619279+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034451\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/c0d48822\",\n \"resource\": {\n \"id\": \"c0d48822\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619318+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998403\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/75d0c9dc\",\n \"resource\": {\n \"id\": \"75d0c9dc\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619343+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034400\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2bed6c1e\",\n \"resource\": {\n \"id\": \"2bed6c1e\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619371+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034168\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ed77c791\",\n \"resource\": {\n \"id\": \"ed77c791\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619394+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9253046414\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/02e9fe06\",\n \"resource\": {\n \"id\": \"02e9fe06\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619417+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9930725970\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/70f274ba\",\n \"resource\": {\n \"id\": \"70f274ba\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619443+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9803007025\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/87501704\",\n \"resource\": {\n \"id\": \"87501704\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619467+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9734615173\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/022a7290\",\n \"resource\": {\n \"id\": \"022a7290\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-11-28T11:01:57.619491+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9694154065\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/7c89fff4\",\n \"resource\": {\n \"id\": \"7c89fff4\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1988-08-10\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034451\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"3b5306c0-4c76-4f7c-9174-f5ea5c0a9c30\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Abdirahman-Cid test\",\n \"given\": [\n \"Yahya Test\"\n ],\n \"prefix\": [\n \"Mr\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/b1fc66a2\",\n \"resource\": {\n \"id\": \"b1fc66a2\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1949-12-07\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998403\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"d87efdc8-29b9-494a-8ac0-08dcb39e0abc\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Dixon\",\n \"given\": [\n \"Harry\"\n ],\n \"prefix\": [\n \"Mr\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/be79be13\",\n \"resource\": {\n \"id\": \"be79be13\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1989-03-30\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034400\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"589779f2-0836-4625-96ba-4d07a61fcd67\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Muiner-Cid\",\n \"given\": [\n \"Phoebe\"\n ],\n \"prefix\": [\n \"Mrs\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/37c6ee58\",\n \"resource\": {\n \"id\": \"37c6ee58\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1988-10-23\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034168\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"138681d4-202f-4e70-8801-eec348961398\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Al-Shebib-Cid\",\n \"given\": [\n \"Sawada\"\n ],\n \"prefix\": [\n \"Mrs\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/a3d72761\",\n \"resource\": {\n \"id\": \"a3d72761\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"2019-11-04\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9253046414\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"0d41d506-891f-406b-a609-d17759a14fe1\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Parr\",\n \"given\": [\n \"Jack-Jack\"\n ],\n \"prefix\": [\n \"Mr\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/8210b958\",\n \"resource\": {\n \"id\": \"8210b958\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"2018-11-04\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9930725970\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a18b481b-ba69-46b7-a697-69345b908d8b\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Parr\",\n \"given\": [\n \"Dash\"\n ],\n \"prefix\": [\n \"Mr\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/b5a44252\",\n \"resource\": {\n \"id\": \"b5a44252\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"2005-11-04\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9803007025\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"5c8ef30b-b247-4f90-8a0d-66e05b7942f6\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Parr\",\n \"given\": [\n \"Violet\"\n ],\n \"prefix\": [\n \"Miss\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/7104db25\",\n \"resource\": {\n \"id\": \"7104db25\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"2000-02-14\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9734615173\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"5df05378-5c13-481f-9f2b-2cc3d803b15e\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Stark\",\n \"given\": [\n \"Arya\"\n ],\n \"prefix\": [\n \"Miss\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/67368429\",\n \"resource\": {\n \"id\": \"67368429\",\n \"meta\": {\n \"profile\": [\n \"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Patient\"\n ],\n \"security\": [\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ]\n },\n \"birthDate\": \"1981-10-15\",\n \"generalPractitioner\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A00002\"\n }\n }\n ],\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9694154065\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"79ae8bc9-2d11-4b99-9df9-0fc59fb94082\"\n }\n ],\n \"name\": [\n {\n \"family\": \"Haake\",\n \"given\": [\n \"Maude\"\n ],\n \"prefix\": [\n \"Mrs\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:24:08Z\",\n \"total\": 9,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent?performer%3Aidentifier=9692113698&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2993b769\",\n \"resource\": {\n \"id\": \"2993b769\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:24:07.874676+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034451\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/c0d48822\",\n \"resource\": {\n \"id\": \"c0d48822\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:24:07.874715+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998403\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/75d0c9dc\",\n \"resource\": {\n \"id\": \"75d0c9dc\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:24:07.874739+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034400\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/2bed6c1e\",\n \"resource\": {\n \"id\": \"2bed6c1e\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:24:07.874762+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034168\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/ed77c791\",\n \"resource\": {\n \"id\": \"ed77c791\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:24:07.874785+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9253046414\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/02e9fe06\",\n \"resource\": {\n \"id\": \"02e9fe06\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:24:07.874807+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9930725970\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/70f274ba\",\n \"resource\": {\n \"id\": \"70f274ba\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:24:07.874830+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9803007025\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/87501704\",\n \"resource\": {\n \"id\": \"87501704\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:24:07.874852+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9734615173\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/022a7290\",\n \"resource\": {\n \"id\": \"022a7290\",\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:24:07.874874+00:00\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9694154065\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n \"type\": \"RelatedPerson\"\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"unknown\",\n \"display\": \"Unknown\",\n \"system\": \"https://fhir.nhs.uk/CodeSystem/proxy-legal-basis\"\n }\n ]\n }\n }\n ]\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/4931d7ae\",\n \"resource\": {\n \"id\": \"4931d7ae\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a6f2b11f-0f96-4487-83b0-bca6c9aae2bd\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034451\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/34e6ba88\",\n \"resource\": {\n \"id\": \"34e6ba88\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a6f2b11f-0f96-4487-83b0-bca6c9aae2bd\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9674998403\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/1b0f7204\",\n \"resource\": {\n \"id\": \"1b0f7204\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a6f2b11f-0f96-4487-83b0-bca6c9aae2bd\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034400\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/7115d670\",\n \"resource\": {\n \"id\": \"7115d670\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a6f2b11f-0f96-4487-83b0-bca6c9aae2bd\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9661034168\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/63bd0423\",\n \"resource\": {\n \"id\": \"63bd0423\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a6f2b11f-0f96-4487-83b0-bca6c9aae2bd\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9253046414\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/04683858\",\n \"resource\": {\n \"id\": \"04683858\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a6f2b11f-0f96-4487-83b0-bca6c9aae2bd\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9930725970\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/e0cff956\",\n \"resource\": {\n \"id\": \"e0cff956\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a6f2b11f-0f96-4487-83b0-bca6c9aae2bd\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9803007025\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/a9f54c1c\",\n \"resource\": {\n \"id\": \"a9f54c1c\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a6f2b11f-0f96-4487-83b0-bca6c9aae2bd\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9734615173\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/8b794ba5\",\n \"resource\": {\n \"id\": \"8b794ba5\",\n \"identifier\": [\n {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"5785592290\"\n },\n {\n \"system\": \"https://placeholder.fhir.nhs.uk/Id/local-gp-patient-identifier\",\n \"value\": \"a6f2b11f-0f96-4487-83b0-bca6c9aae2bd\"\n }\n ],\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9694154065\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AdditionalPersonRelationshipRole\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" } ] }, @@ -3963,7 +4007,7 @@ "variable": [ { "key": "consent_id", - "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + "value": "4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40" } ] }, @@ -3998,15 +4042,58 @@ "variable": [ { "key": "consent_id", - "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + "value": "4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40" } ] } }, - "_postman_previewlanguage": null, - "header": null, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 04 Dec 2025 11:28:18 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "1873" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "23636f8d-f5ef-4050-8c67-51e393b47c87" + }, + { + "key": "x-amz-apigw-id", + "value": "VD581F_4LPEFyDg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69317051-6384bdf9e3106d26096daa32" + }, + { + "key": "X-Request-ID", + "value": "784fb8d0-37ff-4716-bf77-81a395fd20f8" + }, + { + "key": "X-Correlation-ID", + "value": "ec404ce9-1721-4158-91af-2064ad3e7ea4" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], "cookie": [], - "body": null + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:28:18Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"resource\": {\n \"id\": \"4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:08:46Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-12-05\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n }\n ]\n}" }, { "name": "Proxy role returned - Include performer details", @@ -4042,15 +4129,58 @@ "variable": [ { "key": "consent_id", - "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + "value": "4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40" } ] } }, - "_postman_previewlanguage": null, - "header": null, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 04 Dec 2025 11:28:48 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "2789" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "a1f034c1-6ee8-499e-aa60-eea157ad4bd9" + }, + { + "key": "x-amz-apigw-id", + "value": "VD6AYFQMrPEFgjw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69317068-3a18b175fb02b76c68acfce1" + }, + { + "key": "X-Request-ID", + "value": "e8a5dada-5577-4738-abd5-7a09251e8c3b" + }, + { + "key": "X-Correlation-ID", + "value": "5eeb9d78-133f-4132-b121-649162a6bc14" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], "cookie": [], - "body": null + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:28:47Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40?_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"resource\": {\n \"id\": \"4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:08:46Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-12-05\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/nVLgl\",\n \"resource\": {\n \"id\": \"nVLgl\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy role returned - Include patient details", @@ -4086,15 +4216,58 @@ "variable": [ { "key": "consent_id", - "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + "value": "4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40" } ] } }, - "_postman_previewlanguage": null, - "header": null, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 04 Dec 2025 11:29:08 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "3601" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "b6cb5439-d1a8-4f95-bd3e-9dca7bed9e88" + }, + { + "key": "x-amz-apigw-id", + "value": "VD6ErHoPLPEF1rg=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69317083-b57a368a7776107b8b3e5f7a" + }, + { + "key": "X-Request-ID", + "value": "22ca0610-1b6e-4e3a-aa1a-ede697da4a1d" + }, + { + "key": "X-Correlation-ID", + "value": "71035b63-936a-4ce4-b036-3d592c764d88" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], "cookie": [], - "body": null + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:29:08Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40?_include=Consent%3Apatient\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"resource\": {\n \"id\": \"4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:08:46Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-12-05\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898660\",\n \"resource\": {\n \"id\": \"9736898660\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"19976537\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"pBQDr\",\n \"line\": [\n \"CARLTON\",\n \"VICARAGE LANE\",\n \"REDBOURNE\",\n \"GAINSBOROUGH\",\n \"LINCS\"\n ],\n \"period\": {\n \"start\": \"2025-07-15\"\n },\n \"postalCode\": \"DN21 4QW\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2012-04-24\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"xSEnH\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2024-11-06\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n ],\n \"name\": [\n {\n \"family\": \"GODREY\",\n \"given\": [\n \"Davina\",\n \"Linda\"\n ],\n \"period\": {\n \"start\": \"2017-04-22\"\n },\n \"prefix\": [\n \"MISS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" }, { "name": "Proxy role returned - Include performer and patient details", @@ -4134,15 +4307,58 @@ "variable": [ { "key": "consent_id", - "value": "77363c92-8c33-490f-b5c9-9ef81c2cf16f" + "value": "4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40" } ] } }, - "_postman_previewlanguage": null, - "header": null, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "Date", + "value": "Thu, 04 Dec 2025 11:29:26 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "4517" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "9db19dac-df92-4494-8f31-076621ab3d1a" + }, + { + "key": "x-amz-apigw-id", + "value": "VD6HkGFkrPEFxmw=" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-69317096-6ad930e767f145f7dd07b977" + }, + { + "key": "X-Request-ID", + "value": "5fd5c3dc-1f5c-4ac5-a9b4-018fdd7f1a0b" + }, + { + "key": "X-Correlation-ID", + "value": "fd7368b4-0828-40b0-97fa-6d19fb51a9e0" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], "cookie": [], - "body": null + "body": "{\n \"resourceType\": \"Bundle\",\n \"type\": \"searchset\",\n \"timestamp\": \"2025-12-04T11:29:26Z\",\n \"total\": 1,\n \"link\": [\n {\n \"relation\": \"self\",\n \"url\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40?_include=Consent%3Apatient&_include=Consent%3Aperformer\"\n }\n ],\n \"entry\": [\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"resource\": {\n \"id\": \"4ee397cb-f4b8-4b8e-adfc-8d63a2b68b40\",\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\"\n }\n ]\n }\n }\n ],\n \"category\": [\n {\n \"coding\": [\n {\n \"code\": \"INFA\",\n \"display\": \"Information Access\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"dateTime\": \"2025-12-04T11:08:46Z\",\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"performer\": [\n {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n }\n ],\n \"policy\": [\n {\n \"authority\": \"https://www.england.nhs.uk\",\n \"uri\": \"\"\n }\n ],\n \"provision\": {\n \"actor\": [\n {\n \"reference\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898156\"\n }\n },\n \"role\": {\n \"coding\": [\n {\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\"\n }\n ]\n }\n }\n ],\n \"period\": {\n \"end\": \"2030-12-05\",\n \"start\": \"2025-12-02\"\n }\n },\n \"scope\": {\n \"coding\": [\n {\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\",\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"status\": \"active\",\n \"resourceType\": \"Consent\"\n },\n \"search\": {\n \"mode\": \"match\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Patient/9736898660\",\n \"resource\": {\n \"id\": \"9736898660\",\n \"meta\": {\n \"security\": [\n {\n \"code\": \"U\",\n \"display\": \"unrestricted\",\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-Confidentiality\"\n },\n {\n \"code\": \"P9\",\n \"display\": \"High level verification (P9)\",\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSIdentityProofingLevel\"\n }\n ],\n \"versionId\": \"4\"\n },\n \"address\": [\n {\n \"extension\": [\n {\n \"extension\": [\n {\n \"url\": \"type\",\n \"valueCoding\": {\n \"code\": \"PAF\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-AddressKeyType\"\n }\n },\n {\n \"url\": \"value\",\n \"valueString\": \"19976537\"\n }\n ],\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-AddressKey\"\n }\n ],\n \"id\": \"pBQDr\",\n \"line\": [\n \"CARLTON\",\n \"VICARAGE LANE\",\n \"REDBOURNE\",\n \"GAINSBOROUGH\",\n \"LINCS\"\n ],\n \"period\": {\n \"start\": \"2025-07-15\"\n },\n \"postalCode\": \"DN21 4QW\",\n \"use\": \"home\"\n }\n ],\n \"birthDate\": \"2012-04-24\",\n \"gender\": \"female\",\n \"generalPractitioner\": [\n {\n \"id\": \"xSEnH\",\n \"identifier\": {\n \"period\": {\n \"start\": \"2024-11-06\"\n },\n \"system\": \"https://fhir.nhs.uk/Id/ods-organization-code\",\n \"value\": \"A20047\"\n }\n }\n ],\n \"identifier\": [\n {\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-NHSNumberVerificationStatus\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"code\": \"01\",\n \"display\": \"Number present and verified\",\n \"system\": \"https://fhir.hl7.org.uk/CodeSystem/UKCore-NHSNumberVerificationStatus\",\n \"version\": \"1.0.0\"\n }\n ]\n }\n }\n ],\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n ],\n \"name\": [\n {\n \"family\": \"GODREY\",\n \"given\": [\n \"Davina\",\n \"Linda\"\n ],\n \"period\": {\n \"start\": \"2017-04-22\"\n },\n \"prefix\": [\n \"MISS\"\n ],\n \"use\": \"usual\"\n }\n ],\n \"resourceType\": \"Patient\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n },\n {\n \"fullUrl\": \"https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/RelatedPerson/nVLgl\",\n \"resource\": {\n \"id\": \"nVLgl\",\n \"extension\": [\n {\n \"url\": \"https://fhir.nhs.uk/R4/StructureDefinition/Extension-UKCore-CopyCorrespondenceIndicator\",\n \"valueBoolean\": true\n }\n ],\n \"active\": true,\n \"patient\": {\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898660\"\n }\n },\n \"relationship\": [\n {\n \"coding\": [\n {\n \"code\": \"CHILD\",\n \"display\": \"child\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"Personal\",\n \"display\": \"Personal relationship with the patient\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/UKCore-AdditionalRelatedPersonRole\"\n }\n ]\n },\n {\n \"coding\": [\n {\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\",\n \"system\": \"http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype\"\n }\n ]\n }\n ],\n \"resourceType\": \"RelatedPerson\"\n },\n \"search\": {\n \"mode\": \"include\"\n }\n }\n ]\n}" } ] }, @@ -5866,7 +6082,7 @@ ], "body": { "mode": "raw", - "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-12-02\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\",\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\"\n }\n ]\n }\n }\n ]\n}\n", "options": { "raw": { "language": "json" @@ -5886,7 +6102,7 @@ }, "response": [ { - "name": "New proxy role created", + "name": "Adult to child - New proxy role created", "originalRequest": { "method": "POST", "header": [ @@ -5908,7 +6124,99 @@ ], "body": { "mode": "raw", - "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-11-23\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"MTH\",\n \"display\": \"Mother\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"TBC\",\n \"display\": \"TBC\"\n }\n ]\n }\n }\n ]\n}", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898717\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-12-02\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\",\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\"\n }\n ]\n }\n }\n ]\n}\n", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "{{api_base_url}}/Consent", + "host": [ + "{{api_base_url}}" + ], + "path": [ + "Consent" + ] + } + }, + "status": "Created", + "code": 201, + "_postman_previewlanguage": null, + "header": [ + { + "key": "Date", + "value": "Fri, 28 Nov 2025 15:14:39 GMT" + }, + { + "key": "Content-Type", + "value": "application/fhir+json" + }, + { + "key": "Content-Length", + "value": "101" + }, + { + "key": "Connection", + "value": "keep-alive" + }, + { + "key": "x-amzn-RequestId", + "value": "bf6bc3d8-1829-4a81-9433-c0b1c21376d6" + }, + { + "key": "x-amz-apigw-id", + "value": "Uwpe7FCjrPEF5aQ=" + }, + { + "key": "location", + "value": "https://int.api.service.nhs.uk/validated-relationships/FHIR/R4/Consent/4f15f399-d381-4949-a744-25f9cbfecfb3" + }, + { + "key": "X-Amzn-Trace-Id", + "value": "Root=1-6929bc5f-f6012c539553033b0859994a" + }, + { + "key": "X-Request-ID", + "value": "46baf4c8-5bb5-4a6e-9bd4-264452817dab" + }, + { + "key": "X-Correlation-ID", + "value": "65bdf903-1cb2-4722-a291-d5056c44e712" + }, + { + "key": "Strict-Transport-Security", + "value": "max-age=31536000; includeSubDomains" + } + ], + "cookie": [], + "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\"\n }\n ]\n}" + }, + { + "name": "Adult to adult - New proxy role created", + "originalRequest": { + "method": "POST", + "header": [ + { + "key": "X-Request-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "X-Correlation-ID", + "value": "{{$guid}}", + "type": "text" + }, + { + "key": "Content-Type", + "value": "application/fhir+json", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"resourceType\": \"Consent\",\n \"status\": \"active\",\n \"scope\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consentscope\",\n \"code\": \"patient-privacy\",\n \"display\": \"Privacy Consent\"\n }\n ],\n \"text\": \"Patient Privacy Consent\"\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/v3-ActCode\",\n \"code\": \"INFA\",\n \"display\": \"Information Access\"\n }\n ],\n \"text\": \"Information Access Consent\"\n }\n ],\n \"patient\": {\n \"type\": \"Patient\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898202\"\n }\n },\n \"dateTime\": \"{{$isoTimestamp}}\",\n \"performer\": [\n {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898164\"\n }\n }\n ],\n \"provision\": {\n \"period\": {\n \"start\": \"2025-12-02\",\n \"end\": \"2030-11-23\"\n },\n \"actor\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\",\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898164\"\n }\n }\n }\n ]\n },\n \"extension\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"ROLE_CREATED\",\n \"display\": \"Role created from scratch by GP\"\n }\n ]\n }\n }\n ]\n}\n", "options": { "raw": { "language": "json" From e7e4319b3195d7c0f22c448eccc5294109152bae Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Fri, 5 Dec 2025 11:18:01 +0000 Subject: [PATCH 11/15] NPA-5880: Updated Postman collection docs --- ...ervice.integration.postman_collection.json | 76 +++++++++---------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/postman/validated_relationship_service.integration.postman_collection.json b/postman/validated_relationship_service.integration.postman_collection.json index 6855a7d8..2bbe9069 100644 --- a/postman/validated_relationship_service.integration.postman_collection.json +++ b/postman/validated_relationship_service.integration.postman_collection.json @@ -2,7 +2,7 @@ "info": { "_postman_id": "c3ee07a1-47e5-43f7-96f9-5e56d403af45", "name": "Validated Relationship Service - Integration", - "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `private_key`\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from AWS Secrets Manager or requested to be sent securely from a member of the VRS team. This is not the same as the private key in the NHS Developer Account portal.\n\n#### `app_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value`\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp/emis_(nhs_number)_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\n##### Pre-requisites\n\nAccess the token generation scripts from the [validated-relationships-service-api repo](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts):\n\n- get_app_access_token_int.py - for app restricted authorization\n \n- get_cis2_access_token_int.py - for CIS2 authorization\n \n- get_nhs_login_access_token_int.py - for Login user authorization\n \n\nSee the [README](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts/README.md) for information about how to run them and what environment variables are needed.\n\n##### Steps\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", + "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `private_key`\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from AWS Secrets Manager or requested to be sent securely from a member of the VRS team. This is not the same as the private key in the NHS Developer Account portal.\n\n#### `app_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value` (generated automatically)\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp_9674998535_access_token`, `tpp_9674998454_access_token`, `emis_9692113698_access_token,` and `emis_9692113612_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\n##### Pre-requisites\n\nAccess the token generation scripts from the [validated-relationships-service-api repo](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts):\n\n- get_app_access_token_int.py - for app restricted authorization\n \n- get_cis2_access_token_int.py - for CIS2 authorization\n \n- get_nhs_login_access_token_int.py - for Login user authorization\n \n\nSee the [README](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts/README.md) for information about how to run them and what environment variables are needed.\n\n##### Steps\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "_exporter_id": "18067099", "_collection_link": "https://www.postman.com/lunar-crescent-672573/workspace/validated-relationship-service-pre-prod-20-11-2025/collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=share&source=collection_link&creator=18067099" @@ -7083,7 +7083,7 @@ ], "body": { "mode": "raw", - "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"inactive\"\n }\n]", + "raw": "[\n {\"op\": \"replace\", \"path\": \"/status\", \"value\": \"inactive\"},\n {\n \"op\": \"replace\",\n \"path\": \"/extension\",\n \"value\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"ROLE_DEACTIVATED_NOT_NEEDED\",\n \"display\": \"Patient no longer needs proxy support\"\n }\n ]\n }\n }\n ]\n }\n]\n", "options": { "raw": { "language": "json" @@ -7102,7 +7102,7 @@ "variable": [ { "key": "consent_id", - "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + "value": "0e8d365d-2667-4426-ae66-7eb8302bc724" } ] }, @@ -7132,7 +7132,7 @@ ], "body": { "mode": "raw", - "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"inactive\"\n }\n]", + "raw": "[\n {\"op\": \"replace\", \"path\": \"/status\", \"value\": \"inactive\"},\n {\n \"op\": \"replace\",\n \"path\": \"/extension\",\n \"value\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"ROLE_DEACTIVATED_NOT_NEEDED\",\n \"display\": \"Patient no longer needs proxy support\"\n }\n ]\n }\n }\n ]\n }\n]", "options": { "raw": { "language": "json" @@ -7151,7 +7151,7 @@ "variable": [ { "key": "consent_id", - "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + "value": "0e8d365d-2667-4426-ae66-7eb8302bc724" } ] } @@ -7246,18 +7246,18 @@ "variable": [ { "key": "consent_id", - "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + "value": "0e8d365d-2667-4426-ae66-7eb8302bc724" } ] } }, "status": "OK", "code": 200, - "_postman_previewlanguage": null, + "_postman_previewlanguage": "json", "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 16:23:31 GMT" + "value": "Thu, 04 Dec 2025 15:48:46 GMT" }, { "key": "Content-Type", @@ -7273,23 +7273,23 @@ }, { "key": "x-amzn-RequestId", - "value": "5b03d759-c55a-462d-ba3c-e2dbf92d031a" + "value": "eb0a2130-76e5-41a0-9916-e7c8aa25a4ea" }, { "key": "x-amz-apigw-id", - "value": "UwzkUE0urPEFqHg=" + "value": "VEgG2Hh6LPEFXRQ=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-6929cc81-0d146fcdbc79baf5a5279c3d" + "value": "Root=1-6931ad5e-d4506ade6d4f3410b20618b9" }, { "key": "X-Request-ID", - "value": "4555113e-aa4d-409d-bac0-41b0ed91cfc2" + "value": "90a9a964-db4c-4ec7-9498-76087f979bb5" }, { "key": "X-Correlation-ID", - "value": "b8c69a60-667d-4b0f-89c7-9de6d4e289a4" + "value": "2aa6936b-c5ba-437d-898e-c58794601a01" }, { "key": "Strict-Transport-Security", @@ -7322,7 +7322,7 @@ ], "body": { "mode": "raw", - "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/provision/actor\",\n \"value\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\": \"GUARD\",\n \"display\": \"Guardian\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898172\"\n }\n }\n }\n ]\n }\n]", + "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/provision/actor\",\n \"value\": [\n {\n \"role\": {\n \"coding\": [\n {\n \"system\": \"https://fhir.nhs.uk/England/CodeSystem/England-NHSProxyLegalBasis\",\n \"code\": \"parental-responsibility\",\n \"display\": \"Parental responsibility\"\n }\n ]\n },\n \"reference\": {\n \"type\": \"RelatedPerson\",\n \"identifier\": {\n \"system\": \"https://fhir.nhs.uk/Id/nhs-number\",\n \"value\": \"9736898148\"\n }\n }\n }\n ]\n }\n]", "options": { "raw": { "language": "json" @@ -7341,7 +7341,7 @@ "variable": [ { "key": "consent_id", - "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + "value": "0e8d365d-2667-4426-ae66-7eb8302bc724" } ] } @@ -7352,7 +7352,7 @@ "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 16:43:45 GMT" + "value": "Thu, 04 Dec 2025 15:54:54 GMT" }, { "key": "Content-Type", @@ -7368,23 +7368,23 @@ }, { "key": "x-amzn-RequestId", - "value": "86df781e-87a6-48d4-80cd-e1e9849cb218" + "value": "63072889-896c-43b1-aff1-0e4eceb2b4d4" }, { "key": "x-amz-apigw-id", - "value": "Uw2iREzKrPEFXIQ=" + "value": "VEg_9FQxLPEF1mA=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-6929d141-292c4385b8b90a2739a3c63a" + "value": "Root=1-6931aecc-d571f76cb8f3900088a01c45" }, { "key": "X-Request-ID", - "value": "76fc2dc3-0645-487c-a39e-55856be2dcd7" + "value": "e436ebda-5011-431a-9de3-1d0749c6f45e" }, { "key": "X-Correlation-ID", - "value": "c73d3359-f54a-4814-bbd0-7668de2e446c" + "value": "930a58a1-7ca9-4a89-ac33-a24f5277b1d9" }, { "key": "Strict-Transport-Security", @@ -7429,7 +7429,7 @@ ], "body": { "mode": "raw", - "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"active\"\n },\n {\n \"op\": \"replace\",\n \"path\": \"/provision/period/end\",\n \"value\": \"2026-12-31\"\n }\n]", + "raw": "[\n {\"op\": \"replace\", \"path\": \"/status\", \"value\": \"inactive\"},\n {\n \"op\": \"replace\",\n \"path\": \"/extension\",\n \"value\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"ROLE_DEACTIVATED_NOT_NEEDED\",\n \"display\": \"Patient no longer needs proxy support\"\n }\n ]\n }\n }\n ]\n },\n {\n \"op\": \"replace\",\n \"path\": \"/provision/period/end\",\n \"value\": \"2026-12-31\"\n }\n]", "options": { "raw": { "language": "json" @@ -7448,7 +7448,7 @@ "variable": [ { "key": "consent_id", - "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + "value": "0e8d365d-2667-4426-ae66-7eb8302bc724" } ] }, @@ -7478,7 +7478,7 @@ ], "body": { "mode": "raw", - "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"active\"\n },\n {\n \"op\": \"replace\",\n \"path\": \"/provision/period/end\",\n \"value\": \"2026-12-31\"\n }\n]", + "raw": "[\n {\"op\": \"replace\", \"path\": \"/status\", \"value\": \"inactive\"},\n {\n \"op\": \"replace\",\n \"path\": \"/extension\",\n \"value\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"ROLE_DEACTIVATED_NOT_NEEDED\",\n \"display\": \"Patient no longer needs proxy support\"\n }\n ]\n }\n }\n ]\n },\n {\n \"op\": \"replace\",\n \"path\": \"/provision/period/end\",\n \"value\": \"2026-12-31\"\n }\n]", "options": { "raw": { "language": "json" @@ -7502,13 +7502,13 @@ ] } }, - "status": "OK", - "code": 200, + "status": "Not Found", + "code": 404, "_postman_previewlanguage": "json", "header": [ { "key": "Date", - "value": "Fri, 28 Nov 2025 16:43:45 GMT" + "value": "Thu, 04 Dec 2025 15:56:16 GMT" }, { "key": "Content-Type", @@ -7516,7 +7516,7 @@ }, { "key": "Content-Length", - "value": "101" + "value": "348" }, { "key": "Connection", @@ -7524,23 +7524,23 @@ }, { "key": "x-amzn-RequestId", - "value": "86df781e-87a6-48d4-80cd-e1e9849cb218" + "value": "fbb23fc6-d143-4ad4-ab95-fef1276bf7d0" }, { "key": "x-amz-apigw-id", - "value": "Uw2iREzKrPEFXIQ=" + "value": "VEhNJE2VrPEFXkA=" }, { "key": "X-Amzn-Trace-Id", - "value": "Root=1-6929d141-292c4385b8b90a2739a3c63a" + "value": "Root=1-6931af20-0cc7e03b708f8949fc05bdfa" }, { "key": "X-Request-ID", - "value": "76fc2dc3-0645-487c-a39e-55856be2dcd7" + "value": "0aa389b6-9542-428f-9e1c-b5411ff0a531" }, { "key": "X-Correlation-ID", - "value": "c73d3359-f54a-4814-bbd0-7668de2e446c" + "value": "e3845975-3d6b-4185-81cb-22a80f7ed0da" }, { "key": "Strict-Transport-Security", @@ -7548,7 +7548,7 @@ } ], "cookie": [], - "body": "{\n \"resourceType\": \"OperationOutcome\",\n \"issue\": [\n {\n \"severity\": \"information\",\n \"code\": \"informational\"\n }\n ]\n}" + "body": "{\n \"issue\": [\n {\n \"code\": \"invalid\",\n \"diagnostics\": \"Proxy role not found.\",\n \"details\": {\n \"coding\": [\n {\n \"code\": \"RESOURCE_NOT_FOUND\",\n \"display\": \"Request must be for a existing proxy role.\",\n \"system\": \"https://fhir.nhs.uk/R4/CodeSystem/ValidatedRelationships-ErrorOrWarningCode\",\n \"version\": \"1\"\n }\n ]\n },\n \"severity\": \"error\"\n }\n ],\n \"resourceType\": \"OperationOutcome\"\n}" } ] }, @@ -7760,7 +7760,7 @@ "variable": [ { "key": "consent_id", - "value": "aa58f9b7-2a02-45a2-9cb4-0d6fefe07a02" + "value": "0e8d365d-2667-4426-ae66-7eb8302bc724" } ] }, @@ -7897,7 +7897,7 @@ ], "body": { "mode": "raw", - "raw": "[\n {\n \"op\": \"replace\",\n \"path\": \"/status\",\n \"value\": \"proposed\"\n }\n]", + "raw": "[\n {\"op\": \"replace\", \"path\": \"/status\", \"value\": \"proposed\"},\n {\n \"op\": \"replace\",\n \"path\": \"/extension\",\n \"value\": [\n {\n \"url\": \"https://fhir.hl7.org.uk/StructureDefinition/Extension-statusReason\",\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"https://terminology.hl7.org/CodeSystem/consent-reason\",\n \"code\": \"APPLICATION_RESUBMITTED\",\n \"display\": \"Application re-submitted online after previously rejected\"\n }\n ]\n }\n }\n ]\n }\n]", "options": { "raw": { "language": "json" @@ -7916,7 +7916,7 @@ "variable": [ { "key": "consent_id", - "value": "79e108c2-cab3-4b77-a4e0-39c87a1659ef" + "value": "0e8d365d-2667-4426-ae66-7eb8302bc724" } ] }, @@ -8072,7 +8072,7 @@ "variable": [ { "key": "consent_id", - "value": "aa58f9b7-2a02-45a2-9cb4-0d6fefe07a02" + "value": "0e8d365d-2667-4426-ae66-7eb8302bc724" } ] }, From 8f285656b2c34388cb134a7fe6e0397e194bdc91 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Fri, 5 Dec 2025 12:23:06 +0000 Subject: [PATCH 12/15] NPA-5880: Update docs and requests --- postman/INT.postman_environment.json | 9 +- ...ervice.integration.postman_collection.json | 324 +----------------- 2 files changed, 14 insertions(+), 319 deletions(-) diff --git a/postman/INT.postman_environment.json b/postman/INT.postman_environment.json index de8ae93d..30e9d47b 100644 --- a/postman/INT.postman_environment.json +++ b/postman/INT.postman_environment.json @@ -21,13 +21,13 @@ "enabled": true }, { - "key": "private_key", + "key": "vrs_api_private_key", "value": "", "type": "secret", "enabled": true }, { - "key": "api_key", + "key": "nhs_developer_account_api_key", "value": "", "type": "secret", "enabled": true @@ -63,7 +63,8 @@ "enabled": true } ], + "color": null, "_postman_variable_scope": "environment", - "_postman_exported_at": "2025-12-01T17:15:19.423Z", - "_postman_exported_using": "Postman/11.68.4" + "_postman_exported_at": "2025-12-05T12:22:03.035Z", + "_postman_exported_using": "Postman/11.74.2" } \ No newline at end of file diff --git a/postman/validated_relationship_service.integration.postman_collection.json b/postman/validated_relationship_service.integration.postman_collection.json index 2bbe9069..6f86f120 100644 --- a/postman/validated_relationship_service.integration.postman_collection.json +++ b/postman/validated_relationship_service.integration.postman_collection.json @@ -2,7 +2,7 @@ "info": { "_postman_id": "c3ee07a1-47e5-43f7-96f9-5e56d403af45", "name": "Validated Relationship Service - Integration", - "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `private_key`\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from AWS Secrets Manager or requested to be sent securely from a member of the VRS team. This is not the same as the private key in the NHS Developer Account portal.\n\n#### `app_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value` (generated automatically)\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp_9674998535_access_token`, `tpp_9674998454_access_token`, `emis_9692113698_access_token,` and `emis_9692113612_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\n##### Pre-requisites\n\nAccess the token generation scripts from the [validated-relationships-service-api repo](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts):\n\n- get_app_access_token_int.py - for app restricted authorization\n \n- get_cis2_access_token_int.py - for CIS2 authorization\n \n- get_nhs_login_access_token_int.py - for Login user authorization\n \n\nSee the [README](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts/README.md) for information about how to run them and what environment variables are needed.\n\n##### Steps\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", + "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `vrs_api_private_key`\n\n**(This is not the same as the private key in the NHS Developer Account portal.)**\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the /main/vrs-app-credentials-{id} secret in **AWS Secrets Manager** or requested to be sent securely from a member of the VRS team.\n\n#### `nhs_developer_account_api_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value` (Generated automatically)\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp_9674998535_access_token`, `tpp_9674998454_access_token`, `emis_9692113698_access_token,` and `emis_9692113612_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\n##### Pre-requisites\n\nAccess the token generation scripts from the [validated-relationships-service-api repo](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts):\n\n- get_app_access_token_int.py - for app restricted authorization\n \n- get_cis2_access_token_int.py - for CIS2 authorization\n \n- get_nhs_login_access_token_int.py - for Login user authorization\n \n\nSee the [README](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts/README.md) for information about how to run them and what environment variables are needed.\n\n##### Steps\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "_exporter_id": "18067099", "_collection_link": "https://www.postman.com/lunar-crescent-672573/workspace/validated-relationship-service-pre-prod-20-11-2025/collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=share&source=collection_link&creator=18067099" @@ -18,109 +18,7 @@ "listen": "prerequest", "script": { "exec": [ - "var uuid = require('uuid');", - "", - "var privateKey = pm.environment.get('private_key') || '';", - "var api_key_value = pm.environment.get('api_key') || '';", - "", - "if (!privateKey) {", - " throw new Error(\"Variable private_key must be set with your private key for signed JWT authentication.\");", - "}", - "", - "// Replace any '/n' new lines with actual new lines", - "privateKey = privateKey.replace(/\\\\n/g, '\\n');", - "", - "if (!api_key_value) {", - " throw new Error(\"Variable api_key must be set with your integration testing application API key.\");", - "}", - "", - "var auth_url = 'https://int.api.service.nhs.uk/oauth2-mock/token';", - "var navigator = {};", - "var window = {};", - "const interval = setTimeout(() => {}, 2147483647);", - "", - "return new Promise((resolve, reject) => { ", - " if (pm.globals.has('jsrsasign-js') && pm.globals.get('jsrsasign-js') !== \"\") {", - " return resolve();", - " }", - "", - " pm.sendRequest(", - " {", - " url: 'https://kjur.github.io/jsrsasign/jsrsasign-all-min.js',", - " method: 'GET'", - " }, function (err, res) {", - " if (err) {", - " return reject(err);", - " }", - "", - " pm.globals.set('jsrsasign-js', res.text()); ", - " return resolve();", - " }", - " );", - "}).then(() => { ", - " eval(pm.globals.get(\"jsrsasign-js\")); ", - "", - " // Set headers for JWT", - " var header = {", - " 'typ': 'JWT',", - " 'alg': 'RS512',", - " 'kid': 'VRS-dev-12-nov-2025'", - " };", - "", - " // Prepare timestamp in seconds", - " var currentTimestamp = Math.floor(Date.now() / 1000)", - " var uuid = require('uuid');", - " var jti_value = uuid.v4();", - " var data = {", - " 'sub': api_key_value,", - " 'iss': api_key_value,", - " 'jti': jti_value,", - " 'aud': auth_url,", - " 'exp': currentTimestamp + 180, // expiry time is 180 seconds from time of creation", - " } ", - "", - " var sJWT = KJUR.jws.JWS.sign(header.alg, JSON.stringify(header), JSON.stringify(data), privateKey); ", - " return new Promise((resolve, reject) => { ", - " pm.sendRequest({", - " url: auth_url,", - " method: \"POST\",", - " header: {", - " \"Content-Type\": \"application/x-www-form-urlencoded\"", - " },", - " body: {", - " mode: \"urlencoded\",", - " urlencoded: [", - " {", - " key: \"grant_type\",", - " value: \"client_credentials\"", - " },", - " {", - " key: \"client_assertion_type\",", - " value: \"urn:ietf:params:oauth:client-assertion-type:jwt-bearer\",", - " },", - " {", - " key: \"client_assertion\",", - " value: sJWT", - " }", - " ]", - " }", - " }, function (err, res) { ", - " if (err) {", - " return reject(err);", - " }", - "", - " //assign the authorization header value", - " pm.environment.set('consent_app_auth_header_value', `${res.json().access_token}`);", - "", - " return resolve();", - " }); ", - " });", - "}).then(() => { ", - " clearTimeout(interval);", - "}).catch((err) => { ", - " console.error(err); ", - " clearTimeout(interval); ", - "});" + "" ], "type": "text/javascript", "packages": {}, @@ -769,109 +667,7 @@ "listen": "prerequest", "script": { "exec": [ - "var uuid = require('uuid');", - "", - "var privateKey = pm.environment.get('private_key') || '';", - "var api_key_value = pm.environment.get('api_key') || '';", - "", - "if (!privateKey) {", - " throw new Error(\"Variable private_key must be set with your private key for signed JWT authentication.\");", - "}", - "", - "// Replace any '/n' new lines with actual new lines", - "privateKey = privateKey.replace(/\\\\n/g, '\\n');", - "", - "if (!api_key_value) {", - " throw new Error(\"Variable api_key must be set with your integration testing application API key.\");", - "}", - "", - "var auth_url = 'https://int.api.service.nhs.uk/oauth2-mock/token';", - "var navigator = {};", - "var window = {};", - "const interval = setTimeout(() => {}, 2147483647);", - "", - "return new Promise((resolve, reject) => { ", - " if (pm.globals.has('jsrsasign-js') && pm.globals.get('jsrsasign-js') !== \"\") {", - " return resolve();", - " }", - "", - " pm.sendRequest(", - " {", - " url: 'https://kjur.github.io/jsrsasign/jsrsasign-all-min.js',", - " method: 'GET'", - " }, function (err, res) {", - " if (err) {", - " return reject(err);", - " }", - "", - " pm.globals.set('jsrsasign-js', res.text()); ", - " return resolve();", - " }", - " );", - "}).then(() => { ", - " eval(pm.globals.get(\"jsrsasign-js\")); ", - "", - " // Set headers for JWT", - " var header = {", - " 'typ': 'JWT',", - " 'alg': 'RS512',", - " 'kid': 'VRS-dev-12-nov-2025'", - " };", - "", - " // Prepare timestamp in seconds", - " var currentTimestamp = Math.floor(Date.now() / 1000)", - " var uuid = require('uuid');", - " var jti_value = uuid.v4();", - " var data = {", - " 'sub': api_key_value,", - " 'iss': api_key_value,", - " 'jti': jti_value,", - " 'aud': auth_url,", - " 'exp': currentTimestamp + 180, // expiry time is 180 seconds from time of creation", - " } ", - "", - " var sJWT = KJUR.jws.JWS.sign(header.alg, JSON.stringify(header), JSON.stringify(data), privateKey); ", - " return new Promise((resolve, reject) => { ", - " pm.sendRequest({", - " url: auth_url,", - " method: \"POST\",", - " header: {", - " \"Content-Type\": \"application/x-www-form-urlencoded\"", - " },", - " body: {", - " mode: \"urlencoded\",", - " urlencoded: [", - " {", - " key: \"grant_type\",", - " value: \"client_credentials\"", - " },", - " {", - " key: \"client_assertion_type\",", - " value: \"urn:ietf:params:oauth:client-assertion-type:jwt-bearer\",", - " },", - " {", - " key: \"client_assertion\",", - " value: sJWT", - " }", - " ]", - " }", - " }, function (err, res) { ", - " if (err) {", - " return reject(err);", - " }", - "", - " //assign the authorization header value", - " pm.environment.set('consent_app_auth_header_value', `${res.json().access_token}`);", - "", - " return resolve();", - " }); ", - " });", - "}).then(() => { ", - " clearTimeout(interval);", - "}).catch((err) => { ", - " console.error(err); ", - " clearTimeout(interval); ", - "});" + "" ], "type": "text/javascript", "packages": {}, @@ -1520,109 +1316,7 @@ "listen": "prerequest", "script": { "exec": [ - "var uuid = require('uuid');", - "", - "var privateKey = pm.environment.get('private_key') || '';", - "var api_key_value = pm.environment.get('api_key') || '';", - "", - "if (!privateKey) {", - " throw new Error(\"Variable private_key must be set with your private key for signed JWT authentication.\");", - "}", - "", - "// Replace any '/n' new lines with actual new lines", - "privateKey = privateKey.replace(/\\\\n/g, '\\n');", - "", - "if (!api_key_value) {", - " throw new Error(\"Variable api_key must be set with your integration testing application API key.\");", - "}", - "", - "var auth_url = 'https://int.api.service.nhs.uk/oauth2-mock/token';", - "var navigator = {};", - "var window = {};", - "const interval = setTimeout(() => {}, 2147483647);", - "", - "return new Promise((resolve, reject) => { ", - " if (pm.globals.has('jsrsasign-js') && pm.globals.get('jsrsasign-js') !== \"\") {", - " return resolve();", - " }", - "", - " pm.sendRequest(", - " {", - " url: 'https://kjur.github.io/jsrsasign/jsrsasign-all-min.js',", - " method: 'GET'", - " }, function (err, res) {", - " if (err) {", - " return reject(err);", - " }", - "", - " pm.globals.set('jsrsasign-js', res.text()); ", - " return resolve();", - " }", - " );", - "}).then(() => { ", - " eval(pm.globals.get(\"jsrsasign-js\")); ", - "", - " // Set headers for JWT", - " var header = {", - " 'typ': 'JWT',", - " 'alg': 'RS512',", - " 'kid': 'VRS-dev-12-nov-2025'", - " };", - "", - " // Prepare timestamp in seconds", - " var currentTimestamp = Math.floor(Date.now() / 1000)", - " var uuid = require('uuid');", - " var jti_value = uuid.v4();", - " var data = {", - " 'sub': api_key_value,", - " 'iss': api_key_value,", - " 'jti': jti_value,", - " 'aud': auth_url,", - " 'exp': currentTimestamp + 180, // expiry time is 180 seconds from time of creation", - " } ", - "", - " var sJWT = KJUR.jws.JWS.sign(header.alg, JSON.stringify(header), JSON.stringify(data), privateKey); ", - " return new Promise((resolve, reject) => { ", - " pm.sendRequest({", - " url: auth_url,", - " method: \"POST\",", - " header: {", - " \"Content-Type\": \"application/x-www-form-urlencoded\"", - " },", - " body: {", - " mode: \"urlencoded\",", - " urlencoded: [", - " {", - " key: \"grant_type\",", - " value: \"client_credentials\"", - " },", - " {", - " key: \"client_assertion_type\",", - " value: \"urn:ietf:params:oauth:client-assertion-type:jwt-bearer\",", - " },", - " {", - " key: \"client_assertion\",", - " value: sJWT", - " }", - " ]", - " }", - " }, function (err, res) { ", - " if (err) {", - " return reject(err);", - " }", - "", - " //assign the authorization header value", - " pm.environment.set('consent_app_auth_header_value', `${res.json().access_token}`);", - "", - " return resolve();", - " }); ", - " });", - "}).then(() => { ", - " clearTimeout(interval);", - "}).catch((err) => { ", - " console.error(err); ", - " clearTimeout(interval); ", - "});" + "" ], "type": "text/javascript", "packages": {}, @@ -2333,7 +2027,7 @@ }, { "key": "X-IM1-Connection-Params", - "value": "{{tpp_1_access_token}};A82648", + "value": "{{tpp_9674998535_access_token}};A82648", "type": "text" }, { @@ -3846,18 +3540,18 @@ "exec": [ "var uuid = require('uuid');", "", - "var privateKey = pm.environment.get('private_key') || '';", - "var api_key_value = pm.environment.get('api_key') || '';", + "var privateKey = pm.environment.get('vrs_api_private_key') || '';", + "var api_key_value = pm.environment.get('nhs_developer_account_api_key') || '';", "", "if (!privateKey) {", - " throw new Error(\"Variable private_key must be set with your private key for signed JWT authentication.\");", + " throw new Error(\"Variable vrs_api_private_key must be set with your private key for signed JWT authentication.\");", "}", "", "// Replace any '/n' new lines with actual new lines", "privateKey = privateKey.replace(/\\\\n/g, '\\n');", "", "if (!api_key_value) {", - " throw new Error(\"Variable api_key must be set with your integration testing application API key.\");", + " throw new Error(\"Variable nhs_developer_account_app_key must be set with your integration testing application API key.\");", "}", "", "var auth_url = 'https://int.api.service.nhs.uk/oauth2-mock/token';", From f21a28f405dbcfb04f6012686fc698e50bb7050f Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Fri, 5 Dec 2025 12:25:02 +0000 Subject: [PATCH 13/15] NPA-5880: Updated link in OAS --- specification/validated-relationships-service-api.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/validated-relationships-service-api.yaml b/specification/validated-relationships-service-api.yaml index b22581e4..178e2aa0 100644 --- a/specification/validated-relationships-service-api.yaml +++ b/specification/validated-relationships-service-api.yaml @@ -150,7 +150,7 @@ info: * is for formal integration testing * includes authorisation with NHS Login - [Run In Postman](https://app.getpostman.com/run-collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45%26entityType%3Dcollection%26workspaceId%3D082e43b8-9a51-4a16-af66-0d2b233cd69c#?env%5BINT%5D=W3sia2V5IjoiY2lzMl90b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IkVkYXZmVFhYaEJyMk5JeUNQSVBhaUVITnZWTzUiLCJzZXNzaW9uSW5kZXgiOjB9LHsia2V5IjoibG9naW5fdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwic2Vzc2lvbkluZGV4IjoxfSx7ImtleSI6ImFwaV9iYXNlX3VybCIsInZhbHVlIjoiaHR0cHM6Ly9pbnQuYXBpLnNlcnZpY2UubmhzLnVrL3ZhbGlkYXRlZC1yZWxhdGlvbnNoaXBzL0ZISVIvUjQiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoiZGVmYXVsdCIsInNlc3Npb25WYWx1ZSI6Imh0dHBzOi8vaW50LmFwaS5zZXJ2aWNlLm5ocy51ay92YWxpZGF0ZWQtcmVsYXRpb25zaGlwcy9GSElSL1I0IiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJodHRwczovL2ludC5hcGkuc2VydmljZS5uaHMudWsvdmFsaWRhdGVkLXJlbGF0aW9uc2hpcHMvRkhJUi9SNCIsInNlc3Npb25JbmRleCI6Mn0seyJrZXkiOiJwcml2YXRlX2tleSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6Ii0tLS0tQkVHSU4gUFJJVkFURS4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tXFxuTUlJSlFRSUJBREFOQmdrcWhraUc5dzBCQVFFRkFBU0NDU3N3Z2drbkFnRUFBb0lDQVFEVTA4YVBiVnJMUUdEd1xcbkxhNjZTWHlTc3NYU2dFVmt1eXFvV1RiRm1lZVdGVWlseXdMSzBqdWk0aXIyOVdVWnVqajZrdDVoOTBXWjBEeUpcXG5pd0lPZTliUHVZZ210dmpvUWNpVmdSdlFCeFJWWGM4SVJ5b3lFZ1dKWGVYMVF1T1RVVVhGcE9lc2VBcjlyV3l4XFxuYlU1MHpNTUxaN0RLSHdZZVBpTWRtc2hMaFBiNm1nUnBHUGl6bHhSQ1FxekRicVc4dERDNWFoWmFDeVBtcWFoSlxcbmFxaUs4MkFjaW1uTy9RZ2UxY3dSSjBrTFNndGRubUt4RlRab25uVjliSXNsMDVIa3MzN0dPektwemRLdHBQWXZcXG5hQmhoWVVGc2NuMkd4K1JsaHBqNlFnUktlcDVKQ1FzdVMxMW1CSjNhNmVWQ0V5WWt1TnR5dFlYeGlQdmFyWFZOXFxuVWRaSENLTW96Y3FKTUx6V2ZVSkFvVFhrcDFSd0VEZGw1c0x5TzlsbmZYTnR2SmJMdjhoQWpTSU9PL2NFQjhiS1xcblZlcldiOW5wSzE5eHF4UkYzRHUyYjhXcHluRzBFaWdtTStJVW5FWEI2TFVDcVlqYlY5dHozM1QwUjNQZGh4NFhcXG5GOHZLc1h2NldDWFV5VVpLTUovQVUwMnN2b2JZbVdycDkxRHRHYncvWGdKRWYwYUlVMkszWkxkVDc1eUVkT1h6XFxuKythWTVtN1YyM2xKQUI4M1N6OE9UdUFtYjJHZGNyL1dsWEVIejRucXZrNG1QUlN6c3FhVXpwVzhKcktXQUdCTFxcblNSdG1VOHVhSGdZMHlhaEZ6SDVrTTcvaGtTU0E2aHlEaWgxcXk5MEoyUTdLNENXK2xPS25kTmE2WkE4dGVTQWNcXG5ud3RweWgwVkkvcndwN01EbmVWeS9MdUNXUVNHTndJREFRQUJBb0lDQUU3N0hJZmpuRHNyZEE0TjFmYjZDSW5rXFxuWURlRE5MMXlIQjJIcGlUa3ZhWGIxaTc0ek50NTgzbTZGeG00N2NFRGM5dkJuMWVaelRHTXJycVlaTFg5VFRXZlxcbmM2QnliS0s4cnZTVWlqN0VNYzZRVnFHS3oyVHZmVENDTVRHNGxmMzR2anpmdXI0dGVsNnorazlKOGtDME1Ibk9cXG5ERFNtR0w0bWJ4K3diajVnWk11UlZxdXVBYldjRG4rY2dNS3lFRDJjWFN5aDZ4T1ZhTWhVRThqVEZTTWp1SG8rXFxuLzQ4NkpjWlRyeng2YU1nUXZYRUxzekptWGQrclZveXFPR1ZjUTVzczVaSXBLOThLSy9JVzh1bWE1dGxVbjFQZ1xcbmxTYnNqWjBEdTBlOE1oMTFyY0lLNGlSWEFaMDNmMkZiUmFJa3V4WUxxQnpFc3FWMUlZb0FyelIzZDE2N0hOajlcXG5iQmJheElXT3A0QVJqc1NQcjNyQzJlTUl0dm84eDhlY1RuaWdpZUtlYklyVXMvcTEvQTRhYmVZemJPTm9SWVhkXFxucFlHOEEweUVTR1hqQ3lHdm12Qy9ZK0NIaUpiVTVwdkpDQ1FPL1RzZUdtRHdDejZNSU5XTitzSlpaR2lOYnUyelxcbnoyRjNGVFZSeFU5UzhXUVdzYmZsRTI4MlpieVQzWDc1dU1TM2RuWU4zbWtwNTZrL0ZCZFl2ZlM4UzdFbS8zTlpcXG5OZG1LbjIvN0JweWRFWkpPUWIrSEh1Um1hbmtPWFRFZlFPWlBOUm14RVNTVlByRGlmTGlYSzhTMitZb29BdkREXFxuL2p3bzhta3FOZVVjRDk5YVlrYU5OdjRyS2g2aUYrUmZob0pvOWhxSDlRQkdrMFBmek1ucjdMNEFhTXB0ZEtXblxcbitDSy8ybkdVV3FmbWVIWWphdk5oQW9JQkFRRHNCQUhTT2hXQ0J5RUFPWTRnbm94T2dvcngyQjlHRk9SdE5qUStcXG54bTF1eGdweWprNURhVCs0QUNXWkVTL3Vza2JIU1dDblUrZTF5TVoxU3RROWZaR3BjclZqbmdGSTl0TFRtd1ZnXFxuc3JscFBqVkNpR0tUM0dzMkNDaHY2cHp5YnRjd1NEQlY1WGxFZE1ydmZFQURQRGlEQmdkNXJOUFVGYUIzSVQyY1xcbmlSRzJTelQxRkVjZjBNVDR4NzJkLzFRSG1oaFRaME9rTERJMnNITjg5V3I0a0NTK1F4TlhmNlh6c1F5Q1pwaitcXG5Pd2RJZzN1eWlSRGh4L0dtd1AwVXRic3VyUmd3S3FVWmYraWt0d1p0R2JqekMrWVpqYU1Pc1g3ZFkzYUhVMjQ3XFxudkNvRmc5bWRtZ2dXdDM3dHdSWTBsY0p6c3piMC9XNm4wM01wanlydUhOdGwrSEtSQW9JQkFRRG0yU0FIRHNscFxcbkp2TEhCeWhIL3pLZnBmNTBSUkxRQllsbzNjRnBmbHdQaG9JcitucG4zaEZnaGNseTFNeTdteFN0NFJYdmI2WlVcXG5vSDNjMldsK29jRlFsbDUrZ3BocmlNYmwvUXJSeG0vMCtpZjNwUStEYytTNWVtTkg3Wjd4ZkgwOUxnbERRZDJqXFxuVlNVeUlOejlQNndXMG5vbzlmZ2tDbnMvbUFaNUJ0clpJR2RPdkI4QXo3WTJtaFlpUjhGTTExamRsS0R5bzFmVVxcbmRXNC9DV3Y4S05sZ1NWRXppTDFQTXB0T1JaMmFBcm02WTE5d2Z1cGtHK0daOFRLMENBUzBOUDVBUThsMmVFWjBcXG5mYVBBbzVOUTFGc0lmMWpnSVZPcGNNMXdWUFRNcUhJOENBUUZublRIRS9DdWVvSklhUmtXa3NLQktGSE5OYzhOXFxuMHE4b0pDVkFNTUJIQW9JQkFIUndnYW1ES0l0UEV4UDJVVTE4aTBKTW0xbzN3eTRqTHBORzg3Mm96ZUtoNkJPZVxcbmE3Uk1YN2hhc2pIelRjK1l1dHlsTWY4N29ReUpjb2Y1ay82R1RlL29mTjhaM0E1d1g1RXdZUlhVOXk2YUYxS3NcXG4wTjJjR0hTK3o1eHZobUVCR0Q5a3pod0NxN0ovWUlPSXJGZ3NSTUUzbjBhRFlycTJ0TVV4YkNFbmFzcWlEZzEvXFxucEp0b3QxVDV6bTM5d3lwQTl4Rm0xL05PTHJQV21CT2xUTkkyNHpuUEErTGVRalNaTzgrMTZITTlFaG5QYko2blxcbml1R3BjR3BSdWtxV1lqUGtDQlB6WmlMUGZTcU9kYWdyMFpodlhXVnNBRzlHV0kzRy9YcEVTaFZFZndMYml1aDdcXG5UdFJPVVZ2aE1DQmZabUVJb090N2dUVmhWK2JBRUhFTFlaN01WVkVDZ2dFQWZIL2pMd3RCZ3MxM3AvRnJQeEVhXFxuSzFIcDNxa1dFVXk3SSt4ZEVGa09xMnplclh0RUl0cDRRcmRFd3dLVGZDYVNTNGlXUFBEWkl0RC9zR2tzNVJlMVxcbjI1R05XdXR4NnFUMHFEc0ZaOGQrdi85ZUtNaERpcUNwWFlMdEluQzhCUDhmeUN3WTRNWVlFNnVyQ05NQ2ZDNm5cXG4wQk1wd1FlUEVWajV5WDFqR0VpakpQQzk1bys4cE1KaFFpZHVBb1R5Y2srOTVKcnhCb3NqcGpqREFZcENTOWQ0XFxuRE43ZHhVNWMwdWEzTGNxTHlmRG9XK2FXSldTOVlzcEtyS3lSck5pYU9OcFB1VGNWNHlmUXo2aW05UkVETlZlaFxcbjFQNWhYMWQ1K0dzVzBSdHdmeVBsb0F5dXBwMGoyKzRjSXUxOWNESUdUczlOeVR5R2lZY1lxUnJVVG5EWUNqdUFcXG5wd0tDQVFBV3hReFdCek52eC9aTWRZUCtKN3k3d1Q5U2NSWGR0eTJUaWxSdHVsU0xqRmZsdW50QnFBdWU1ZVk2XFxuNWNITURqdzdPZWo4ZmhRV3QzdmIvcVBwRHl3aDl0U0tIQkdCcVl0SStzQkV2N25LajVHL051VllIWDhFbjhwb1xcbnNaU1J6YS9xcXh3Ukw2bWh6aTQ5RjhKOWRnWVhyS1M5ejlKQ2kxWUVJQlcwNWNMaVRZOWRWYjhmRW0wcjJZTThcXG5CTmY0NTRMZTRtU1pyUk40aDBuREw3TGc3TExaeXlvOUtWY3NZQ0hua0NhRlUzTUtDZU56eWRGOGF6cmdhZFNvXFxucUMzMm5MYkgxWTBTeVJoRTNRMzlZQ1VlRnpOWW85d3d5bnplZmpGdXBzcnJDcWhBT2UxZ0MrUTExMjR0Rk1adVxcbktFSHcyQUJCRU9XK01OMnZGV3BGeVpwZVR4OU5cXG4tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tIiwic2Vzc2lvbkluZGV4IjozfSx7ImtleSI6ImFwaV9rZXkiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiI0aHdpdnBKQVpJcXZwSmxBV09jdFJYQ1NnVU1sd1p1SyIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiNGh3aXZwSkFaSXF2cEpsQVdPY3RSWENTZ1VNbHdadUsiLCJzZXNzaW9uSW5kZXgiOjR9LHsia2V5IjoiY29uc2VudF9hcHBfYXV0aF9oZWFkZXJfdmFsdWUiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJEekt2Vko1UXF5WjdlTkdRb2MzbjJZbklDbmQyIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJEekt2Vko1UXF5WjdlTkdRb2MzbjJZbklDbmQyIiwic2Vzc2lvbkluZGV4Ijo1fSx7ImtleSI6InRwcF85Njc0OTk4NTM1X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiNTUyODY5ODM0XCIsXCJQYXNzcGhyYXNlXCI6XCJ2UkpxdTEzOWQ3ZHZlclpnKzhlVzd2V0ZTQ2FTbndBV0ZSNlk0dFlYalA3L3VGU2d0djdrMklPd0E0NzhPV3A3WkRxNE1CWUM2aGNUSVRFcm5Od2dieFZtN1ZaOGYzUVVuTC4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI1NTI4Njk4MzRcIixcIlBhc3NwaHJhc2VcIjpcInZSSnF1MTM5ZDdkdmVyWmcrOGVXN3ZXRlNDYVNud0FXRlI2WTR0WVhqUDcvdUZTZ3R2N2sySU93QTQ3OE9XcDdaRHE0TUJZQzZoY1RJVEVybk53Z2J4Vm03Vlo4ZjNRVW5MUFdoKzRLN0VQNWkvNEswQWRHWjBJSzBVdzcrQzdYWmM3RkhnOFJTY0lqaCsyTXFGN3Z1WjQ0dW1lUHZnOGVTTTQ4V1I4SzRYRT1cIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJ6OEVsQ0RJM2Uxc2xXTGJac0lSVXdpaHk4V1pGc2NyMmRQbVRmVXVpK2dBcVE3WmgwV1BWSVhvL005RHVFVnpPM1hhRk9wYkIzd2M5eWhBVWhBWmhVZz09XCJ9Iiwic2Vzc2lvbkluZGV4Ijo2fSx7ImtleSI6InRwcF85Njc0OTk4NDU0X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiODU4ODAzMjAzXCIsXCJQYXNzcGhyYXNlXCI6XCJKVzRIc3JXTWw0SEhNamx4OUJJVW5zUzV1QkpmcUFsWnk0L2VZbUt3a3U5VUZRL0xBQ21PR21tWGJkOG95VUZiMHY3NE14bkVmKzl6UVdPQTQ0QUtPSXQ3bEtFdlJJbzVNYy4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI4NTg4MDMyMDNcIixcIlBhc3NwaHJhc2VcIjpcIkpXNEhzcldNbDRISE1qbHg5QklVbnNTNXVCSmZxQWxaeTQvZVltS3drdTlVRlEvTEFDbU9HbW1YYmQ4b3lVRmIwdjc0TXhuRWYrOXpRV09BNDRBS09JdDdsS0V2UklvNU1jQjVOanZaTkJCaWhMTE82N09xNm9KY0x5bHpDRzFaZUhqTEl4MTJrUnQwblZEc3ZqQ2IyMTZuRm5EYk9mNWkxQWFYbXBTdFVIY1xcdTAwM2RcIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJrMFlPWVdzVHRteGdrVlpTWXA1YXkraEd6eUYyWUhTcEE2YnpxQTZHODdiOWtxbitHTy9XQ3E0RFRiQ2RISGhkUmZCRVhhZThUU2hHa2lpOEt1Qnd3QVxcdTAwM2RcXHUwMDNkXCJ9Iiwic2Vzc2lvbkluZGV4Ijo3fSx7ImtleSI6ImVtaXNfOTY5MjExMzY5OF9hY2Nlc3NfdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiV3VqUGxITDNGK0p4SUpReDdGUER3aWNvKzZWamVEYXp3Zjd2eW91a1M0b2c2RnllZXFxSUlVSkVVdS8zRHZZRkljQUVBenFEdk5hMXk2UGY3Rlg5Q3c9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCI3OWU4MzkyOS0uLi4iLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IntcIkltMUNhY2hlS2V5XCI6XCJXdWpQbEhMM0YrSnhJSlF4N0ZQRHdpY28rNlZqZURhendmN3Z5b3VrUzRvZzZGeWVlcXFJSVVKRVV1LzNEdllGSWNBRUF6cUR2TmExeTZQZjdGWDlDdz09XCIsXCJBY2Nlc3NJZGVudGl0eUd1aWRcIjpcIjc5ZTgzOTI5LWFiNzctNDI2Ni1iMWI5LWZjN2I4MjNjMTUyNVwifSIsInNlc3Npb25JbmRleCI6OH0seyJrZXkiOiJlbWlzXzk2OTIxMTM2MTJfYWNjZXNzX3Rva2VuIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoie1wiSW0xQ2FjaGVLZXlcIjpcIkM4QXZheEp0YjZaMlFlemNSelEzWUprbFRlSVVtU2N6Y0F6Mno1a2tDazlPNjQ0dlVqV20veUJzRWF6c0htZmxPT0V1MDBlc3IvbGxDT2g4RzQzbWNBPT1cIixcIkFjY2Vzc0lkZW50aXR5R3VpZFwiOlwiMjE3ZWY2ZjEtLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiQzhBdmF4SnRiNloyUWV6Y1J6UTNZSmtsVGVJVW1TY3pjQXoyejVra0NrOU82NDR2VWpXbS95QnNFYXpzSG1mbE9PRXUwMGVzci9sbENPaDhHNDNtY0E9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCIyMTdlZjZmMS0xZDcwLTRhOGUtYjcyOC02NjQzMTZjNzU2NTRcIn0iLCJzZXNzaW9uSW5kZXgiOjl9XQ==) + [Run In Postman](https://app.getpostman.com/run-collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45%26entityType%3Dcollection%26workspaceId%3D082e43b8-9a51-4a16-af66-0d2b233cd69c#?env%5BINT%5D=W3sia2V5IjoiY2lzMl90b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IlMwcEh2RTh3eUdMM0lTazNpdFVDMFBxTkFEV28iLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IlMwcEh2RTh3eUdMM0lTazNpdFVDMFBxTkFEV28iLCJzZXNzaW9uSW5kZXgiOjB9LHsia2V5IjoibG9naW5fdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJqOXcxNUxMa1VjbWtzOU15c0FHbGpmTW9LMGdGIiwic2Vzc2lvbkluZGV4IjoxfSx7ImtleSI6ImFwaV9iYXNlX3VybCIsInZhbHVlIjoiaHR0cHM6Ly9pbnQuYXBpLnNlcnZpY2UubmhzLnVrL3ZhbGlkYXRlZC1yZWxhdGlvbnNoaXBzL0ZISVIvUjQiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoiZGVmYXVsdCIsInNlc3Npb25WYWx1ZSI6Imh0dHBzOi8vaW50LmFwaS5zZXJ2aWNlLm5ocy51ay92YWxpZGF0ZWQtcmVsYXRpb25zaGlwcy9GSElSL1I0IiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJodHRwczovL2ludC5hcGkuc2VydmljZS5uaHMudWsvdmFsaWRhdGVkLXJlbGF0aW9uc2hpcHMvRkhJUi9SNCIsInNlc3Npb25JbmRleCI6Mn0seyJrZXkiOiJ2cnNfYXBpX3ByaXZhdGVfa2V5IiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoiLS0tLS1CRUdJTiBQUklWQVRFLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiItLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS1cXG5NSUlKUVFJQkFEQU5CZ2txaGtpRzl3MEJBUUVGQUFTQ0NTc3dnZ2tuQWdFQUFvSUNBUURVMDhhUGJWckxRR0R3XFxuTGE2NlNYeVNzc1hTZ0VWa3V5cW9XVGJGbWVlV0ZVaWx5d0xLMGp1aTRpcjI5V1VadWpqNmt0NWg5MFdaMER5Slxcbml3SU9lOWJQdVlnbXR2am9RY2lWZ1J2UUJ4UlZYYzhJUnlveUVnV0pYZVgxUXVPVFVVWEZwT2VzZUFyOXJXeXhcXG5iVTUwek1NTFo3REtId1llUGlNZG1zaExoUGI2bWdScEdQaXpseFJDUXF6RGJxVzh0REM1YWhaYUN5UG1xYWhKXFxuYXFpSzgyQWNpbW5PL1FnZTFjd1JKMGtMU2d0ZG5tS3hGVFpvbm5WOWJJc2wwNUhrczM3R096S3B6ZEt0cFBZdlxcbmFCaGhZVUZzY24yR3grUmxocGo2UWdSS2VwNUpDUXN1UzExbUJKM2E2ZVZDRXlZa3VOdHl0WVh4aVB2YXJYVk5cXG5VZFpIQ0tNb3pjcUpNTHpXZlVKQW9UWGtwMVJ3RURkbDVzTHlPOWxuZlhOdHZKYkx2OGhBalNJT08vY0VCOGJLXFxuVmVyV2I5bnBLMTl4cXhSRjNEdTJiOFdweW5HMEVpZ21NK0lVbkVYQjZMVUNxWWpiVjl0ejMzVDBSM1BkaHg0WFxcbkY4dktzWHY2V0NYVXlVWktNSi9BVTAyc3ZvYlltV3JwOTFEdEdidy9YZ0pFZjBhSVUySzNaTGRUNzV5RWRPWHpcXG4rK2FZNW03VjIzbEpBQjgzU3o4T1R1QW1iMkdkY3IvV2xYRUh6NG5xdms0bVBSU3pzcWFVenBXOEpyS1dBR0JMXFxuU1J0bVU4dWFIZ1kweWFoRnpINWtNNy9oa1NTQTZoeURpaDFxeTkwSjJRN0s0Q1crbE9LbmROYTZaQTh0ZVNBY1xcbm53dHB5aDBWSS9yd3A3TURuZVZ5L0x1Q1dRU0dOd0lEQVFBQkFvSUNBRTc3SElmam5Ec3JkQTROMWZiNkNJbmtcXG5ZRGVETkwxeUhCMkhwaVRrdmFYYjFpNzR6TnQ1ODNtNkZ4bTQ3Y0VEYzl2Qm4xZVp6VEdNcnJxWVpMWDlUVFdmXFxuYzZCeWJLSzhydlNVaWo3RU1jNlFWcUdLejJUdmZUQ0NNVEc0bGYzNHZqemZ1cjR0ZWw2eitrOUo4a0MwTUhuT1xcbkREU21HTDRtYngrd2JqNWdaTXVSVnF1dUFiV2NEbitjZ01LeUVEMmNYU3loNnhPVmFNaFVFOGpURlNNanVIbytcXG4vNDg2SmNaVHJ6eDZhTWdRdlhFTHN6Sm1YZCtyVm95cU9HVmNRNXNzNVpJcEs5OEtLL0lXOHVtYTV0bFVuMVBnXFxubFNic2paMER1MGU4TWgxMXJjSUs0aVJYQVowM2YyRmJSYUlrdXhZTHFCekVzcVYxSVlvQXJ6UjNkMTY3SE5qOVxcbmJCYmF4SVdPcDRBUmpzU1ByM3JDMmVNSXR2bzh4OGVjVG5pZ2llS2ViSXJVcy9xMS9BNGFiZVl6Yk9Ob1JZWGRcXG5wWUc4QTB5RVNHWGpDeUd2bXZDL1krQ0hpSmJVNXB2SkNDUU8vVHNlR21Ed0N6Nk1JTldOK3NKWlpHaU5idTJ6XFxuejJGM0ZUVlJ4VTlTOFdRV3NiZmxFMjgyWmJ5VDNYNzV1TVMzZG5ZTjNta3A1NmsvRkJkWXZmUzhTN0VtLzNOWlxcbk5kbUtuMi83QnB5ZEVaSk9RYitISHVSbWFua09YVEVmUU9aUE5SbXhFU1NWUHJEaWZMaVhLOFMyK1lvb0F2RERcXG4vandvOG1rcU5lVWNEOTlhWWthTk52NHJLaDZpRitSZmhvSm85aHFIOVFCR2swUGZ6TW5yN0w0QWFNcHRkS1duXFxuK0NLLzJuR1VXcWZtZUhZamF2TmhBb0lCQVFEc0JBSFNPaFdDQnlFQU9ZNGdub3hPZ29yeDJCOUdGT1J0TmpRK1xcbnhtMXV4Z3B5ams1RGFUKzRBQ1daRVMvdXNrYkhTV0NuVStlMXlNWjFTdFE5ZlpHcGNyVmpuZ0ZJOXRMVG13VmdcXG5zcmxwUGpWQ2lHS1QzR3MyQ0NodjZwenlidGN3U0RCVjVYbEVkTXJ2ZkVBRFBEaURCZ2Q1ck5QVUZhQjNJVDJjXFxuaVJHMlN6VDFGRWNmME1UNHg3MmQvMVFIbWhoVFowT2tMREkyc0hOODlXcjRrQ1MrUXhOWGY2WHpzUXlDWnBqK1xcbk93ZElnM3V5aVJEaHgvR213UDBVdGJzdXJSZ3dLcVVaZitpa3R3WnRHYmp6QytZWmphTU9zWDdkWTNhSFUyNDdcXG52Q29GZzltZG1nZ1d0Mzd0d1JZMGxjSnpzemIwL1c2bjAzTXBqeXJ1SE50bCtIS1JBb0lCQVFEbTJTQUhEc2xwXFxuSnZMSEJ5aEgvektmcGY1MFJSTFFCWWxvM2NGcGZsd1Bob0lyK25wbjNoRmdoY2x5MU15N214U3Q0Ulh2YjZaVVxcbm9IM2MyV2wrb2NGUWxsNStncGhyaU1ibC9RclJ4bS8wK2lmM3BRK0RjK1M1ZW1OSDdaN3hmSDA5TGdsRFFkMmpcXG5WU1V5SU56OVA2d1cwbm9vOWZna0Nucy9tQVo1QnRyWklHZE92QjhBejdZMm1oWWlSOEZNMTFqZGxLRHlvMWZVXFxuZFc0L0NXdjhLTmxnU1ZFemlMMVBNcHRPUloyYUFybTZZMTl3ZnVwa0crR1o4VEswQ0FTME5QNUFROGwyZUVaMFxcbmZhUEFvNU5RMUZzSWYxamdJVk9wY00xd1ZQVE1xSEk4Q0FRRm5uVEhFL0N1ZW9KSWFSa1drc0tCS0ZITk5jOE5cXG4wcThvSkNWQU1NQkhBb0lCQUhSd2dhbURLSXRQRXhQMlVVMThpMEpNbTFvM3d5NGpMcE5HODcyb3plS2g2Qk9lXFxuYTdSTVg3aGFzakh6VGMrWXV0eWxNZjg3b1F5SmNvZjVrLzZHVGUvb2ZOOFozQTV3WDVFd1lSWFU5eTZhRjFLc1xcbjBOMmNHSFMrejV4dmhtRUJHRDlremh3Q3E3Si9ZSU9JckZnc1JNRTNuMGFEWXJxMnRNVXhiQ0VuYXNxaURnMS9cXG5wSnRvdDFUNXptMzl3eXBBOXhGbTEvTk9MclBXbUJPbFROSTI0em5QQStMZVFqU1pPOCsxNkhNOUVoblBiSjZuXFxuaXVHcGNHcFJ1a3FXWWpQa0NCUHpaaUxQZlNxT2RhZ3IwWmh2WFdWc0FHOUdXSTNHL1hwRVNoVkVmd0xiaXVoN1xcblR0Uk9VVnZoTUNCZlptRUlvT3Q3Z1RWaFYrYkFFSEVMWVo3TVZWRUNnZ0VBZkgvakx3dEJnczEzcC9GclB4RWFcXG5LMUhwM3FrV0VVeTdJK3hkRUZrT3EyemVyWHRFSXRwNFFyZEV3d0tUZkNhU1M0aVdQUERaSXREL3NHa3M1UmUxXFxuMjVHTld1dHg2cVQwcURzRlo4ZCt2LzllS01oRGlxQ3BYWUx0SW5DOEJQOGZ5Q3dZNE1ZWUU2dXJDTk1DZkM2blxcbjBCTXB3UWVQRVZqNXlYMWpHRWlqSlBDOTVvKzhwTUpoUWlkdUFvVHljays5NUpyeEJvc2pwampEQVlwQ1M5ZDRcXG5ETjdkeFU1YzB1YTNMY3FMeWZEb1crYVdKV1M5WXNwS3JLeVJyTmlhT05wUHVUY1Y0eWZRejZpbTlSRUROVmVoXFxuMVA1aFgxZDUrR3NXMFJ0d2Z5UGxvQXl1cHAwajIrNGNJdTE5Y0RJR1RzOU55VHlHaVljWXFSclVUbkRZQ2p1QVxcbnB3S0NBUUFXeFF4V0J6TnZ4L1pNZFlQK0o3eTd3VDlTY1JYZHR5MlRpbFJ0dWxTTGpGZmx1bnRCcUF1ZTVlWTZcXG41Y0hNRGp3N09lajhmaFFXdDN2Yi9xUHBEeXdoOXRTS0hCR0JxWXRJK3NCRXY3bktqNUcvTnVWWUhYOEVuOHBvXFxuc1pTUnphL3FxeHdSTDZtaHppNDlGOEo5ZGdZWHJLUzl6OUpDaTFZRUlCVzA1Y0xpVFk5ZFZiOGZFbTByMllNOFxcbkJOZjQ1NExlNG1TWnJSTjRoMG5ETDdMZzdMTFp5eW85S1Zjc1lDSG5rQ2FGVTNNS0NlTnp5ZEY4YXpyZ2FkU29cXG5xQzMybkxiSDFZMFN5UmhFM1EzOVlDVWVGek5Zbzl3d3luemVmakZ1cHNyckNxaEFPZTFnQytRMTEyNHRGTVp1XFxuS0VIdzJBQkJFT1crTU4ydkZXcEZ5WnBlVHg5Tlxcbi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0iLCJzZXNzaW9uSW5kZXgiOjN9LHsia2V5IjoibmhzX2RldmVsb3Blcl9hY2NvdW50X2FwaV9rZXkiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiI0aHdpdnBKQVpJcXZwSmxBV09jdFJYQ1NnVU1sd1p1SyIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoiNGh3aXZwSkFaSXF2cEpsQVdPY3RSWENTZ1VNbHdadUsiLCJzZXNzaW9uSW5kZXgiOjR9LHsia2V5IjoiY29uc2VudF9hcHBfYXV0aF9oZWFkZXJfdmFsdWUiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJqU2JabmJ4UE1vemZsQUh1YjFHQmdaS0lSbTNXIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJqU2JabmJ4UE1vemZsQUh1YjFHQmdaS0lSbTNXIiwic2Vzc2lvbkluZGV4Ijo1fSx7ImtleSI6InRwcF85Njc0OTk4NTM1X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiNTUyODY5ODM0XCIsXCJQYXNzcGhyYXNlXCI6XCJ2UkpxdTEzOWQ3ZHZlclpnKzhlVzd2V0ZTQ2FTbndBV0ZSNlk0dFlYalA3L3VGU2d0djdrMklPd0E0NzhPV3A3WkRxNE1CWUM2aGNUSVRFcm5Od2dieFZtN1ZaOGYzUVVuTC4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI1NTI4Njk4MzRcIixcIlBhc3NwaHJhc2VcIjpcInZSSnF1MTM5ZDdkdmVyWmcrOGVXN3ZXRlNDYVNud0FXRlI2WTR0WVhqUDcvdUZTZ3R2N2sySU93QTQ3OE9XcDdaRHE0TUJZQzZoY1RJVEVybk53Z2J4Vm03Vlo4ZjNRVW5MUFdoKzRLN0VQNWkvNEswQWRHWjBJSzBVdzcrQzdYWmM3RkhnOFJTY0lqaCsyTXFGN3Z1WjQ0dW1lUHZnOGVTTTQ4V1I4SzRYRT1cIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJ6OEVsQ0RJM2Uxc2xXTGJac0lSVXdpaHk4V1pGc2NyMmRQbVRmVXVpK2dBcVE3WmgwV1BWSVhvL005RHVFVnpPM1hhRk9wYkIzd2M5eWhBVWhBWmhVZz09XCJ9Iiwic2Vzc2lvbkluZGV4Ijo2fSx7ImtleSI6InRwcF85Njc0OTk4NDU0X2FjY2Vzc190b2tlbiIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6InNlY3JldCIsInNlc3Npb25WYWx1ZSI6IntcIkFjY291bnRJZFwiOlwiODU4ODAzMjAzXCIsXCJQYXNzcGhyYXNlXCI6XCJKVzRIc3JXTWw0SEhNamx4OUJJVW5zUzV1QkpmcUFsWnk0L2VZbUt3a3U5VUZRL0xBQ21PR21tWGJkOG95VUZiMHY3NE14bkVmKzl6UVdPQTQ0QUtPSXQ3bEtFdlJJbzVNYy4uLiIsImNvbXBsZXRlU2Vzc2lvblZhbHVlIjoie1wiQWNjb3VudElkXCI6XCI4NTg4MDMyMDNcIixcIlBhc3NwaHJhc2VcIjpcIkpXNEhzcldNbDRISE1qbHg5QklVbnNTNXVCSmZxQWxaeTQvZVltS3drdTlVRlEvTEFDbU9HbW1YYmQ4b3lVRmIwdjc0TXhuRWYrOXpRV09BNDRBS09JdDdsS0V2UklvNU1jQjVOanZaTkJCaWhMTE82N09xNm9KY0x5bHpDRzFaZUhqTEl4MTJrUnQwblZEc3ZqQ2IyMTZuRm5EYk9mNWkxQWFYbXBTdFVIY1xcdTAwM2RcIixcIlByb3ZpZGVySWRcIjpcImI4OTFmYzNiNTFkNWU3YzFcIixcIkltMUNhY2hlS2V5XCI6XCJrMFlPWVdzVHRteGdrVlpTWXA1YXkraEd6eUYyWUhTcEE2YnpxQTZHODdiOWtxbitHTy9XQ3E0RFRiQ2RISGhkUmZCRVhhZThUU2hHa2lpOEt1Qnd3QVxcdTAwM2RcXHUwMDNkXCJ9Iiwic2Vzc2lvbkluZGV4Ijo3fSx7ImtleSI6ImVtaXNfOTY5MjExMzY5OF9hY2Nlc3NfdG9rZW4iLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJzZWNyZXQiLCJzZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiV3VqUGxITDNGK0p4SUpReDdGUER3aWNvKzZWamVEYXp3Zjd2eW91a1M0b2c2RnllZXFxSUlVSkVVdS8zRHZZRkljQUVBenFEdk5hMXk2UGY3Rlg5Q3c9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCI3OWU4MzkyOS0uLi4iLCJjb21wbGV0ZVNlc3Npb25WYWx1ZSI6IntcIkltMUNhY2hlS2V5XCI6XCJXdWpQbEhMM0YrSnhJSlF4N0ZQRHdpY28rNlZqZURhendmN3Z5b3VrUzRvZzZGeWVlcXFJSVVKRVV1LzNEdllGSWNBRUF6cUR2TmExeTZQZjdGWDlDdz09XCIsXCJBY2Nlc3NJZGVudGl0eUd1aWRcIjpcIjc5ZTgzOTI5LWFiNzctNDI2Ni1iMWI5LWZjN2I4MjNjMTUyNVwifSIsInNlc3Npb25JbmRleCI6OH0seyJrZXkiOiJlbWlzXzk2OTIxMTM2MTJfYWNjZXNzX3Rva2VuIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoic2VjcmV0Iiwic2Vzc2lvblZhbHVlIjoie1wiSW0xQ2FjaGVLZXlcIjpcIkM4QXZheEp0YjZaMlFlemNSelEzWUprbFRlSVVtU2N6Y0F6Mno1a2tDazlPNjQ0dlVqV20veUJzRWF6c0htZmxPT0V1MDBlc3IvbGxDT2g4RzQzbWNBPT1cIixcIkFjY2Vzc0lkZW50aXR5R3VpZFwiOlwiMjE3ZWY2ZjEtLi4uIiwiY29tcGxldGVTZXNzaW9uVmFsdWUiOiJ7XCJJbTFDYWNoZUtleVwiOlwiQzhBdmF4SnRiNloyUWV6Y1J6UTNZSmtsVGVJVW1TY3pjQXoyejVra0NrOU82NDR2VWpXbS95QnNFYXpzSG1mbE9PRXUwMGVzci9sbENPaDhHNDNtY0E9PVwiLFwiQWNjZXNzSWRlbnRpdHlHdWlkXCI6XCIyMTdlZjZmMS0xZDcwLTRhOGUtYjcyOC02NjQzMTZjNzU2NTRcIn0iLCJzZXNzaW9uSW5kZXgiOjl9XQ==) ## Onboarding From 92f5e6776acdd20297f9e52f42942fa85357cd45 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Mon, 8 Dec 2025 11:54:16 +0000 Subject: [PATCH 14/15] NPA-5880: Improved docs for postman and script readme --- ...ervice.integration.postman_collection.json | 2 +- scripts/README.md | 25 ++++++++++++++++--- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/postman/validated_relationship_service.integration.postman_collection.json b/postman/validated_relationship_service.integration.postman_collection.json index 6f86f120..0fd42d9f 100644 --- a/postman/validated_relationship_service.integration.postman_collection.json +++ b/postman/validated_relationship_service.integration.postman_collection.json @@ -2,7 +2,7 @@ "info": { "_postman_id": "c3ee07a1-47e5-43f7-96f9-5e56d403af45", "name": "Validated Relationship Service - Integration", - "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `vrs_api_private_key`\n\n**(This is not the same as the private key in the NHS Developer Account portal.)**\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the /main/vrs-app-credentials-{id} secret in **AWS Secrets Manager** or requested to be sent securely from a member of the VRS team.\n\n#### `nhs_developer_account_api_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value` (Generated automatically)\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp_9674998535_access_token`, `tpp_9674998454_access_token`, `emis_9692113698_access_token,` and `emis_9692113612_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\n##### Pre-requisites\n\nAccess the token generation scripts from the [validated-relationships-service-api repo](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts):\n\n- get_app_access_token_int.py - for app restricted authorization\n \n- get_cis2_access_token_int.py - for CIS2 authorization\n \n- get_nhs_login_access_token_int.py - for Login user authorization\n \n\nSee the [README](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts/README.md) for information about how to run them and what environment variables are needed.\n\n##### Steps\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Add the generated bearer token value (**without** the 'bearer' keyword before it) into the Token field\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", + "description": "## About the collection\n\nThe collection has been organised by API endpoint - you will find a folder for each one.\n\nWithin those endpoints are requests covering success and error response scenarios.\n\nEach request has at least 1 example against it. This shows the expected response for that request. Some requests have multiple examples showing how the response differs when different parameters are provided.\n\n### Authorization types\n\nWhen you send a request to the Validated Relationship Service, your request will first be authorised by the API Management service (APIM).\n\nThe Validated Relationship Service has 3 types of authorization:\n\n- CIS2 - For healthcare practitioners\n \n- App-restricted - for service-to-service authorization\n \n- Login - For patient/proxy access via the NHS App\n \n\nEach VRS API endpoint uses a different combination of these auth types depending on their use case.\n\nYou will need to follow the steps in the 'Getting Started' section below to set the correct authorization tokens for each of these types.\n\nPlease see the folder-level docs for each endpoint for details about what auth types are available to use.\n\n## Getting started\n\n### Environment variables\n\nYou will need to add the following environment variables to the collection.\n\n#### `cis2_token`\n\nAuthorization token value for CIS2 (healthcare practitioner access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_cis2_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `login_token`\n\nAuthorization token value for NHS Login (patient access).\n\n_Only required when using endponts that require this auth method._\n\nThis value can be generated by running the `get_nhs_login_access_token_int.py` script . See more details in the 'How to create a valid Authorization header' section below.\n\n#### `vrs_api_private_key`\n\n**(This is not the same as the private key in the NHS Developer Account portal.)**\n\nAPI private key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the /main/vrs-app-credentials-{id} secret in **AWS Secrets Manager** or requested to be sent securely from a member of the VRS team.\n\n#### `nhs_developer_account_api_key`\n\nAPI app key for the Validated Relationship Service integration application.\n\n_Only required when using endponts that use the app restricted auth method._\n\nThis value can be copied from the NHS - Proxy Core Services - Integration environment resource in the NHS Developer Account portal.\n\n#### `consent_app_auth_header_value` (Generated automatically)\n\nAuthorization token value for app restricted auth.\n\n_Only required when using endponts that use the app restricted auth method._\n\n**You do not need to change this value as it is automatically set in the pre-request script.**\n\n#### `tpp_9674998535_access_token`, `tpp_9674998454_access_token`, `emis_9692113698_access_token,` and `emis_9692113612_access_token`\n\nAuthorization token value for connecting to GPIT supplier systems in NAM tests (Get proxy roles only).\n\n_Only required when running the_ `_Get proxy roles (GET/Consent) Valid request - NAM - Get proxy roles_` _requests._\n\nValues for these environment variables can be found on the [Test data page in Confluence](https://nhsd-confluence.digital.nhs.uk/spaces/NPA/pages/950553445/Test+data+and+accounts+repository+-+NPA#TestdataandaccountsrepositoryNPA-GPITtestaccountsforEXT).\n\n### How to create a valid Authorization header\n\n#### Manually through Python scripts (required for Login and CIS2)\n\n##### Pre-requisites\n\nAccess the token generation scripts from the [validated-relationships-service-api repo](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts):\n\n- get_app_access_token_int.py - for app restricted authorization\n \n- get_cis2_access_token_int.py - for CIS2 authorization\n \n- get_nhs_login_access_token_int.py - for Login user authorization\n \n\nSee the [README](https://github.com/NHSDigital/validated-relationships-service-api/tree/master/scripts/README.md) for information about how to run them and what environment variables are needed.\n\n##### Steps\n\n1. Generate bearer tokens for each of the above methods using the provided scripts\n \n2. Go to the Authorization tab for this Postman request\n \n3. Select 'Bearer token' from the drop-down\n \n4. Copy just the 'access_request' value from the script output into the Token field. You do **not** need to add the word 'bearer' before the value.\n \n\nTokens expire every 5 minutes. Once expired, you will receive an 'Unauthorised' response from the API endpoints. At this point, a new token will need to be generated by repeating the above steps.\n\n#### Automatically through pre-request script (for App-restricted)\n\nA pre-request script has been added to the endpoints where app-restricted auth can be used to obtain app-restricted tokens automatically. For this to work, you will need to add values for the following environment variables:\n\n- `private_key`\n \n- `api_key`\n \n\nIf those values are set and valid, then no further action is required.\n\n## Running a request\n\nOnce you have completed the above 'Getting Started' steps you will be able to send requests by either clicking the 'Send' button on each request, or the 'Try' button on each example.\n\nThe pre-prod environments are not constricted to just the requests provided in this collection. Feel free to change and create requests/examples as you require. However, only the test users provided will work in these environments.\n\n## Test data\n\nAll of the requests in the collection use test data and users that have been set up to demonstrate each specific scenario. No sensitive data is stored in this collection.\n\nSee each scenario for information about what test users are being used.", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "_exporter_id": "18067099", "_collection_link": "https://www.postman.com/lunar-crescent-672573/workspace/validated-relationship-service-pre-prod-20-11-2025/collection/18067099-c3ee07a1-47e5-43f7-96f9-5e56d403af45?action=share&source=collection_link&creator=18067099" diff --git a/scripts/README.md b/scripts/README.md index 1b97f90c..d395d477 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -4,7 +4,8 @@ ### Install packages -The tooling we use to manage our packages in poetry so this needs to be installed on your local machine in order to run the scripts. +The tooling we use to manage our packages in poetry so this needs to be installed on your local machine in order to run +the scripts. Then run the following command in the scripts directory @@ -26,6 +27,9 @@ export APPLICATION_CLIENT_ID={application_client_id} export APPLICATION_CLIENT_SECRET={application_client_secret} ``` +The values for `APPLICATION_CLIENT_ID` and `APPLICATION_CLIENT_SECRET` can be found on the NHS Developer Account +portal 'NHS - Proxy Core Services...' environment resource in the Active API keys section. + #### Select an identifier There are a different levels of authenticator assurance levels eg. AAL3. @@ -67,6 +71,9 @@ export APPLICATION_CLIENT_ID={application_client_id} export APPLICATION_CLIENT_SECRET={application_client_secret} ``` +The values for `APPLICATION_CLIENT_ID` and `APPLICATION_CLIENT_SECRET` can be found on the NHS Developer Account +portal 'NHS - Proxy Core Services...' environment resource in the Active API keys section. + #### Select an identifier There are a different identity proofing levels eg. p9. @@ -98,7 +105,9 @@ e.g. ### Get App Restricted Access Token for Int Environment -Application restricted authentication is when a system is trying to access an API rather than a person. For example the Validated Relationship Service (VRS) will need an app restricted access token in order to call the Personal Demographic Service (PDS) API. +Application restricted authentication is when a system is trying to access an API rather than a person. For example the +Validated Relationship Service (VRS) will need an app restricted access token in order to call the Personal Demographic +Service (PDS) API. https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation#application-restricted-apis #### Set Environment Variables @@ -112,7 +121,14 @@ export APPLICATION_CLIENT_KID={vrs_application_client_secret} export APPLICATION_CLIENT_PRIVATE_KEY={vrs_application_client_private_key} ``` -Note with VRS_CLIENT_PRIVATE_KEY it needs to be wrapped in double quotation marks otherwise there can be formatting errors +Note with VRS_CLIENT_PRIVATE_KEY it needs to be wrapped in double quotation marks otherwise there can be formatting +errors + +The values for `APPLICATION_CLIENT_ID` and `APPLICATION_CLIENT_KID` can be found on the NHS Developer Account portal ' +NHS - Proxy Core Services...' environment resource in the Active API keys section. + +The `APPLICATION_CLIENT_PRIVATE_KEY` is stored in AWS Secrets Manager. Please contact the VRS team if you don't have AWS +access to obtain this. #### Run the script @@ -132,7 +148,8 @@ e.g. ### Trouble Shooting -If you have issues with the script, a good place to start is to ensure the environment variables are accessible to poetry. This can be achieved by installing the poetry dotenv plugin +If you have issues with the script, a good place to start is to ensure the environment variables are accessible to +poetry. This can be achieved by installing the poetry dotenv plugin Run this command From c69c6ee78056999f0417ea2adad05a706723e208 Mon Sep 17 00:00:00 2001 From: adamclarkson Date: Mon, 8 Dec 2025 14:44:05 +0000 Subject: [PATCH 15/15] NPA-5880: Updated poetry lock --- scripts/poetry.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/poetry.lock b/scripts/poetry.lock index 8a3b114b..49489cff 100644 --- a/scripts/poetry.lock +++ b/scripts/poetry.lock @@ -943,20 +943,20 @@ typing-extensions = ">=4.12.0" [[package]] name = "urllib3" -version = "2.5.0" +version = "2.6.0" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.9" files = [ - {file = "urllib3-2.5.0-py3-none-any.whl", hash = "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc"}, - {file = "urllib3-2.5.0.tar.gz", hash = "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760"}, + {file = "urllib3-2.6.0-py3-none-any.whl", hash = "sha256:c90f7a39f716c572c4e3e58509581ebd83f9b59cced005b7db7ad2d22b0db99f"}, + {file = "urllib3-2.6.0.tar.gz", hash = "sha256:cb9bcef5a4b345d5da5d145dc3e30834f58e8018828cbc724d30b4cb7d4d49f1"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +brotli = ["brotli (>=1.2.0)", "brotlicffi (>=1.2.0.0)"] h2 = ["h2 (>=4,<5)"] socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] -zstd = ["zstandard (>=0.18.0)"] +zstd = ["backports-zstd (>=1.0.0)"] [[package]] name = "wheel"