diff --git a/commons/commons-api/src/main/java/fr/gouv/vitamui/commons/api/CommonConstants.java b/commons/commons-api/src/main/java/fr/gouv/vitamui/commons/api/CommonConstants.java
index 1afb37b18357afbdf10bee1fe5f35b3eae987b94..0c41fb04347aaae8dfb42fe758e6ee8a75360247 100644
--- a/commons/commons-api/src/main/java/fr/gouv/vitamui/commons/api/CommonConstants.java
+++ b/commons/commons-api/src/main/java/fr/gouv/vitamui/commons/api/CommonConstants.java
@@ -193,6 +193,12 @@ public class CommonConstants {
 
     public static final String PORTAL_URL = "PORTAL_URL";
 
+    public static final String ARCHIVES_SEARCH_URL = "ARCHIVES_SEARCH_URL";
+
+    public static final String INGEST_URL = "INGEST_URL";
+
+    public static final String REFERENTIAL_URL = "REFERENTIAL_URL";
+
     public static final String CAS_LOGIN_URL = "CAS_URL";
 
     public static final String CAS_LOGOUT_URL = "CAS_LOGOUT_URL";
diff --git a/deployment/roles/vitamui/templates/ui-ingest/application.yml.j2 b/deployment/roles/vitamui/templates/ui-ingest/application.yml.j2
index 7a78b378a1658080e27102e3efeacc7a9843f1f3..f734e82d31a30f1ebb680a6e881042aa0cc0b567 100644
--- a/deployment/roles/vitamui/templates/ui-ingest/application.yml.j2
+++ b/deployment/roles/vitamui/templates/ui-ingest/application.yml.j2
@@ -108,6 +108,14 @@ ui-ingest:
 {% else %}
     ingest: "{{ url_prefix }}/ingest"
 {% endif %}
+
+{% if vitamui.archive_search.base_url is defined %}
+    archives-search: "{{ vitamui.archive_search.base_url }}"
+{% else %}
+    archives-search: "{{ url_prefix }}/archive-search"
+{% endif %}
+
+
   portal-categories:
 {% for id, category in vitamui_defaults.portal_categories.items() %}
     {{ id }}:
diff --git a/deployment/roles/vitamui/templates/ui-portal/application.yml.j2 b/deployment/roles/vitamui/templates/ui-portal/application.yml.j2
index 9fe48f17c3150c1caa03c14397b6255f8680d365..9862200b5ca3d90b950a72d7d9600b825eba741e 100644
--- a/deployment/roles/vitamui/templates/ui-portal/application.yml.j2
+++ b/deployment/roles/vitamui/templates/ui-portal/application.yml.j2
@@ -92,7 +92,8 @@ ui-portal:
     portal: "{{ url_prefix }}" # TODO OMA : revoir avec les redirections du RP
     admin-identity: "{{ url_prefix }}/identity-admin" # TODO OMA : revoir avec les redirections du RP
     identity: "{{ url_prefix }}/identity" # TODO OMA : revoir avec les redirections du RP
-
+    archives-search: "{{ url_prefix }}/archives-search" # TODO OMA : revoir avec les redirections du RP
+    referential: "{{ url_prefix }}/referential" # TODO OMA : revoir avec les redirections du RP
 ui:
   url: "{{ url_prefix }}"
   redirect-url: ${ui.url}/${ui-prefix}
@@ -101,6 +102,9 @@ ui:
     portal: "{{ vitamui.portal.base_url}}"
     admin-identity: "{{ vitamui.identity_admin.base_url }}"
     identity: "{{ vitamui.identity.base_url }}"
+    ingest: "{{ vitamui.ingest.base_url }}"
+    archives-search: "{{ vitamui.archive_search.base_url }}"
+    referential: "{{ vitamui.referential.base_url }}"
 
 ui:
   url: "{{ vitamui.portal.base_url }}"
diff --git a/ui/ui-archive-search/src/main/config/ui-archive-search-application-dev.yml b/ui/ui-archive-search/src/main/config/ui-archive-search-application-dev.yml
index 44067dafff2ac317b46945147b6353b5eeb3a056..3efd2757f81c140d743779e10fd9984fe6dcb228 100644
--- a/ui/ui-archive-search/src/main/config/ui-archive-search-application-dev.yml
+++ b/ui/ui-archive-search/src/main/config/ui-archive-search-application-dev.yml
@@ -70,7 +70,8 @@ ui-archive-search:
       hostname-verification: false
   base-url:
     portal: "https://dev.vitamui.com:4200"
-
+    archives-search: "https://dev.vitamui.com:4209/archive-search"
+    ingest: "https://dev.vitamui.com:4208/ingest"
 
   portal-categories:
     ingest_and_consultation:
diff --git a/ui/ui-archive-search/src/main/config/ui-archive-search-application-recette.yml b/ui/ui-archive-search/src/main/config/ui-archive-search-application-recette.yml
index b28fdf97f3c497ab136898eecb63b6a29aa52e31..a3ae35935500d8553325e1da8fa0ff9ea1094aef 100644
--- a/ui/ui-archive-search/src/main/config/ui-archive-search-application-recette.yml
+++ b/ui/ui-archive-search/src/main/config/ui-archive-search-application-recette.yml
@@ -43,7 +43,8 @@ ui-archive-search:
       hostname-verification: false
   base-url:
     portal: "https://dev.vitamui.com"
-
+    archives-search: "https://dev.vitamui.com:4209/archive-search"
+    ingest: "https://dev.vitamui.com:4208/ingest"
 
   portal-categories:
     ingest_and_consultation:
diff --git a/ui/ui-commons/src/main/java/fr/gouv/vitamui/ui/commons/property/BaseUrl.java b/ui/ui-commons/src/main/java/fr/gouv/vitamui/ui/commons/property/BaseUrl.java
index a3183135145e6187dfe82c6c7fa99e7130c10d2f..e31b5435418e337dc8536fecd607397d520bfbb2 100644
--- a/ui/ui-commons/src/main/java/fr/gouv/vitamui/ui/commons/property/BaseUrl.java
+++ b/ui/ui-commons/src/main/java/fr/gouv/vitamui/ui/commons/property/BaseUrl.java
@@ -47,6 +47,12 @@ public class BaseUrl {
 
     private String adminIdentity;
 
+    private String archivesSearch;
+
+    private String ingest;
+
+    private String referential;
+
     private String identity;
 
 }
diff --git a/ui/ui-commons/src/main/java/fr/gouv/vitamui/ui/commons/service/ApplicationService.java b/ui/ui-commons/src/main/java/fr/gouv/vitamui/ui/commons/service/ApplicationService.java
index bd1483305dd312bc4c784f09c9ad4afcc313cb82..ba9790716585ccee10ecdac62f627df4d8e1c934 100644
--- a/ui/ui-commons/src/main/java/fr/gouv/vitamui/ui/commons/service/ApplicationService.java
+++ b/ui/ui-commons/src/main/java/fr/gouv/vitamui/ui/commons/service/ApplicationService.java
@@ -39,7 +39,11 @@ package fr.gouv.vitamui.ui.commons.service;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
 import fr.gouv.vitamui.commons.api.CommonConstants;
-import fr.gouv.vitamui.commons.api.domain.*;
+import fr.gouv.vitamui.commons.api.domain.ApplicationDto;
+import fr.gouv.vitamui.commons.api.domain.Criterion;
+import fr.gouv.vitamui.commons.api.domain.CriterionOperator;
+import fr.gouv.vitamui.commons.api.domain.QueryDto;
+import fr.gouv.vitamui.commons.api.domain.QueryOperator;
 import fr.gouv.vitamui.commons.api.enums.AttachmentType;
 import fr.gouv.vitamui.commons.api.logger.VitamUILogger;
 import fr.gouv.vitamui.commons.api.logger.VitamUILoggerFactory;
@@ -63,7 +67,11 @@ import java.io.IOException;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
-import java.util.*;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
@@ -111,8 +119,9 @@ public class ApplicationService extends AbstractCrudService<ApplicationDto> {
 
     private Map<String, List<String>> listEnableExternalIdentifiers;
 
-    public ApplicationService(final UIProperties properties, final CasLogoutUrl casLogoutUrl, final IamExternalRestClientFactory factory,
-    final BuildProperties buildProperties) {
+    public ApplicationService(final UIProperties properties, final CasLogoutUrl casLogoutUrl,
+        final IamExternalRestClientFactory factory,
+        final BuildProperties buildProperties) {
         this.properties = properties;
         this.casLogoutUrl = casLogoutUrl;
         this.buildProperties = buildProperties;
@@ -140,7 +149,7 @@ public class ApplicationService extends AbstractCrudService<ApplicationDto> {
     }
 
     private Map<String, List<String>> getListEnableExternalIdentifiers() {
-        if(listEnableExternalIdentifiers == null) {
+        if (listEnableExternalIdentifiers == null) {
             listEnableExternalIdentifiers = autoConfigurationVitam.getTenants();
         }
         return listEnableExternalIdentifiers;
@@ -151,12 +160,13 @@ public class ApplicationService extends AbstractCrudService<ApplicationDto> {
         final ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
 
         final Map<String, List<String>> externalIdentifiers = getListEnableExternalIdentifiers();
-        LOGGER.info("Reading list of external identifiers {}", externalIdentifiers == null ? "null" : externalIdentifiers.toString());
+        LOGGER.info("Reading list of external identifiers {}",
+            externalIdentifiers == null ? "null" : externalIdentifiers.toString());
 
-        if(externalIdentifiers != null) {
-            if(listEnableExternalIdentifiers.containsKey(tenantId)) {
+        if (externalIdentifiers != null) {
+            if (listEnableExternalIdentifiers.containsKey(tenantId)) {
                 final List<String> enabledApplications = listEnableExternalIdentifiers.get(tenantId);
-                return(enabledApplications.contains(identifier));
+                return (enabledApplications.contains(identifier));
             }
         }
 
@@ -170,18 +180,23 @@ public class ApplicationService extends AbstractCrudService<ApplicationDto> {
     public Map<String, Object> getConf() {
         final Map<String, Object> configurationData = new HashMap<>();
         configurationData.put(CommonConstants.PORTAL_URL, properties.getBaseUrl().getPortal());
+        configurationData.put(CommonConstants.ARCHIVES_SEARCH_URL, properties.getBaseUrl().getArchivesSearch());
+        configurationData.put(CommonConstants.INGEST_URL, properties.getBaseUrl().getIngest());
+        configurationData.put(CommonConstants.REFERENTIAL_URL, properties.getBaseUrl().getReferential());
         configurationData.put(CommonConstants.CAS_LOGIN_URL, getCasLoginUrl());
         configurationData.put(CommonConstants.CAS_LOGOUT_URL, casLogoutUrl.getValue());
         configurationData.put(CommonConstants.UI_URL, uiUrl);
-        configurationData.put(CommonConstants.LOGOUT_REDIRECT_UI_URL, casLogoutUrl.getValueWithRedirection(uiRedirectUrl));
+        configurationData
+            .put(CommonConstants.LOGOUT_REDIRECT_UI_URL, casLogoutUrl.getValueWithRedirection(uiRedirectUrl));
         configurationData.put(CommonConstants.THEME_COLORS, properties.getThemeColors());
         configurationData.put(CommonConstants.PORTAL_TITLE, properties.getPortalTitle());
         configurationData.put(CommonConstants.PORTAL_MESSAGE, properties.getPortalMessage());
         configurationData.put(CommonConstants.CUSTOMER, properties.getCustomer());
         String versionRelease = properties.getVersionRelease();
         if (StringUtils.isEmpty(versionRelease)) {
-            versionRelease = Stream.of(buildProperties.get(VERSION_RELEASE_KEY).split("\\" + DELIMITER)).limit(2).map(Object::toString)
-                    .collect(Collectors.joining(DELIMITER));
+            versionRelease = Stream.of(buildProperties.get(VERSION_RELEASE_KEY).split("\\" + DELIMITER)).limit(2)
+                .map(Object::toString)
+                .collect(Collectors.joining(DELIMITER));
 
         }
         if (StringUtils.isNotEmpty(versionRelease)) {
@@ -207,7 +222,9 @@ public class ApplicationService extends AbstractCrudService<ApplicationDto> {
 
     public String getBase64File(final String fileName, final String basePath) {
         if (StringUtils.isBlank(fileName) || StringUtils.isBlank(basePath)) {
-            LOGGER.warn(String.format("Logo information missing : cannot load logo with name \"%s\" in path \"%s\"", fileName, basePath));
+            LOGGER.warn(String
+                .format("Logo information missing : cannot load logo with name \"%s\" in path \"%s\"", fileName,
+                    basePath));
             return null;
         }
 
diff --git a/ui/ui-frontend-common/src/app/modules/startup.service.ts b/ui/ui-frontend-common/src/app/modules/startup.service.ts
index d3c8237586b9be4daf14af3296264f8f136a0fab..ffa2eec71d82ccc053a5703caf98471760848ded 100644
--- a/ui/ui-frontend-common/src/app/modules/startup.service.ts
+++ b/ui/ui-frontend-common/src/app/modules/startup.service.ts
@@ -37,26 +37,24 @@
 import { Inject, Injectable } from '@angular/core';
 import { Observable, Subject } from 'rxjs';
 import { tap } from 'rxjs/operators';
-import { ApplicationService } from './application.service';
-
 import { ApplicationApiService } from './api/application-api.service';
 import { SecurityApiService } from './api/security-api.service';
 import { ApplicationId } from './application-id.enum';
+import { ApplicationService } from './application.service';
 import { AuthService } from './auth.service';
 import { WINDOW_LOCATION } from './injection-tokens';
 import { Logger } from './logger/logger';
-import { AppConfiguration, AttachmentType, AuthUser, Color } from './models';
-import {ThemeService} from './theme.service';
+import { AppConfiguration, AttachmentType, AuthUser } from './models';
+import { ThemeService } from './theme.service';
 
 const WARNING_DURATION = 2000;
 const CUSTOMER_TECHNICAL_REFERENT_KEY = 'technical-referent-email';
 const CUSTOMER_WEBSITE_URL_KEY = 'website-url';
 
 @Injectable({
-  providedIn: 'root'
+  providedIn: 'root',
 })
 export class StartupService {
-
   private configurationData: AppConfiguration;
 
   userRefresh = new Subject<any>();
@@ -65,7 +63,6 @@ export class StartupService {
 
   private CURRENT_TENANT_IDENTIFIER: string;
 
-
   constructor(
     private logger: Logger,
     private authService: AuthService,
@@ -74,12 +71,14 @@ export class StartupService {
     private themeService: ThemeService,
     private applicationService: ApplicationService,
     @Inject(WINDOW_LOCATION) private location: any
-  ) { }
+  ) {}
 
   load(): Promise<any> {
     this.configurationData = null;
 
-    return this.applicationApi.getConfiguration().toPromise()
+    return this.applicationApi
+      .getConfiguration()
+      .toPromise()
       .then((data: any) => {
         this.configurationData = data;
         this.authService.loginUrl = this.configurationData.CAS_URL;
@@ -95,7 +94,6 @@ export class StartupService {
         this.configurationData.LOGO = data[AttachmentType.Portal];
       })
       .then(() => {
-
         let customerColorMap = null;
 
         if (this.authService.user.basicCustomer.graphicIdentity.hasCustomGraphicIdentity) {
@@ -217,6 +215,21 @@ export class StartupService {
     return null;
   }
 
+  getArchivesSearchUrl(): string {
+    if (this.configurationLoaded()) {
+      return this.configurationData.ARCHIVES_SEARCH_URL;
+    }
+
+    return null;
+  }
+
+  getReferentialUrl(): string {
+      if (this.configurationLoaded()) {
+        return this.configurationData.REFERENTIAL_SEARCH_URL;
+      }
+
+      return null;
+    }
   getConfigStringValue(key: string): string {
     if (this.configurationLoaded() && this.configurationData.hasOwnProperty(key)) {
       return this.configurationData[key];
@@ -234,7 +247,7 @@ export class StartupService {
    * @param url URL to be redirected to.
    */
   redirect(url?: string) {
-    setTimeout(() => this.location.href = url ? url : this.getPortalUrl(), WARNING_DURATION);
+    setTimeout(() => (this.location.href = url ? url : this.getPortalUrl()), WARNING_DURATION);
   }
 
   getPlatformName(): string {
@@ -264,5 +277,4 @@ export class StartupService {
       return customer[CUSTOMER_WEBSITE_URL_KEY];
     }
   }
-
 }
diff --git a/ui/ui-frontend/package-lock.json b/ui/ui-frontend/package-lock.json
index 20506252ecb33140d1cade837be25af8d6aa3e6b..361cfc835f847adbfd3217fcd2e6106b73b14b25 100644
--- a/ui/ui-frontend/package-lock.json
+++ b/ui/ui-frontend/package-lock.json
@@ -14701,7 +14701,7 @@
     },
     "ui-frontend-common": {
       "version": "file:../ui-frontend-common/ui-frontend-common-2.1.0.tgz",
-      "integrity": "sha512-7OSXs9OJwdXy0Qd+sBm32CFHrtc/hZFrvrB6hK3FtrtSV7+OCZKzzLjaMkHj4t6rRPiH+iqK9A5A0x9otOUfXA==",
+      "integrity": "sha512-OcDeeesZmKmzZGTkTCmsz+ukXYp149Tueq5EhmSGGRUNHuk5bRrvnD0gGclWlMu8cZM23MeOD74Ac1je8sk9Sg==",
       "requires": {
         "@angular/material-moment-adapter": "^10.2.3",
         "@ngx-translate/core": "^12.0.0",
diff --git a/ui/ui-frontend/projects/ingest/src/app/ingest/ingest-preview/ingest-preview.component.html b/ui/ui-frontend/projects/ingest/src/app/ingest/ingest-preview/ingest-preview.component.html
index e046bb24432c6b4c62e26856bd06321e78b16f37..8833cee54937c6f9af52e0f8277bf50194e10cb4 100644
--- a/ui/ui-frontend/projects/ingest/src/app/ingest/ingest-preview/ingest-preview.component.html
+++ b/ui/ui-frontend/projects/ingest/src/app/ingest/ingest-preview/ingest-preview.component.html
@@ -11,7 +11,7 @@
     <button mat-menu-item i18n="@@ingestPreviewDownloadATR"
             (click)="downloadATR()"
             [disabled]="ingestStatus(ingest) === 'En cours'"
-            >{{'INGEST_DETAIL.DOWNLOAD_ATR' | translate}}           
+            >{{'INGEST_DETAIL.DOWNLOAD_ATR' | translate}}
     </button>
     <button mat-menu-item i18n="@@ingestPreviewGenerateDocX" (click)="generateODTreport()"
             matTooltip="{{'INGEST_DETAIL.DOWNLOAD_DOCX' | translate}}" matTooltipClass="vitamui-tooltip"
@@ -29,6 +29,6 @@
     <mat-tab label="{{'INGEST_DETAIL.INGEST_ERROR_DETAIL' | translate}}">
       <app-ingest-errors-details-tab [ingest]="ingest"></app-ingest-errors-details-tab>
     </mat-tab>
-    
+
   </mat-tab-group>
 </div>
diff --git a/ui/ui-frontend/projects/ingest/src/app/ingest/ingest-preview/ingest-preview.component.ts b/ui/ui-frontend/projects/ingest/src/app/ingest/ingest-preview/ingest-preview.component.ts
index c2e8ad2fe36451a02e6113da737de9ef150352e0..b76f407ac377e2a06756a7294b153ac3e8bed511 100644
--- a/ui/ui-frontend/projects/ingest/src/app/ingest/ingest-preview/ingest-preview.component.ts
+++ b/ui/ui-frontend/projects/ingest/src/app/ingest/ingest-preview/ingest-preview.component.ts
@@ -47,7 +47,7 @@ export class IngestPreviewComponent implements OnInit {
 
   @Input() ingest: any; // Make a type ?
   @Output() previewClose = new EventEmitter();
- 
+
 
   constructor(private logbookService: LogbookService, private ingestService : IngestService) { }
 
diff --git a/ui/ui-ingest/src/main/config/ui-ingest-application-dev.yml b/ui/ui-ingest/src/main/config/ui-ingest-application-dev.yml
index 051960a083b906173ec72a89b3052a50f86c4871..69b4c906209a1fec3e82393bd5df0a8e0f7d7eda 100644
--- a/ui/ui-ingest/src/main/config/ui-ingest-application-dev.yml
+++ b/ui/ui-ingest/src/main/config/ui-ingest-application-dev.yml
@@ -72,7 +72,8 @@ ui-ingest:
       hostname-verification: false
   base-url:
     portal: "https://dev.vitamui.com:4200"
-
+    archives-search: "https://dev.vitamui.com:4209/archive-search"
+    ingest: "https://dev.vitamui.com:4208/ingest"
   portal-categories:
     ingest_and_consultation:
       title: "Versement & consultation"
diff --git a/ui/ui-portal/src/main/config/ui-portal-application-dev.yml b/ui/ui-portal/src/main/config/ui-portal-application-dev.yml
index 2138da59992556f14c56223c79b6a337045d4cde..5fbbea96a71d999d5bf1221b7705a4f071919557 100644
--- a/ui/ui-portal/src/main/config/ui-portal-application-dev.yml
+++ b/ui/ui-portal/src/main/config/ui-portal-application-dev.yml
@@ -64,6 +64,9 @@ ui-portal:
     portal: "https://dev.vitamui.com:4200"
     admin-identity: "https://dev.vitamui.com:4201/identity"
     identity: "https://dev.vitamui.com:4201/identity"
+    archives-search: "https://dev.vitamui.com:4209/archive-search"
+    ingest: "https://dev.vitamui.com:4208/ingest"
+    referential: "https://dev.vitamui.com:4202/referential"
   customer:
     technical-referent-email: contact@programmevitam.fr
     website-url: http://www.programmevitam.fr