diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/AudienceRegistry.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/AudienceRegistry.java
new file mode 100644
index 0000000000000000000000000000000000000000..05a70e687dd300b691d5da96fc296e03f276d982
--- /dev/null
+++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/AudienceRegistry.java
@@ -0,0 +1,9 @@
+package net.ihe.gazelle.app.accesstokenproviderapi.adapter.webservice;
+
+import net.ihe.gazelle.app.accesstokenproviderapi.business.Credential;
+
+public interface AudienceRegistry {
+
+    Credential getAudienceCredentials(String audienceId);
+
+}
diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/DummyAuthzServer.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/DummyAuthzServer.java
new file mode 100644
index 0000000000000000000000000000000000000000..e457811515b8b87409b8c9a587583839c432f846
--- /dev/null
+++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/DummyAuthzServer.java
@@ -0,0 +1,7 @@
+package net.ihe.gazelle.app.accesstokenproviderapi.adapter.webservice;
+
+public interface DummyAuthzServer {
+
+    byte[] getAccessToken(String userId, String audienceId, String purposeOfUser, String resourceId);
+
+}
diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TestUserRegistry.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TestUserRegistry.java
new file mode 100644
index 0000000000000000000000000000000000000000..94e0de2072e0a9bff872a176c367625fb0610099
--- /dev/null
+++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TestUserRegistry.java
@@ -0,0 +1,9 @@
+package net.ihe.gazelle.app.accesstokenproviderapi.adapter.webservice;
+
+import net.ihe.gazelle.app.accesstokenproviderapi.business.testuser.TestUser;
+
+public interface TestUserRegistry {
+
+    TestUser getTestUser(String userId);
+
+}
diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TokenGenerator.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TokenGenerator.java
new file mode 100644
index 0000000000000000000000000000000000000000..d597ea6e5100f6bee78344373a2796b26788b005
--- /dev/null
+++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TokenGenerator.java
@@ -0,0 +1,10 @@
+package net.ihe.gazelle.app.accesstokenproviderapi.adapter.webservice;
+
+import net.ihe.gazelle.app.accesstokenproviderapi.business.AccessTokenRequest;
+import net.ihe.gazelle.sb.iua.business.EncodedIUAToken;
+
+public interface TokenGenerator {
+
+    EncodedIUAToken generateAccessToken(AccessTokenRequest accessTokenRequest);
+
+}