diff --git a/authorizer/src/asapo_authorizer/server/authorize_test.go b/authorizer/src/asapo_authorizer/server/authorize_test.go
index 350538d283f8ada7a023ef54211ff92570af203f..0192b13034ef2fe64eced443cca83c2ae2747322 100644
--- a/authorizer/src/asapo_authorizer/server/authorize_test.go
+++ b/authorizer/src/asapo_authorizer/server/authorize_test.go
@@ -49,6 +49,7 @@ func doAuthorizeRequest(path string,buf string) *httptest.ResponseRecorder {
 }
 
 
+
 var credTests = [] struct {
 	request string
 	cred SourceCredentials
@@ -114,8 +115,13 @@ var authTests = [] struct {
 func TestAuthorizeWithToken(t *testing.T) {
 	allowBeamlines([]beamtimeInfo{})
 	settings.RootBeamtimesFolder ="."
+	settings.CurrentBeamlinesFolder="."
 	os.MkdirAll(filepath.Clean("tf/gpfs/bl1/2019/data/test"), os.ModePerm)
+	os.MkdirAll(filepath.Clean("p07/current"), os.ModePerm)
+	ioutil.WriteFile("p07/current/beamtime-metadata-11111111.json", []byte(beamtime_meta), 0644)
+
 	defer 	os.RemoveAll("tf")
+	defer 	os.RemoveAll("p07")
 
 	for _, test := range authTests {
 		request :=  makeRequest(authorizationRequest{test.beamtime_id+"%"+test.beamline+"%"+test.stream+"%"+test.token,"host"})
@@ -138,6 +144,82 @@ func TestAuthorizeWithToken(t *testing.T) {
 }
 
 
+var beamtime_meta =`
+{
+"applicant": {
+"email": "test",
+"institute": "test",
+"lastname": "test",
+"userId": "1234",
+"username": "test"
+},
+"beamline": "p07",
+"beamline_alias": "P07",
+"beamtimeId": "11111111",
+"contact": "None",
+"core-path": "/asap3/petra3/gpfs/p07/2020/data/11111111",
+"event-end": "2020-03-03 09:00:00",
+"event-start": "2020-03-02 09:00:00",
+"facility": "PETRA III",
+"generated": "2020-02-22 22:37:16",
+"pi": {
+"email": "test",
+"institute": "test",
+"lastname": "test",
+"userId": "14",
+"username": "test"
+},
+"proposalId": "12345678",
+"proposalType": "H",
+"title": "In-House Research (P07)",
+"unixId": "None",
+"users": {
+"door-db": [
+"test"
+],
+"special": [],
+"unknown": []
+}
+}
+`
+
+var authBeamlineTests = [] struct {
+	beamtime_id string
+	beamline string
+	token string
+	status int
+	message string
+}{
+	{"11111111","p07", prepareToken("1111111"),http.StatusOK,"beamtime found"},
+	{"11111111","p08", prepareToken("1111111"),http.StatusUnauthorized,"beamtime not found"},
+}
+/*
+func TestAuthorizeBeamline(t *testing.T) {
+	allowBeamlines([]beamtimeInfo{})
+	settings.CurrentBeamlinesFolder="."
+	os.MkdirAll(filepath.Clean("p07/current"), os.ModePerm)
+	ioutil.WriteFile("p07/current/beamtime-metadata-11111111.json", []byte(beamtime_meta), 0644)
+	defer 	os.RemoveAll("p07")
+
+	for _, test := range authTests {
+		request :=  makeRequest(authorizationRequest{"auto%"+test.beamline+"%%"+test.token,"host"})
+		w := doAuthorizeRequest("/authorize",request)
+
+		body, _ := ioutil.ReadAll(w.Body)
+		if test.status==http.StatusOK {
+			assert.Contains(t, string(body), test.beamtime_id, "")
+			assert.Contains(t, string(body), test.beamline, "")
+//			assert.Contains(t, string(body), "2019", "")
+			assert.Contains(t, string(body), "default", "")
+		}
+
+		assert.Equal(t, test.status, w.Code, test.message)
+	}
+
+
+}
+
+*/
 
 func TestNotAuthorized(t *testing.T) {
 	request :=  makeRequest(authorizationRequest{"any_id%%%","host"})
diff --git a/authorizer/src/asapo_authorizer/server/server.go b/authorizer/src/asapo_authorizer/server/server.go
index e0785c8f304e93bbc182f44af710432896c0301c..69ddb2bd98655da3906bfe5428bd6944fc1ef552 100644
--- a/authorizer/src/asapo_authorizer/server/server.go
+++ b/authorizer/src/asapo_authorizer/server/server.go
@@ -15,6 +15,7 @@ type serverSettings struct {
 	LogLevel                string
 	IpBeamlineMappingFolder string
 	RootBeamtimesFolder     string
+	CurrentBeamlinesFolder string
 	AlwaysAllowedBeamtimes  []beamtimeInfo
 	SecretFile              string
 }
diff --git a/common/cpp/include/common/data_structs.h b/common/cpp/include/common/data_structs.h
index 59b2f3bae5d45c219be2f542d04882fc181cd81a..459726c01f2d4f49a822d96429e6cd4aae99e7bc 100644
--- a/common/cpp/include/common/data_structs.h
+++ b/common/cpp/include/common/data_structs.h
@@ -49,7 +49,14 @@ using SubDirList = std::vector<std::string>;
 
 
 struct SourceCredentials {
-    static const std::string kDefaultStream;
+    SourceCredentials(std::string beamtime,std::string beamline,std::string stream,std::string token):
+    beamtime_id{std::move(beamtime)},
+    beamline{std::move(beamline)},
+    stream{std::move(stream)},
+    user_token{std::move(token)}
+    {};
+    SourceCredentials(){};
+  static const std::string kDefaultStream;
     static const std::string kDefaultBeamline;
     static const std::string kDefaultBeamtimeId;
     std::string beamtime_id;
diff --git a/consumer/api/cpp/unittests/test_consumer_api.cpp b/consumer/api/cpp/unittests/test_consumer_api.cpp
index 9b3037f7baf7669c9f635b1d19b9af8dfedb2a5a..24b7c098c8a6f0e3f387750d055d6e398fc0168f 100644
--- a/consumer/api/cpp/unittests/test_consumer_api.cpp
+++ b/consumer/api/cpp/unittests/test_consumer_api.cpp
@@ -27,7 +27,7 @@ class DataBrokerFactoryTests : public Test {
 
 TEST_F(DataBrokerFactoryTests, CreateServerDataSource) {
 
-    auto data_broker = DataBrokerFactory::CreateServerBroker("server", "path", asapo::SourceCredentials{"beamtime_id", "", "token"}, &error);
+    auto data_broker = DataBrokerFactory::CreateServerBroker("server", "path", asapo::SourceCredentials{"beamtime_id","", "", "token"}, &error);
 
     ASSERT_THAT(error, Eq(nullptr));
     ASSERT_THAT(dynamic_cast<ServerDataBroker*>(data_broker.get()), Ne(nullptr));
diff --git a/consumer/api/cpp/unittests/test_server_broker.cpp b/consumer/api/cpp/unittests/test_server_broker.cpp
index c5c23986860c69b1b449aba34b8fc588f21400f4..43b6559970b858a6f7a22e37a02f727ad7f01a3f 100644
--- a/consumer/api/cpp/unittests/test_server_broker.cpp
+++ b/consumer/api/cpp/unittests/test_server_broker.cpp
@@ -44,7 +44,7 @@ namespace {
 
 TEST(FolderDataBroker, Constructor) {
     auto data_broker =
-    std::unique_ptr<ServerDataBroker> {new ServerDataBroker("test", "path", asapo::SourceCredentials{"beamtime_id", "", "token"})};
+    std::unique_ptr<ServerDataBroker> {new ServerDataBroker("test", "path", asapo::SourceCredentials{"beamtime_id", "", "", "token"})};
     ASSERT_THAT(dynamic_cast<asapo::SystemIO*>(data_broker->io__.get()), Ne(nullptr));
     ASSERT_THAT(dynamic_cast<asapo::CurlHttpClient*>(data_broker->httpclient__.get()), Ne(nullptr));
     ASSERT_THAT(dynamic_cast<asapo::TcpClient*>(data_broker->net_client__.get()), Ne(nullptr));
@@ -74,7 +74,7 @@ class ServerDataBrokerTests : public Test {
     std::string expected_next_substream = "nextsubstream";
     void SetUp() override {
         data_broker = std::unique_ptr<ServerDataBroker> {
-            new ServerDataBroker(expected_server_uri, expected_path, asapo::SourceCredentials{"beamtime_id", expected_stream, expected_token})
+            new ServerDataBroker(expected_server_uri, expected_path, asapo::SourceCredentials{"beamtime_id","", expected_stream, expected_token})
         };
         data_broker->io__ = std::unique_ptr<IO> {&mock_io};
         data_broker->httpclient__ = std::unique_ptr<asapo::HttpClient> {&mock_http_client};
@@ -137,7 +137,7 @@ TEST_F(ServerDataBrokerTests, DefaultStreamIsDetector) {
     data_broker->httpclient__.release();
     data_broker->net_client__.release();
     data_broker = std::unique_ptr<ServerDataBroker> {
-        new ServerDataBroker(expected_server_uri, expected_path, asapo::SourceCredentials{"beamtime_id", "", expected_token})
+        new ServerDataBroker(expected_server_uri, expected_path, asapo::SourceCredentials{"beamtime_id","", "", expected_token})
     };
     data_broker->io__ = std::unique_ptr<IO> {&mock_io};
     data_broker->httpclient__ = std::unique_ptr<asapo::HttpClient> {&mock_http_client};
diff --git a/examples/consumer/getnext_broker/getnext_broker.cpp b/examples/consumer/getnext_broker/getnext_broker.cpp
index 65719c3d8df2afcf1cbacdc06a7c80122e75cc17..a7c8df8f5463afd2a78bf709a00e8a4e8e7d96bc 100644
--- a/examples/consumer/getnext_broker/getnext_broker.cpp
+++ b/examples/consumer/getnext_broker/getnext_broker.cpp
@@ -55,7 +55,7 @@ std::vector<std::thread> StartThreads(const Args& params,
         asapo::FileInfo fi;
         Error err;
         auto broker = asapo::DataBrokerFactory::CreateServerBroker(params.server, params.file_path,
-                      asapo::SourceCredentials{params.beamtime_id, params.stream, params.token}, &err);
+                      asapo::SourceCredentials{params.beamtime_id, "",params.stream, params.token}, &err);
 
         broker->SetTimeout((uint64_t) params.timeout_ms);
         asapo::FileData data;
diff --git a/examples/pipeline/in_to_out/in_to_out.cpp b/examples/pipeline/in_to_out/in_to_out.cpp
index 97d5234e4633a80d3b4f17e61f7c3290763bff92..5153dfeac5244fa4de53a9e4c0a115e22dad347f 100644
--- a/examples/pipeline/in_to_out/in_to_out.cpp
+++ b/examples/pipeline/in_to_out/in_to_out.cpp
@@ -65,7 +65,7 @@ int ProcessError(const Error& err) {
 
 BrokerPtr CreateBrokerAndGroup(const Args& args, Error* err) {
     auto broker = asapo::DataBrokerFactory::CreateServerBroker(args.server, args.file_path,
-                  asapo::SourceCredentials{args.beamtime_id, args.stream_in, args.token}, err);
+                  asapo::SourceCredentials{args.beamtime_id, "",args.stream_in, args.token}, err);
     if (*err) {
         return nullptr;
     }
@@ -188,7 +188,7 @@ std::unique_ptr<asapo::Producer> CreateProducer(const Args& args) {
     asapo::Error err;
     auto producer = asapo::Producer::Create(args.server, args.nthreads,
                                             asapo::RequestHandlerType::kTcp,
-                                            asapo::SourceCredentials{args.beamtime_id, args.stream_out, args.token }, 60, &err);
+                                            asapo::SourceCredentials{args.beamtime_id, "", args.stream_out, args.token }, 60, &err);
     if(err) {
         std::cerr << "Cannot start producer. ProducerError: " << err << std::endl;
         exit(EXIT_FAILURE);
diff --git a/examples/producer/dummy-data-producer/dummy_data_producer.cpp b/examples/producer/dummy-data-producer/dummy_data_producer.cpp
index 9a7be1a9c0fed9041ecbd20e4b675433e916f8ac..59aaf83a5798d4e8b40a1f125a8c1013f9a38a14 100644
--- a/examples/producer/dummy-data-producer/dummy_data_producer.cpp
+++ b/examples/producer/dummy-data-producer/dummy_data_producer.cpp
@@ -180,7 +180,7 @@ std::unique_ptr<asapo::Producer> CreateProducer(const Args& args) {
     asapo::Error err;
     auto producer = asapo::Producer::Create(args.receiver_address, args.nthreads,
                                             args.mode % 10 == 0 ? asapo::RequestHandlerType::kTcp : asapo::RequestHandlerType::kFilesystem,
-                                            asapo::SourceCredentials{args.beamtime_id, args.stream, args.token }, 3600, &err);
+                                            asapo::SourceCredentials{args.beamtime_id, "", args.stream, args.token }, 3600, &err);
     if(err) {
         std::cerr << "Cannot start producer. ProducerError: " << err << std::endl;
         exit(EXIT_FAILURE);
diff --git a/producer/api/cpp/unittests/test_producer.cpp b/producer/api/cpp/unittests/test_producer.cpp
index a6da3670ee3853613ac057ded22e883685ae86cc..77308974b02cacaa86d7d7b130f41df9db625ae0 100644
--- a/producer/api/cpp/unittests/test_producer.cpp
+++ b/producer/api/cpp/unittests/test_producer.cpp
@@ -15,7 +15,7 @@ namespace {
 TEST(CreateProducer, TcpProducer) {
     asapo::Error err;
     std::unique_ptr<asapo::Producer> producer = asapo::Producer::Create("endpoint", 4, asapo::RequestHandlerType::kTcp,
-                                                SourceCredentials{"bt", "", ""}, 3600, &err);
+                                                SourceCredentials{"bt", "","", ""}, 3600, &err);
     ASSERT_THAT(dynamic_cast<asapo::ProducerImpl*>(producer.get()), Ne(nullptr));
     ASSERT_THAT(err, Eq(nullptr));
 }
@@ -24,7 +24,7 @@ TEST(CreateProducer, ErrorBeamtime) {
     asapo::Error err;
     std::string expected_beamtimeid(asapo::kMaxMessageSize * 10, 'a');
     std::unique_ptr<asapo::Producer> producer = asapo::Producer::Create("endpoint", 4, asapo::RequestHandlerType::kTcp,
-                                                SourceCredentials{expected_beamtimeid, "", ""}, 3600, &err);
+                                                SourceCredentials{expected_beamtimeid,"", "", ""}, 3600, &err);
     ASSERT_THAT(producer, Eq(nullptr));
     ASSERT_THAT(err, Eq(asapo::ProducerErrorTemplates::kWrongInput));
 }
@@ -41,7 +41,7 @@ TEST(CreateProducer, ErrorOnBothAutoBeamlineBeamtime) {
 TEST(CreateProducer, TooManyThreads) {
     asapo::Error err;
     std::unique_ptr<asapo::Producer> producer = asapo::Producer::Create("", asapo::kMaxProcessingThreads + 1,
-                                                asapo::RequestHandlerType::kTcp, SourceCredentials{"bt", "", ""}, 3600, &err);
+                                                asapo::RequestHandlerType::kTcp, SourceCredentials{"bt","", "", ""}, 3600, &err);
     ASSERT_THAT(producer, Eq(nullptr));
     ASSERT_THAT(err, Eq(asapo::ProducerErrorTemplates::kWrongInput));
 }
@@ -50,7 +50,7 @@ TEST(CreateProducer, TooManyThreads) {
 TEST(CreateProducer, ZeroThreads) {
     asapo::Error err;
     std::unique_ptr<asapo::Producer> producer = asapo::Producer::Create("", 0,
-                                                asapo::RequestHandlerType::kTcp, SourceCredentials{"bt", "", ""}, 3600, &err);
+                                                asapo::RequestHandlerType::kTcp, SourceCredentials{"bt", "","", ""}, 3600, &err);
     ASSERT_THAT(producer, Eq(nullptr));
     ASSERT_THAT(err, Eq(asapo::ProducerErrorTemplates::kWrongInput));
 }
@@ -59,7 +59,7 @@ TEST(CreateProducer, ZeroThreads) {
 TEST(Producer, SimpleWorkflowWihoutConnection) {
     asapo::Error err;
     std::unique_ptr<asapo::Producer> producer = asapo::Producer::Create("hello", 5, asapo::RequestHandlerType::kTcp,
-                                                SourceCredentials{"bt", "", ""}, 3600,
+                                                SourceCredentials{"bt", "","", ""}, 3600,
                                                 &err);
 
     asapo::EventHeader event_header{1, 1, "test"};
diff --git a/producer/api/cpp/unittests/test_producer_impl.cpp b/producer/api/cpp/unittests/test_producer_impl.cpp
index 507ed045809f6603cea4bd15895c957ba0e3e820..eb989ffa1cabaf1139551cf7a294e8ba36056e07 100644
--- a/producer/api/cpp/unittests/test_producer_impl.cpp
+++ b/producer/api/cpp/unittests/test_producer_impl.cpp
@@ -386,7 +386,7 @@ TEST_F(ProducerImplTests, OKSendingSendFileRequestWithSubstream) {
 
 TEST_F(ProducerImplTests, ErrorSettingBeamtime) {
     std::string long_str(asapo::kMaxMessageSize * 10, 'a');
-    expected_credentials = asapo::SourceCredentials{long_str, "", ""};
+    expected_credentials = asapo::SourceCredentials{long_str,"", "", ""};
     EXPECT_CALL(mock_logger, Error(testing::HasSubstr("too long")));
 
     auto err = producer.SetCredentials(expected_credentials);
@@ -397,8 +397,8 @@ TEST_F(ProducerImplTests, ErrorSettingBeamtime) {
 TEST_F(ProducerImplTests, ErrorSettingSecondTime) {
     EXPECT_CALL(mock_logger, Error(testing::HasSubstr("already")));
 
-    producer.SetCredentials(asapo::SourceCredentials{"1", "2", "3"});
-    auto err = producer.SetCredentials(asapo::SourceCredentials{"4", "5", "6"});
+    producer.SetCredentials(asapo::SourceCredentials{"1", "","2", "3"});
+    auto err = producer.SetCredentials(asapo::SourceCredentials{"4","", "5", "6"});
 
     ASSERT_THAT(err, Eq(asapo::ProducerErrorTemplates::kWrongInput));
 }
diff --git a/producer/api/python/asapo_producer.pxd b/producer/api/python/asapo_producer.pxd
index 22fdedcba6517b42f39381a17f2c19e557c448cb..b4e2386bc8bfde03406cc82a9f44751292133d96 100644
--- a/producer/api/python/asapo_producer.pxd
+++ b/producer/api/python/asapo_producer.pxd
@@ -47,6 +47,7 @@ cdef extern from "asapo_producer.h" namespace "asapo":
 cdef extern from "asapo_producer.h" namespace "asapo":
   struct  SourceCredentials:
     string beamtime_id
+    string beamline
     string stream
     string user_token
 
diff --git a/producer/event_monitor_producer/src/main_eventmon.cpp b/producer/event_monitor_producer/src/main_eventmon.cpp
index cd5899c3c01c0992404c33e733e38c0012e0aadf..ff57a2dc3f568b0b69d7e66c275df96d957c26f0 100644
--- a/producer/event_monitor_producer/src/main_eventmon.cpp
+++ b/producer/event_monitor_producer/src/main_eventmon.cpp
@@ -39,7 +39,7 @@ std::unique_ptr<Producer> CreateProducer() {
 
     Error err;
     auto producer = Producer::Create(config->asapo_endpoint, (uint8_t) config->nthreads,
-                                     config->mode, asapo::SourceCredentials{config->beamtime_id, config->stream, ""}, 3600, &err);
+                                     config->mode, asapo::SourceCredentials{config->beamtime_id, "", config->stream, ""}, 3600, &err);
     if(err) {
         std::cerr << "cannot create producer: " << err << std::endl;
         exit(EXIT_FAILURE);
diff --git a/tests/automatic/consumer/consumer_api/consumer_api.cpp b/tests/automatic/consumer/consumer_api/consumer_api.cpp
index 9a51b41a1a331689f4336e65a64fb2e670308858..8dccf3da1a8b713c7c35b1e04de4a910ad2fd900 100644
--- a/tests/automatic/consumer/consumer_api/consumer_api.cpp
+++ b/tests/automatic/consumer/consumer_api/consumer_api.cpp
@@ -187,7 +187,7 @@ void TestDataset(const std::unique_ptr<asapo::DataBroker>& broker, const std::st
 void TestAll(const Args& args) {
     asapo::Error err;
     auto broker = asapo::DataBrokerFactory::CreateServerBroker(args.server, ".",
-                  asapo::SourceCredentials{args.run_name, "", args.token}, &err);
+                  asapo::SourceCredentials{args.run_name, "","", args.token}, &err);
     broker->SetTimeout(100);
     auto group_id = broker->GenerateNewGroupId(&err);
 
diff --git a/tests/automatic/consumer/next_multithread_broker/next_multithread_broker.cpp b/tests/automatic/consumer/next_multithread_broker/next_multithread_broker.cpp
index e623774e20f9798278c3a213baead395333107d4..515b591eb7ecdb96b938405ea07fc4ec1a718498 100644
--- a/tests/automatic/consumer/next_multithread_broker/next_multithread_broker.cpp
+++ b/tests/automatic/consumer/next_multithread_broker/next_multithread_broker.cpp
@@ -49,7 +49,7 @@ Args GetArgs(int argc, char* argv[]) {
 
 void TestAll(const Args& args) {
     asapo::Error err;
-    auto broker = asapo::DataBrokerFactory::CreateServerBroker(args.server, "dummy", asapo::SourceCredentials{args.run_name, "", args.token}, &err);
+    auto broker = asapo::DataBrokerFactory::CreateServerBroker(args.server, "dummy", asapo::SourceCredentials{args.run_name,"", "", args.token}, &err);
     auto group_id = broker->GenerateNewGroupId(&err);
     broker->SetTimeout(10000);
     std::vector<asapo::FileInfos>file_infos(args.nthreads);
diff --git a/tests/automatic/curl_http_client/curl_http_client_command/curl_httpclient_command.cpp b/tests/automatic/curl_http_client/curl_http_client_command/curl_httpclient_command.cpp
index 8fb1df7623077f4f0644fd0135bde61f85184906..ea34c81ae8b2462d22a4755e78f5c3e914a5418e 100644
--- a/tests/automatic/curl_http_client/curl_http_client_command/curl_httpclient_command.cpp
+++ b/tests/automatic/curl_http_client/curl_http_client_command/curl_httpclient_command.cpp
@@ -32,7 +32,7 @@ int main(int argc, char* argv[]) {
     auto args = GetArgs(argc, argv);
 
     asapo::Error err;
-    auto broker = asapo::DataBrokerFactory::CreateServerBroker(args.uri, "", asapo::SourceCredentials{"", "", ""}, &err);
+    auto broker = asapo::DataBrokerFactory::CreateServerBroker(args.uri, "", asapo::SourceCredentials{"", "","", ""}, &err);
     auto server_broker = static_cast<asapo::ServerDataBroker*>(broker.get());
 
     asapo::HttpCode code;
diff --git a/tests/automatic/full_chain/send_recv_substreams/send_recv_substreams.cpp b/tests/automatic/full_chain/send_recv_substreams/send_recv_substreams.cpp
index d4eb41a5024faba5da17adf2480152eac1550d76..500b1d261dd8d6f22fbc98acca72798ea491d76c 100644
--- a/tests/automatic/full_chain/send_recv_substreams/send_recv_substreams.cpp
+++ b/tests/automatic/full_chain/send_recv_substreams/send_recv_substreams.cpp
@@ -36,7 +36,7 @@ void ProcessAfterSend(asapo::GenericRequestHeader header, asapo::Error err) {
 
 BrokerPtr CreateBrokerAndGroup(const Args& args, Error* err) {
     auto broker = asapo::DataBrokerFactory::CreateServerBroker(args.server, ".",
-                  asapo::SourceCredentials{args.beamtime_id, "", args.token}, err);
+                  asapo::SourceCredentials{args.beamtime_id,"", "", args.token}, err);
     if (*err) {
         return nullptr;
     }
@@ -56,7 +56,7 @@ ProducerPtr CreateProducer(const Args& args) {
     asapo::Error err;
     auto producer = asapo::Producer::Create(args.server, 1,
                                             asapo::RequestHandlerType::kTcp,
-                                            asapo::SourceCredentials{args.beamtime_id, "", args.token }, 60, &err);
+                                            asapo::SourceCredentials{args.beamtime_id,"", "", args.token }, 60, &err);
     if(err) {
         std::cerr << "Cannot start producer. ProducerError: " << err << std::endl;
         exit(EXIT_FAILURE);
diff --git a/tests/automatic/producer/beamtime_metadata/beamtime_metadata.cpp b/tests/automatic/producer/beamtime_metadata/beamtime_metadata.cpp
index 2b72594b76e8e6106a8bb993b1e7f21234f0fecc..0817a9d840adf258e0e34cac1bc5d4d174c7198c 100644
--- a/tests/automatic/producer/beamtime_metadata/beamtime_metadata.cpp
+++ b/tests/automatic/producer/beamtime_metadata/beamtime_metadata.cpp
@@ -69,7 +69,7 @@ std::unique_ptr<asapo::Producer> CreateProducer(const Args& args) {
     auto producer = asapo::Producer::Create(args.receiver_address, 1,
                                             args.mode == 0 ? asapo::RequestHandlerType::kTcp
                                             : asapo::RequestHandlerType::kFilesystem,
-                                            asapo::SourceCredentials{args.beamtime_id, "", ""}, 60, &err);
+                                            asapo::SourceCredentials{args.beamtime_id, "","", ""}, 60, &err);
     if (err) {
         std::cerr << "Cannot start producer. ProducerError: " << err << std::endl;
         exit(EXIT_FAILURE);
diff --git a/tests/manual/performance_broker_receiver/getlast_broker.cpp b/tests/manual/performance_broker_receiver/getlast_broker.cpp
index 8aaa9d9aa122ecf7faa9ba521ed63a1229328a27..adebed571edffbdd6ee3f989929a39cf73f3783f 100644
--- a/tests/manual/performance_broker_receiver/getlast_broker.cpp
+++ b/tests/manual/performance_broker_receiver/getlast_broker.cpp
@@ -48,7 +48,7 @@ std::vector<std::thread> StartThreads(const Args& params,
         asapo::FileInfo fi;
         Error err;
         auto broker = asapo::DataBrokerFactory::CreateServerBroker(params.server, params.file_path,
-                      asapo::SourceCredentials{params.beamtime_id, "", params.token}, &err);
+                      asapo::SourceCredentials{params.beamtime_id, "","", params.token}, &err);
         broker->SetTimeout((uint64_t) params.timeout_ms);
         asapo::FileData data;