diff --git a/frontend/components/AnalysisList.vue b/frontend/components/AnalysisList.vue
index 66c8eae487579c67417054b30c6b1d02bbcfee1e..8ec51587c5ec51aae623ec4c9451a8385ec7b3c7 100644
--- a/frontend/components/AnalysisList.vue
+++ b/frontend/components/AnalysisList.vue
@@ -2,8 +2,8 @@
 import { computed } from 'vue'
 import { usePolling } from "../composables/useFetchAnalyses";
 import type { Analysis } from '~/types';
-// import { useIsGalaxyOffline } from '~/composables/isGalaxyOffline';
-
+import { joinURL } from "ufo";
+const runtimeConfig = useRuntimeConfig()
 const sessionExpiryDate = useState('sessionExpiryDate')
 const toEdit: Ref<number | null> = ref(null)
 const newTitle: Ref<string | null> = ref(null)
@@ -17,6 +17,10 @@ const sanitizedAnalyses = computed(() => {
   }) ?? [] : []
 })
 
+function getResultArchiveUrl(analysisId: number) {
+  return joinURL(runtimeConfig.public.dfApiPrefix, `/analysis/${analysisId}/results-archive`)
+}
+
 async function deleteAnalysis(analysisId: number) {
   // if (csrfToken.value) {
   try {
@@ -150,8 +154,7 @@ if (sessionError.value) {
               </template>
               <template v-if="toEdit != analysis.raw.id" #append>
                 <div class="d-flex flex-row justify-end align-center">
-                  <v-btn variant="text" size="small" icon="md:download"
-                    :href="`/api/analysis/${analysis.raw.id}/results-archive`">
+                  <v-btn variant="text" size="small" icon="md:download" :href="getResultArchiveUrl(analysis.raw.id)">
                   </v-btn>
                   <v-btn variant="text" size="small" icon="md:edit"
                     @click="editionMode(analysis.raw.id, analysis.raw.name)">
diff --git a/frontend/components/SubmitAnalysis.vue b/frontend/components/SubmitAnalysis.vue
index 0e041e096c61dbb528f54e0ebe5db5585a2438a3..b538d0f13f7b7117c65e013d152a86a661b19003 100644
--- a/frontend/components/SubmitAnalysis.vue
+++ b/frontend/components/SubmitAnalysis.vue
@@ -14,11 +14,15 @@ const { meta, handleSubmit } = useForm({
 const files = useField("files");
 
 
-const { data, error } = await useAPI<{ is_online: boolean }>("/analysis/is-galaxy-online")
-if (data.value === null) throw createError("Error with galaxy instance")
-if (!data.value.is_online) {
+const { data, error } = await useAPI<{ is_online: boolean }>("/analysis/is-galaxy-online", {
+  onRequest({ request }) {
+  }
+})
+
+if (data.value !== null && !data.value.is_online) {
   throw createError("The galaxy instance is offline")
 }
+
 </script>
 <template>
   <v-card flat color="transparent">
diff --git a/frontend/pages/analyses/[analysisId].vue b/frontend/pages/analyses/[analysisId].vue
index f7930c9c0701acaf47dd9dc47d8fecde756f28b8..0efbce536cc27ca4a261e3ce924808a5b7d6159e 100644
--- a/frontend/pages/analyses/[analysisId].vue
+++ b/frontend/pages/analyses/[analysisId].vue
@@ -8,10 +8,13 @@ import { useRoute, computed } from "#imports";
 import * as d3 from "d3";
 import { useDisplay } from 'vuetify'
 import { useElementSize } from '@vueuse/core'
+import { joinURL } from "ufo";
+
 const { width } = useDisplay()
 const route = useRoute();
 const { selectedProtein } = useSelectedProtein()
 
+const runtimeConfig = useRuntimeConfig()
 
 
 const analysisId = computed(() => {
@@ -406,6 +409,9 @@ function draw() {
 
 
 
+}
+function getResultArchiveUrl(analysisId: number) {
+  return joinURL(runtimeConfig.public.dfApiPrefix, `/analysis/${analysisId}/results-archive`)
 }
 
 onMounted(() => {
@@ -452,7 +458,7 @@ useHead({
       <v-toolbar density="compact" class="pr-2">
         <v-toolbar-title>{{ analysis.name }}</v-toolbar-title>
         <v-btn color="primary" prepend-icon="mdi-download"
-          :href="`/api/analysis/${analysis.id}/results-archive`">Download
+          :href="getResultArchiveUrl(analysis.id)">Download
           all results</v-btn>
         <v-chip color="primary" rounded>{{ new Date(analysis.create_time).toLocaleString() }}</v-chip>
         <template v-if="analysis.percentage_done !== 100 && analysis.stderr === ''" #extension>
diff --git a/frontend/plugins/api.ts b/frontend/plugins/api.ts
index 8d66b65a1eeaca3a277ee8be7258bb7cb85125da..57f79643d56291db16ec135786b0ffd419bc1079 100644
--- a/frontend/plugins/api.ts
+++ b/frontend/plugins/api.ts
@@ -5,6 +5,7 @@ export default defineNuxtPlugin(() => {
     const $api = $fetch.create({
         baseURL: "/dfapi",
         async onRequest({ request, options, error }) {
+            console.log("dans le on request du create")
             const { data } = await useFetch("/api/auth", { headers })
             const toValToken = toValue(csrfToken)
             if (toValToken !== undefined) {