diff --git a/Dockerfile.adjudications-api b/Dockerfile.adjudications-api
deleted file mode 100644
index 47783f4cf..000000000
--- a/Dockerfile.adjudications-api
+++ /dev/null
@@ -1,15 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash curl --no-cache
-
-COPY src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/adjudications_api.json /adjudications_api.json
-
-RUN sed -i "s+\*/\*+application/json+g" adjudications_api.json
-
-RUN npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-CMD prism mock -p 4010 -h 0.0.0.0 /adjudications_api.json
diff --git a/Dockerfile.prism b/Dockerfile.prism
new file mode 100644
index 000000000..70d032f26
--- /dev/null
+++ b/Dockerfile.prism
@@ -0,0 +1,10 @@
+FROM stoplight/prism:5
+
+COPY src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks /prismMocks
+ADD https://ministryofjustice.github.io/hmpps-probation-integration-services/tech-docs/projects/external-api-and-delius/api-docs.json /prismMocks/ndelius.json
+ADD https://ministryofjustice.github.io/hmpps-probation-integration-services/tech-docs/projects/effective-proposal-framework-and-delius/api-docs.json /prismMocks/probation-integration-epf.json
+ADD https://dev.moic.service.justice.gov.uk/v3/api-docs.json /prismMocks/manage-pom-case-api.json
+
+RUN sed -i 's/\*\/\*/application\/json/g' /prismMocks/prisoner-offender-search.json
+
+ENTRYPOINT sh -c 'port=4010; for file in $(ls /prismMocks/*.json | sort); do node dist/index.js mock -p $port -h 0.0.0.0 $file & port=$((port + 1)); done; wait'
diff --git a/Dockerfile.setup-assess-risks-and-needs-api b/Dockerfile.setup-assess-risks-and-needs-api
deleted file mode 100644
index 87fb94ead..000000000
--- a/Dockerfile.setup-assess-risks-and-needs-api
+++ /dev/null
@@ -1,13 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash --no-cache
-
-COPY src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/assess-risks-and-needs-api-docs.json /assess-risks-and-needs-api-docs.json
-
-RUN npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-CMD prism mock -p 4010 -h 0.0.0.0 /assess-risks-and-needs-api-docs.json
diff --git a/Dockerfile.setup-case-notes-api b/Dockerfile.setup-case-notes-api
deleted file mode 100644
index c67d9f947..000000000
--- a/Dockerfile.setup-case-notes-api
+++ /dev/null
@@ -1,14 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash --no-cache
-
-COPY src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/case-notes-api-docs.json /case-notes-api-docs.json
-
-RUN npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-
-CMD prism mock -p 4010 -h 0.0.0.0 /case-notes-api-docs.json
diff --git a/Dockerfile.setup-create-and-vary-a-licence-api b/Dockerfile.setup-create-and-vary-a-licence-api
deleted file mode 100644
index d4230b08b..000000000
--- a/Dockerfile.setup-create-and-vary-a-licence-api
+++ /dev/null
@@ -1,13 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash --no-cache
-
-COPY src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/create-and-vary-a-licence-api-docs.json /create-and-vary-a-licence-api-docs.json
-
-RUN npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-CMD prism mock -p 4010 -h 0.0.0.0 /create-and-vary-a-licence-api-docs.json
diff --git a/Dockerfile.setup-manage-pom-case-api b/Dockerfile.setup-manage-pom-case-api
deleted file mode 100644
index e3b0c19fa..000000000
--- a/Dockerfile.setup-manage-pom-case-api
+++ /dev/null
@@ -1,12 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash curl --no-cache
-
-RUN curl https://dev.moic.service.justice.gov.uk/v3/api-docs.json > manage-pom-case-api.json && \
-    npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-CMD prism mock -p 4010 -h 0.0.0.0 /manage-pom-case-api.json
diff --git a/Dockerfile.setup-ndelius-api b/Dockerfile.setup-ndelius-api
deleted file mode 100644
index 94a2d7031..000000000
--- a/Dockerfile.setup-ndelius-api
+++ /dev/null
@@ -1,12 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash curl --no-cache
-
-RUN curl https://ministryofjustice.github.io/hmpps-probation-integration-services/tech-docs/projects/external-api-and-delius/api-docs.json > ndelius-api.json && \
-    npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-CMD prism mock -p 4010 -h 0.0.0.0 /ndelius-api.json
diff --git a/Dockerfile.setup-prison-api b/Dockerfile.setup-prison-api
deleted file mode 100644
index 5d28d45e4..000000000
--- a/Dockerfile.setup-prison-api
+++ /dev/null
@@ -1,13 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash curl --no-cache
-
-COPY src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/prison-api.json /prison-api.json
-RUN sed -i 's/\*\/\*/application\/json/g' prison-api.json
-RUN npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-CMD prism mock -p 4010 -h 0.0.0.0 /prison-api.json
diff --git a/Dockerfile.setup-prisoner-search b/Dockerfile.setup-prisoner-search
deleted file mode 100644
index f7af05893..000000000
--- a/Dockerfile.setup-prisoner-search
+++ /dev/null
@@ -1,13 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash curl --no-cache
-
-COPY src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/prisoner-offender-search.json /prisoner-offender-search.json
-RUN sed -i 's/\*\/\*/application\/json/g' prisoner-offender-search.json
-RUN npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-CMD prism mock -p 4010 -h 0.0.0.0 /prisoner-offender-search.json
diff --git a/Dockerfile.setup-probation-integration-epf-api b/Dockerfile.setup-probation-integration-epf-api
deleted file mode 100644
index c2434bfe6..000000000
--- a/Dockerfile.setup-probation-integration-epf-api
+++ /dev/null
@@ -1,12 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash curl --no-cache
-
-RUN curl https://ministryofjustice.github.io/hmpps-probation-integration-services/tech-docs/projects/effective-proposal-framework-and-delius/api-docs.json > probation-integration-epf-api.json && \
-    npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-CMD prism mock -p 4010 -h 0.0.0.0 /probation-integration-epf-api.json
diff --git a/Dockerfile.setup-probation-offender-search b/Dockerfile.setup-probation-offender-search
deleted file mode 100644
index 58d57c251..000000000
--- a/Dockerfile.setup-probation-offender-search
+++ /dev/null
@@ -1,12 +0,0 @@
-FROM node:current-alpine3.17
-
-RUN apk update && apk add bash curl --no-cache
-
-COPY src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/probation-offender-search.json /probation-offender-search.json
-RUN npm install -g @stoplight/prism-cli
-
-RUN adduser -D user
-
-USER user
-
-CMD prism mock -p 4010 -h 0.0.0.0 /probation-offender-search.json
diff --git a/README.md b/README.md
index 3b875308d..33286f4ac 100644
--- a/README.md
+++ b/README.md
@@ -123,12 +123,18 @@ make serve
 Each service is then accessible at:
 
 - [http://localhost:8080](http://localhost:8080) for this application
-- [http://localhost:4030](http://localhost:4030) for the Prison API
-- [http://localhost:4040](http://localhost:4040) for the ndelius API
-- [http://localhost:4020](http://localhost:4020) for the Probation Offender Search
-- [http://localhost:4010](http://localhost:4010) for the Prisoner Search
+- [http://localhost:4010](http://localhost:4010) to [http://localhost:40XX]() for mocked HMPPS APIs
 - [http://localhost:9090](http://localhost:9090) for the HMPPS Auth service
 
+To call the integration-api, you need to pass a distinguished name in the `subject-distinguished-name` header. The `CN` attribute should match the client you wish to access the service as.
+The list of clients and their authorised endpoints can be found in [application-local-docker.yml](src/main/resources/application-local-docker.yml).
+
+For example,
+
+```bash
+curl -H "subject-distinguished-name: O=local,CN=all-access" http://localhost:8080/health
+```
+
 As part of getting the HMPPS Auth service running
 locally, [the in-memory database is seeded with data including a number of clients](https://github.com/ministryofjustice/hmpps-auth/blob/main/src/main/resources/db/dev/data/auth/V900_0__clients.sql). A client can have different permissions i.e. read, write, reporting, although strangely the column name is called `​​autoapprove`.
 
diff --git a/docker-compose.yml b/docker-compose.yml
index a11d697f8..2ab57781e 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,24 +1,15 @@
-version: "3.9"
 services:
   hmpps-integration-api:
     build:
       context: .
     container_name: hmpps-integration-api
-    ports:
-      - "8080:8080"
     healthcheck:
-      test: [ "CMD", "echo", "1" ]
+      test: [ "CMD", "curl", "-f", "http://localhost:8080/health" ]
     depends_on:
-      prison-api:
-        condition: service_healthy
-      prisoner-search:
-        condition: service_healthy
-      probation-offender-search:
-        condition: service_healthy
-      probation-integration-epf-api:
-        condition: service_healthy
-      manage-pom-case-api:
+      hmpps-auth:
         condition: service_healthy
+    ports:
+      - "8080:8080"
     environment:
       - SERVER_PORT=8080
       - SPRING_PROFILES_ACTIVE=local-docker
@@ -36,105 +27,22 @@ services:
       - SPRING_PROFILES_ACTIVE=dev
       - LOGGING_LEVEL_ORG_SPRINGFRAMEWORK_WEB=TRACE
 
-  ndelius-api:
-    build:
-      context: .
-      dockerfile: Dockerfile.setup-ndelius-api
-    container_name: ndelius-api
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://127.0.0.1:4010/case/abc/supervisions -O /dev/null'
-    ports:
-      - '4040:4010'
-
-  prison-api:
-    build:
-      context: .
-      dockerfile: Dockerfile.setup-prison-api
-    container_name: prison-api
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://127.0.0.1:4010/api/offenders/A1234AL -O /dev/null'
-    ports:
-      - '4030:4010'
-
-  prisoner-search:
-    build:
-      context: .
-      dockerfile: Dockerfile.setup-prisoner-search
-    container_name: prisoner-search
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://0.0.0.0:4010/prisoner/nemo -O /dev/null'
-    ports:
-      - "4010:4010"
-
-  probation-offender-search:
-    build:
-      context: .
-      dockerfile: Dockerfile.setup-probation-offender-search
-    container_name: probation-offender-search
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://0.0.0.0:4010/search?crn=sit -O /dev/null'
-    ports:
-      - '4020:4010'
-
-  assess-risks-and-needs-api:
-    build:
-      context: .
-      dockerfile: Dockerfile.setup-assess-risks-and-needs-api
-    container_name: assess-risks-and-needs-api
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://0.0.0.0:4010/risks/crn/abc/predictors/all -O /dev/null'
-    ports:
-      - '4050:4010'
-
-  probation-integration-epf-api:
-    build:
-      context: .
-      dockerfile: Dockerfile.setup-probation-integration-epf-api
-    container_name: probation-integration-epf-api
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://0.0.0.0:4010/case-details/crn/1234 -O /dev/null'
-    ports:
-      - '4060:4010'
-
-  adjudications-api:
+  prism:
     build:
       context: .
-      dockerfile: Dockerfile.adjudications-api
-    container_name: adjudications-api
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://0.0.0.0:4010/reported-adjudications/hearings?hearingDate=1916-07-16 -O /dev/null'
-    ports:
-      - '4045:4010'
-
-  create-and-vary-licence-api:
-    build:
-      context: .
-      dockerfile: Dockerfile.setup-create-and-vary-a-licence-api
-    container_name: create-and-vary-licence-api
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://0.0.0.0:4010/public/licences/id/123 -O /dev/null'
-    ports:
-      - '4070:4010'
-
-  case-notes-api:
-    build:
-      context: .
-      dockerfile: Dockerfile.setup-case-notes-api
-    container_name: case-notes-api
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://0.0.0.0:4010/case-notes/1234 -O /dev/null'
-    ports:
-      - '4080:4010'
-
-  manage-pom-case-api:
-    build:
-      context: .
-      dockerfile: Dockerfile.setup-manage-pom-case-api
-    container_name: manage-pom-case-api
-    healthcheck:
-      test: 'wget --header="Authorization: Bearer abc" http://127.0.0.1:4010/api/allocation/X1234YZ/primary_pom -O /dev/null'
+      dockerfile: Dockerfile.prism
+    container_name: prism
     ports:
-      - '4090:4010'
+      - '4010:4010'
+      - '4011:4011'
+      - '4012:4012'
+      - '4013:4013'
+      - '4014:4014'
+      - '4015:4015'
+      - '4016:4016'
+      - '4017:4017'
+      - '4018:4018'
+      - '4019:4019'
 
   local-stack-aws:
     image: localstack/localstack:3.0
diff --git a/src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/adjudications_api.json b/src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/adjudications.json
similarity index 100%
rename from src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/adjudications_api.json
rename to src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/adjudications.json
diff --git a/src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/assess-risks-and-needs-api-docs.json b/src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/assess-risks-and-needs.json
similarity index 100%
rename from src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/assess-risks-and-needs-api-docs.json
rename to src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/assess-risks-and-needs.json
diff --git a/src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/case-notes-api-docs.json b/src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/case-notes.json
similarity index 100%
rename from src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/case-notes-api-docs.json
rename to src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/case-notes.json
diff --git a/src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/create-and-vary-a-licence-api-docs.json b/src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/create-and-vary-licence.json
similarity index 100%
rename from src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/create-and-vary-a-licence-api-docs.json
rename to src/main/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/prismMocks/create-and-vary-licence.json
diff --git a/src/main/resources/application-local-docker.yml b/src/main/resources/application-local-docker.yml
index d3d245b23..f0e8ec9ea 100644
--- a/src/main/resources/application-local-docker.yml
+++ b/src/main/resources/application-local-docker.yml
@@ -1,26 +1,16 @@
 services:
-  probation-offender-search:
-    base-url: http://probation-offender-search:4010
-  prisoner-offender-search:
-    base-url: http://prisoner-search:4010
-  prison-api:
-    base-url: http://prison-api:4010
-  ndelius:
-    base-url: http://ndelius-api:4010
-  assess-risks-and-needs:
-    base-url: http://assess-risks-and-needs-api:4010
-  probation-integration-epf:
-    base-url: http://probation-integration-epf-api:4010
-  adjudications:
-    base-url: http://adjudications-api:4010
-  create-and-vary-licence:
-    base-url: http://create-and-vary-licence-api:4010
-  case-notes:
-    base-url: http://case-notes-api:4010
-  manage-pom-case-api:
-    base-url: http://manage-pom-case-api:4010
-  hmpps-auth:
-    base-url: http://hmpps-auth:8080
+  hmpps-auth.base-url: http://hmpps-auth:8080
+
+  adjudications.base-url: http://prism:4010
+  assess-risks-and-needs.base-url: http://prism:4011
+  case-notes.base-url: http://prism:4012
+  create-and-vary-licence.base-url: http://prism:4013
+  manage-pom-case-api.base-url: http://prism:4014
+  ndelius.base-url: http://prism:4015
+  prison-api.base-url: http://prism:4016
+  prisoner-offender-search.base-url: http://prism:4017
+  probation-integration-epf.base-url: http://prism:4018
+  probation-offender-search.base-url: http://prism:4019
 
 authorisation:
   consumers:
@@ -60,6 +50,8 @@ authorisation:
       - "/info"
     config-test:
       - "/v1/config/authorisation"
+    all-access:
+      - "/.*"
 
 hmpps.sqs:
   provider: localstack
diff --git a/src/main/resources/application-local.yml b/src/main/resources/application-local.yml
index 9ae43b068..4d5c2bcb8 100644
--- a/src/main/resources/application-local.yml
+++ b/src/main/resources/application-local.yml
@@ -1,26 +1,16 @@
 services:
-  probation-offender-search:
-    base-url: http://localhost:4020
-  prisoner-offender-search:
-    base-url: http://localhost:4010
-  prison-api:
-    base-url: http://localhost:4030
-  ndelius:
-    base-url: http://localhost:4040
-  assess-risks-and-needs:
-    base-url: http://localhost:4050
-  probation-integration-epf:
-    base-url: http://localhost:4060
-  hmpps-auth:
-    base-url: http://localhost:9090
-  adjudications:
-    base-url: http://localhost:4045
-  create-and-vary-licence:
-    base-url: http://localhost:4070
-  case-notes:
-    base-url: http://localhost:4080
-  manage-pom-case-api:
-    base-url: http://localhost:4090
+  hmpps-auth.base-url: http://localhost:9090
+
+  adjudications.base-url: http://localhost:4010
+  assess-risks-and-needs.base-url: http://localhost:4011
+  case-notes.base-url: http://localhost:4012
+  create-and-vary-licence.base-url: http://localhost:4013
+  manage-pom-case-api.base-url: http://localhost:4014
+  ndelius.base-url: http://localhost:4015
+  prison-api.base-url: http://localhost:4016
+  prisoner-offender-search.base-url: http://localhost:4017
+  probation-integration-epf.base-url: http://localhost:4018
+  probation-offender-search.base-url: http://localhost:4019
 
 hmpps.sqs:
   provider: localstack
@@ -67,3 +57,5 @@ authorisation:
       - "/info"
     config-test:
       - "/v1/config/authorisation"
+    all-access:
+      - "/.*"
diff --git a/src/test/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/smoke/AuthoriseConfigTest.kt b/src/test/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/smoke/AuthoriseConfigTest.kt
index 72307837e..675e84dc1 100644
--- a/src/test/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/smoke/AuthoriseConfigTest.kt
+++ b/src/test/kotlin/uk/gov/justice/digital/hmpps/hmppsintegrationapi/smoke/AuthoriseConfigTest.kt
@@ -56,6 +56,9 @@ class AuthoriseConfigTest : DescribeSpec(
         ],
         "config-test": [
           "/v1/config/authorisation"
+        ],
+        "all-access": [
+          "/.*"
         ]
       }
       """.removeWhitespaceAndNewlines(),