-
Notifications
You must be signed in to change notification settings - Fork 1
API Walkthroughs 3.2 Police to unspecified STC video remand move
-
[FRONTEND] The initial move record is created in a
requested
state with a specific move date by a PECS Police user via the frontend. A new profile is assigned to the move and a document is attached to the profile.It is not expected that suppliers would create the initial record. For the purposes of testing however, frontend requests can be simulated with the following calls:
# find person by police national computer number (PNC) curl --request GET \ --url 'http://server/api/people?filter%5Bpolice_national_computer%5D=14%2F120018R&include=profiles' \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX' # create a new profile synchronised with Nomis alerts curl --request POST \ --url http://server/api/people/747f3914-620a-441a-847f-472c79def26c/profiles \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX' \ --header 'content-type: application/json' \ --header 'idempotency-key: c7b85e5c-62b5-4924-a0ee-b5f2b1d3175a' \ --data '{ "data": { "type": "profiles" } }' # upload a document curl --request POST \ --url http://server/api/documents \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX' \ --header 'content-type: multipart/form-data; boundary=---011000010111000001101001' \ --header 'idempotency-key: 8cf937d9-3751-49f9-90b9-501823aa3d8a' \ --form 'data[attributes][file]=@path/to/the/file/hello_world.txt' # attach the uploaded document to the profile curl --request PATCH \ --url http://server/api/people/747f3914-620a-441a-847f-472c79def26c/profiles/c1f98396-8882-4dfb-81c0-e8e2948f9e45 \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX' \ --header 'content-type: application/json' \ --header 'idempotency-key: 1614c493-5613-4464-94d8-ab95e5053cc4' \ --data '{ "data": { "id": "c1f98396-8882-4dfb-81c0-e8e2948f9e45", "type": "profiles", "relationships": { "documents": { "data": [ { "type": "documents", "id": "89319bbf-5956-4e2d-a1cd-9a6b575adae0" } ] } } } }' # create move request (Guildford Custody Suite to <unknown>) with a specific move date, using the new profile curl --request POST \ --url http://server/api/moves \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX' \ --header 'content-type: application/json' \ --header 'idempotency-key: 764e37e9-0b84-4af6-9ef9-ad1f54d429ac' \ --data '{ "data": { "type": "moves", "attributes": { "date": "2020-07-29", "time_due": "2020-07-29T09:00:00+01:00", "status": "requested", "additional_information": "example Police to unspecified STC video_remand transfer: Guildford Custody Suite to an unspecified STC", "move_type": "video_remand" }, "relationships": { "profile": { "data": { "type": "profiles", "id": "c1f98396-8882-4dfb-81c0-e8e2948f9e45" } }, "from_location": { "data": { "type": "locations", "id": "8fadb516-f10a-45b1-91b7-a256196829f9" } }, "to_location": { "data": null } } } }'
-
Suppliers can retrieve a list of requested moves for specific dates by calling the get moves endpoint with appropriate filters
curl --request GET \ --url 'http://server/api/moves?filter%5Bdate_from%5D=2020-07-29&filter%5Bdate_to%5D=2020-07-29&filter%5Bstatus%5D=requested&include=profile.person%2Cprofile.documents%2Cfrom_location%2Cto_location' \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX'
This will return the following JSON:
{ "data": [ { "id": "304eac22-a5a7-4c57-bdbf-83ba2168923f", "type": "moves", "attributes": { "additional_information": "example Police to unspecified STC video_remand transfer: Guildford Custody Suite to an unspecified STC", "cancellation_reason": null, "cancellation_reason_comment": null, "created_at": "2020-07-24T16:58:38+01:00", "date": "2020-07-29", "date_from": null, "date_to": null, "move_agreed": null, "move_agreed_by": null, "move_type": "video_remand", "reference": "XJP4651U", "rejection_reason": null, "status": "requested", "time_due": "2020-07-29T09:00:00+01:00", "updated_at": "2020-07-24T16:58:38+01:00" }, "relationships": { "profile": { "data": { "id": "c1f98396-8882-4dfb-81c0-e8e2948f9e45", "type": "profiles" } }, "from_location": { "data": { "id": "8fadb516-f10a-45b1-91b7-a256196829f9", "type": "locations" } }, "to_location": { "data": null }, "prison_transfer_reason": { "data": null }, "court_hearings": { "data": [] }, "allocation": { "data": null }, "original_move": { "data": null } } } ], "included": [ { "id": "c1f98396-8882-4dfb-81c0-e8e2948f9e45", "type": "profiles", "attributes": { "assessment_answers": [ { "title": "Any other risks", "comments": "lAzCdJPxAuYiYJlAzCdJPxAuYiYJ", "created_at": "2014-10-17", "expires_at": "2015-11-04", "assessment_question_id": "4e37ac1a-a461-45a8-bca9-f0e994d3105e", "category": "risk", "key": "other_risks", "nomis_alert_type": "P", "nomis_alert_code": "P0", "nomis_alert_type_description": "MAPPP Case", "nomis_alert_description": "MAPPA Nominal", "imported_from_nomis": true }, { "title": "Violent", "comments": null, "created_at": "2015-02-22", "expires_at": null, "assessment_question_id": "af8cfc67-757c-4019-9d5e-618017de1617", "category": "risk", "key": "violent", "nomis_alert_type": "R", "nomis_alert_code": "ROM", "nomis_alert_type_description": "Risk", "nomis_alert_description": "OASys Serious Harm-Medium", "imported_from_nomis": true }, { "title": "Violent", "comments": "HRErJMfhUuLHisGPkEhGRpvHSvjfHHRErJMfhUuLHisGPkEhGRpvHSvjfH", "created_at": "2017-02-03", "expires_at": null, "assessment_question_id": "af8cfc67-757c-4019-9d5e-618017de1617", "category": "risk", "key": "violent", "nomis_alert_type": "P", "nomis_alert_code": "PC2", "nomis_alert_type_description": "MAPPP Case", "nomis_alert_description": "MAPPA Cat 2", "imported_from_nomis": true }, { "title": "Health issue", "comments": null, "created_at": "2014-07-28", "expires_at": null, "assessment_question_id": "8872ad2e-b1b6-44c1-a937-b7540e633355", "category": "health", "key": "health_issue", "nomis_alert_type": "DISAB", "nomis_alert_code": "ND", "nomis_alert_type_description": "Unknown", "nomis_alert_description": "No Disability", "imported_from_nomis": true }, { "title": "Health issue", "comments": null, "created_at": "2014-07-31", "expires_at": null, "assessment_question_id": "8872ad2e-b1b6-44c1-a937-b7540e633355", "category": "health", "key": "health_issue", "nomis_alert_type": "DISAB", "nomis_alert_code": "ND", "nomis_alert_type_description": "Unknown", "nomis_alert_description": "No Disability", "imported_from_nomis": true }, { "title": "Health issue", "comments": null, "created_at": "2014-10-16", "expires_at": null, "assessment_question_id": "8872ad2e-b1b6-44c1-a937-b7540e633355", "category": "health", "key": "health_issue", "nomis_alert_type": "DISAB", "nomis_alert_code": "ND", "nomis_alert_type_description": "Unknown", "nomis_alert_description": "No Disability", "imported_from_nomis": true } ] }, "relationships": { "person": { "data": { "id": "747f3914-620a-441a-847f-472c79def26c", "type": "people" } }, "documents": { "data": [ { "id": "89319bbf-5956-4e2d-a1cd-9a6b575adae0", "type": "documents" } ] }, "person_escort_record": { "data": null } } }, { "id": "747f3914-620a-441a-847f-472c79def26c", "type": "people", "attributes": { "first_names": "DOMSANIGH", "last_name": "CASEDY", "date_of_birth": "1995-11-17", "gender_additional_information": null, "prison_number": "G8133UA", "criminal_records_office": "351774/14D", "police_national_computer": "14/120018R" }, "relationships": { "ethnicity": { "data": { "id": "a4f988ba-5ebc-4b24-9dfe-b7fa0c23c30e", "type": "ethnicities" } }, "gender": { "data": { "id": "ffac6763-26d6-4425-8005-6e5d052aed88", "type": "genders" } }, "profiles": { "data": [ { "id": "28087623-d310-4a1c-bf17-b992b74e30c2", "type": "profiles" }, { "id": "f7769f3e-51e3-4b03-91b7-1eb4a79e98f6", "type": "profiles" }, { "id": "d9a7e87e-b031-4da2-ae13-852aab708aac", "type": "profiles" }, { "id": "da8e9326-a417-434a-b67e-66a4e15078d4", "type": "profiles" }, { "id": "a631cf66-0ee8-4252-9ef0-408c27ba5c15", "type": "profiles" }, { "id": "536068a5-a22e-4c5f-b078-f69c931cd9f1", "type": "profiles" }, { "id": "98be8b71-eaf8-4563-bcd0-05af9a80f262", "type": "profiles" }, { "id": "cee8cd95-656b-4967-a69e-0fa909b70727", "type": "profiles" }, { "id": "28aa50ea-43be-4167-bd6f-6eb8aca74aa1", "type": "profiles" }, { "id": "d93c8000-f640-495a-958f-c3339b1ee5ac", "type": "profiles" }, { "id": "961fd84e-bc6b-45a5-88b6-fb8faa6ff0e7", "type": "profiles" }, { "id": "4617f73c-c762-4794-a562-e7a16d2e4d4d", "type": "profiles" }, { "id": "0e90d805-264f-4450-ab17-195c2c9cb2ee", "type": "profiles" }, { "id": "c1f98396-8882-4dfb-81c0-e8e2948f9e45", "type": "profiles" } ] } } }, { "id": "89319bbf-5956-4e2d-a1cd-9a6b575adae0", "type": "documents", "attributes": { "url": "http://localhost:5001/rails/active_storage/disk/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9JYTJWNVNTSWhPR2xvZFdwdU1ubDNkVE54TnpVMVpERm9iamx3TjNoNGJXbGxkUVk2QmtWVU9oQmthWE53YjNOcGRHbHZia2tpVFdGMGRHRmphRzFsYm5RN0lHWnBiR1Z1WVcxbFBTSm9aV3hzYjE5M2IzSnNaQzUwZUhRaU95Qm1hV3hsYm1GdFpTbzlWVlJHTFRnbkoyaGxiR3h2WDNkdmNteGtMblI0ZEFZN0JsUTZFV052Ym5SbGJuUmZkSGx3WlVraUQzUmxlSFF2Y0d4aGFXNEdPd1pVIiwiZXhwIjoiMjAyMC0wNy0yNFQxNjowMzo1NloiLCJwdXIiOiJibG9iX2tleSJ9fQ==--1d048b93429aa780ff1083c801d5b71ada264598/hello_world.txt?content_type=text%2Fplain&disposition=attachment%3B+filename%3D%22hello_world.txt%22%3B+filename%2A%3DUTF-8%27%27hello_world.txt", "filename": "hello_world.txt", "filesize": 13, "content_type": "text/plain" } }, { "id": "8fadb516-f10a-45b1-91b7-a256196829f9", "type": "locations", "attributes": { "key": "sry016", "title": "Guildford Custody Suite", "location_type": "police", "nomis_agency_id": "SRY016", "can_upload_documents": false, "disabled_at": null }, "relationships": { "suppliers": { "data": [ { "id": "bccf4d77-984d-560c-9ffd-9badbb9157ca", "type": "suppliers" } ] } } } ], "links": { "self": "http://localhost:5001/api/moves?filter%5Bdate_from%5D=2020-07-29&filter%5Bdate_to%5D=2020-07-29&filter%5Bstatus%5D=requested&include=profile.person%2Cprofile.documents%2Cfrom_location%2Cto_location&page%5Bnumber%5D=1&page%5Bsize%5D=20", "first": "http://localhost:5001/api/moves?filter%5Bdate_from%5D=2020-07-29&filter%5Bdate_to%5D=2020-07-29&filter%5Bstatus%5D=requested&include=profile.person%2Cprofile.documents%2Cfrom_location%2Cto_location&page%5Bnumber%5D=1&page%5Bsize%5D=20", "prev": null, "next": null, "last": "http://localhost:5001/api/moves?filter%5Bdate_from%5D=2020-07-29&filter%5Bdate_to%5D=2020-07-29&filter%5Bstatus%5D=requested&include=profile.person%2Cprofile.documents%2Cfrom_location%2Cto_location&page%5Bnumber%5D=1&page%5Bsize%5D=20" }, "meta": { "pagination": { "per_page": 20, "total_pages": 1, "total_objects": 1, "links": { "first": "/api/moves?filter%5Bdate_from%5D=2020-07-29&filter%5Bdate_to%5D=2020-07-29&filter%5Bstatus%5D=requested&include=profile.person%2Cprofile.documents%2Cfrom_location%2Cto_location&page=1", "last": "/api/moves?filter%5Bdate_from%5D=2020-07-29&filter%5Bdate_to%5D=2020-07-29&filter%5Bstatus%5D=requested&include=profile.person%2Cprofile.documents%2Cfrom_location%2Cto_location&page=1" } } } }
-
The document(s) should be downloaded immediately
# download the document - note that although no authoristation is required, the URL is short lived and will time out after 5 minutes curl --request GET --verbose \ --url 'http://server/rails/active_storage/disk/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9JYTJWNVNTSWhPR2xvZFdwdU1ubDNkVE54TnpVMVpERm9iamx3TjNoNGJXbGxkUVk2QmtWVU9oQmthWE53YjNOcGRHbHZia2tpVFdGMGRHRmphRzFsYm5RN0lHWnBiR1Z1WVcxbFBTSm9aV3hzYjE5M2IzSnNaQzUwZUhRaU95Qm1hV3hsYm1GdFpTbzlWVlJHTFRnbkoyaGxiR3h2WDNkdmNteGtMblI0ZEFZN0JsUTZFV052Ym5SbGJuUmZkSGx3WlVraUQzUmxlSFF2Y0d4aGFXNEdPd1pVIiwiZXhwIjoiMjAyMC0wNy0yNFQxNjowMzo1NloiLCJwdXIiOiJibG9iX2tleSJ9fQ==--1d048b93429aa780ff1083c801d5b71ada264598/hello_world.txt?content_type=text%2Fplain&disposition=attachment%3B%2Bfilename%3D%22hello_world.txt%22%3B%2Bfilename*%3DUTF-8'\'''\''hello_world.txt'
-
The supplier should set the move's to_location to the intended destination (based on the circumstances of the move and move_type). Posting to the
redirects
endpoint will update the to_location.curl --request POST \ --url http://server/api/moves/304eac22-a5a7-4c57-bdbf-83ba2168923f/redirects \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX' \ --header 'content-type: application/json' \ --header 'idempotency-key: f7160451-28ad-4e6a-aeea-190723c225ff' \ --data '{ "data": { "type": "redirects", "attributes": { "timestamp": "2020-07-24T16:17:03.421Z", "notes": "updating destination to Oakhill STC" }, "relationships": { "to_location": { "data": { "type": "locations", "id": "dbf13bff-0e22-45af-b813-547673c2f456" } } } } }'
This will return a 204 No Content response.
-
Now that a destination is set, the new move can then be accepted changing its status from "requested" to "booked" by calling the
accept
endpoint:curl --request POST \ --url http://server/api/moves/304eac22-a5a7-4c57-bdbf-83ba2168923f/accept \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX' \ --header 'content-type: application/json' \ --header 'idempotency-key: 83477f96-0869-4e4e-98bb-ae2ab8884708' \ --data '{ "data": { "type": "accepts", "attributes": { "timestamp": "2020-07-24T16:17:40.377Z" } } }'
This will return a 204 No Content response.
-
Journeys should be added to move: please see the separate Journey API walkthrough document.
-
The move can be started, changing its status from "booked" to "in_transit" by calling the
start
endpoint:curl --request POST \ --url http://server/api/moves/304eac22-a5a7-4c57-bdbf-83ba2168923f/start \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX' \ --header 'content-type: application/json' \ --header 'idempotency-key: 97813015-15f8-45b2-9e77-a77f806a8c8f' \ --data '{ "data": { "type": "starts", "attributes": { "timestamp": "2020-07-24T16:18:35.348Z", "notes": "van on the way" } } }'
This will return a 204 No Content response.
-
Finally, the move can be completed, changing its status from "in_transit" to "completed" by posting to the
complete
endpoint:curl --request POST \ --url http://server/api/moves/304eac22-a5a7-4c57-bdbf-83ba2168923f/complete \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX' \ --header 'content-type: application/json' \ --header 'idempotency-key: 3436ed88-621a-477d-92e4-0523f7a44017' \ --data '{ "data": { "type": "completes", "attributes": { "timestamp": "2020-07-24T16:19:15.183Z", "notes": "all is well" } } }'
This will return a 204 No Content response.
-
The move record can be retrieved at any time to verify its attributes:
curl --request GET \ --url 'http://server/api/moves/304eac22-a5a7-4c57-bdbf-83ba2168923f?include=profile.person%2Cprofile.documents%2Cfrom_location%2Cto_location' \ --header 'accept: application/vnd.api+json; version=2' \ --header 'authorization: Bearer XXX'
Which returns:
{ "data": { "id": "304eac22-a5a7-4c57-bdbf-83ba2168923f", "type": "moves", "attributes": { "additional_information": "example Police to unspecified STC video_remand transfer: Guildford Custody Suite to an unspecified STC", "cancellation_reason": null, "cancellation_reason_comment": null, "created_at": "2020-07-24T16:58:38+01:00", "date": "2020-07-29", "date_from": null, "date_to": null, "move_agreed": null, "move_agreed_by": null, "move_type": "video_remand", "reference": "XJP4651U", "rejection_reason": null, "status": "completed", "time_due": "2020-07-29T09:00:00+01:00", "updated_at": "2020-07-24T17:06:16+01:00" }, "relationships": { "profile": { "data": { "id": "c1f98396-8882-4dfb-81c0-e8e2948f9e45", "type": "profiles" } }, "from_location": { "data": { "id": "8fadb516-f10a-45b1-91b7-a256196829f9", "type": "locations" } }, "to_location": { "data": { "id": "dbf13bff-0e22-45af-b813-547673c2f456", "type": "locations" } }, "prison_transfer_reason": { "data": null }, "court_hearings": { "data": [] }, "allocation": { "data": null }, "original_move": { "data": null } } }, "included": [ { "id": "c1f98396-8882-4dfb-81c0-e8e2948f9e45", "type": "profiles", "attributes": { "assessment_answers": [ { "title": "Any other risks", "comments": "lAzCdJPxAuYiYJlAzCdJPxAuYiYJ", "created_at": "2014-10-17", "expires_at": "2015-11-04", "assessment_question_id": "4e37ac1a-a461-45a8-bca9-f0e994d3105e", "category": "risk", "key": "other_risks", "nomis_alert_type": "P", "nomis_alert_code": "P0", "nomis_alert_type_description": "MAPPP Case", "nomis_alert_description": "MAPPA Nominal", "imported_from_nomis": true }, { "title": "Violent", "comments": null, "created_at": "2015-02-22", "expires_at": null, "assessment_question_id": "af8cfc67-757c-4019-9d5e-618017de1617", "category": "risk", "key": "violent", "nomis_alert_type": "R", "nomis_alert_code": "ROM", "nomis_alert_type_description": "Risk", "nomis_alert_description": "OASys Serious Harm-Medium", "imported_from_nomis": true }, { "title": "Violent", "comments": "HRErJMfhUuLHisGPkEhGRpvHSvjfHHRErJMfhUuLHisGPkEhGRpvHSvjfH", "created_at": "2017-02-03", "expires_at": null, "assessment_question_id": "af8cfc67-757c-4019-9d5e-618017de1617", "category": "risk", "key": "violent", "nomis_alert_type": "P", "nomis_alert_code": "PC2", "nomis_alert_type_description": "MAPPP Case", "nomis_alert_description": "MAPPA Cat 2", "imported_from_nomis": true }, { "title": "Health issue", "comments": null, "created_at": "2014-07-28", "expires_at": null, "assessment_question_id": "8872ad2e-b1b6-44c1-a937-b7540e633355", "category": "health", "key": "health_issue", "nomis_alert_type": "DISAB", "nomis_alert_code": "ND", "nomis_alert_type_description": "Unknown", "nomis_alert_description": "No Disability", "imported_from_nomis": true }, { "title": "Health issue", "comments": null, "created_at": "2014-07-31", "expires_at": null, "assessment_question_id": "8872ad2e-b1b6-44c1-a937-b7540e633355", "category": "health", "key": "health_issue", "nomis_alert_type": "DISAB", "nomis_alert_code": "ND", "nomis_alert_type_description": "Unknown", "nomis_alert_description": "No Disability", "imported_from_nomis": true }, { "title": "Health issue", "comments": null, "created_at": "2014-10-16", "expires_at": null, "assessment_question_id": "8872ad2e-b1b6-44c1-a937-b7540e633355", "category": "health", "key": "health_issue", "nomis_alert_type": "DISAB", "nomis_alert_code": "ND", "nomis_alert_type_description": "Unknown", "nomis_alert_description": "No Disability", "imported_from_nomis": true } ] }, "relationships": { "person": { "data": { "id": "747f3914-620a-441a-847f-472c79def26c", "type": "people" } }, "documents": { "data": [ { "id": "89319bbf-5956-4e2d-a1cd-9a6b575adae0", "type": "documents" } ] }, "person_escort_record": { "data": null } } }, { "id": "747f3914-620a-441a-847f-472c79def26c", "type": "people", "attributes": { "first_names": "DOMSANIGH", "last_name": "CASEDY", "date_of_birth": "1995-11-17", "gender_additional_information": null, "prison_number": "G8133UA", "criminal_records_office": "351774/14D", "police_national_computer": "14/120018R" }, "relationships": { "ethnicity": { "data": { "id": "a4f988ba-5ebc-4b24-9dfe-b7fa0c23c30e", "type": "ethnicities" } }, "gender": { "data": { "id": "ffac6763-26d6-4425-8005-6e5d052aed88", "type": "genders" } }, "profiles": { "data": [ { "id": "28087623-d310-4a1c-bf17-b992b74e30c2", "type": "profiles" }, { "id": "f7769f3e-51e3-4b03-91b7-1eb4a79e98f6", "type": "profiles" }, { "id": "d9a7e87e-b031-4da2-ae13-852aab708aac", "type": "profiles" }, { "id": "da8e9326-a417-434a-b67e-66a4e15078d4", "type": "profiles" }, { "id": "a631cf66-0ee8-4252-9ef0-408c27ba5c15", "type": "profiles" }, { "id": "536068a5-a22e-4c5f-b078-f69c931cd9f1", "type": "profiles" }, { "id": "98be8b71-eaf8-4563-bcd0-05af9a80f262", "type": "profiles" }, { "id": "cee8cd95-656b-4967-a69e-0fa909b70727", "type": "profiles" }, { "id": "28aa50ea-43be-4167-bd6f-6eb8aca74aa1", "type": "profiles" }, { "id": "d93c8000-f640-495a-958f-c3339b1ee5ac", "type": "profiles" }, { "id": "961fd84e-bc6b-45a5-88b6-fb8faa6ff0e7", "type": "profiles" }, { "id": "4617f73c-c762-4794-a562-e7a16d2e4d4d", "type": "profiles" }, { "id": "0e90d805-264f-4450-ab17-195c2c9cb2ee", "type": "profiles" }, { "id": "c1f98396-8882-4dfb-81c0-e8e2948f9e45", "type": "profiles" } ] } } }, { "id": "89319bbf-5956-4e2d-a1cd-9a6b575adae0", "type": "documents", "attributes": { "url": "http://localhost:5001/rails/active_storage/disk/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDRG9JYTJWNVNTSWhPR2xvZFdwdU1ubDNkVE54TnpVMVpERm9iamx3TjNoNGJXbGxkUVk2QmtWVU9oQmthWE53YjNOcGRHbHZia2tpVFdGMGRHRmphRzFsYm5RN0lHWnBiR1Z1WVcxbFBTSm9aV3hzYjE5M2IzSnNaQzUwZUhRaU95Qm1hV3hsYm1GdFpTbzlWVlJHTFRnbkoyaGxiR3h2WDNkdmNteGtMblI0ZEFZN0JsUTZFV052Ym5SbGJuUmZkSGx3WlVraUQzUmxlSFF2Y0d4aGFXNEdPd1pVIiwiZXhwIjoiMjAyMC0wNy0yNFQxNjoyNjozNloiLCJwdXIiOiJibG9iX2tleSJ9fQ==--dd85b42250cc07e974302b3373a5ad5770ce1690/hello_world.txt?content_type=text%2Fplain&disposition=attachment%3B+filename%3D%22hello_world.txt%22%3B+filename%2A%3DUTF-8%27%27hello_world.txt", "filename": "hello_world.txt", "filesize": 13, "content_type": "text/plain" } }, { "id": "8fadb516-f10a-45b1-91b7-a256196829f9", "type": "locations", "attributes": { "key": "sry016", "title": "Guildford Custody Suite", "location_type": "police", "nomis_agency_id": "SRY016", "can_upload_documents": false, "disabled_at": null }, "relationships": { "suppliers": { "data": [ { "id": "bccf4d77-984d-560c-9ffd-9badbb9157ca", "type": "suppliers" } ] } } }, { "id": "dbf13bff-0e22-45af-b813-547673c2f456", "type": "locations", "attributes": { "key": "stc3", "title": "Oakhill Secure Training Centre", "location_type": "secure_training_centre", "nomis_agency_id": "STC3", "can_upload_documents": true, "disabled_at": null }, "relationships": { "suppliers": { "data": [ { "id": "3ef88a47-6f1f-5b9b-b2fc-c0fe42cb0c92", "type": "suppliers" } ] } } } ] }
- API Guide
- Version 2
- Asked Questions
- Webhook & Email notifications
- Walkthroughs
- Deployment
- Useful Queries
- Data quality improvements
-
Journeys and Payment Related Calls
- Single journey move
- Redirection before move commences
- Redirection after move commences
- Lockouts and Lodgings
- Assessments
- Event Documentation
- GPS Track a move