http:
  middlewares:
    http-cache:
      plugin:
        souin:
          api:
            # prometheus: {}
            souin: {}
          default_cache:
            ttl: 60s  # TTL par défaut pour toutes les URLs
            allowed_http_verbs:
              - GET
              - HEAD
              - POST
            default_cache_control: public, max-age=60
            force: true
          log_level: debug

    portainer-cache:
      plugin:
        souin:
          api:
            prometheus: {}
            souin: {}
          default_cache:
            regex:
              exclude: '/api/.*|/auth/.*|/settings/.*'  # Exclure les APIs sensibles de Portainer du cache
            ttl: 60s  # TTL global par défaut
            allowed_http_verbs:
              - GET
              - HEAD
            default_cache_control: public, max-age=60
          log_level: debug
          urls:
            'portainer.{{ env "DOMAINNAME"}}':
              ttl: 120s
              default_cache_control: public, max-age=120
            'portainer.{{ env "DOMAINNAME"}}/login':
              ttl: 0s  # Ne pas mettre en cache la page de login
          ykeys:
            Portainer_API_Key:
              headers:
                Content-Type: 'application/json'
          surrogate_keys:
            Portainer_Surrogate_Key:
              headers:
                Content-Type: 'application/json'

    servarr-cache:
      plugin:
        souin:
          api:
            prometheus: {}
            souin: {}
          default_cache:
            regex:
              exclude: '/api/.*|/auth/.*|/indexers/.*|/download/.*|/profile/.*'  # Exclure les API, indexeurs, et téléchargements du cache
            ttl: 60s  # TTL global par défaut
            allowed_http_verbs:
              - GET
              - HEAD
            default_cache_control: public, max-age=60
          log_level: debug
          urls:
            'sonarr.{{ env "DOMAINNAME" }}/':
              ttl: 300s
            'radarr.{{ env "DOMAINNAME" }}/':
              ttl: 300s 
            'lidarr.{{ env "DOMAINNAME" }}/':
              ttl: 300s 
            'readarr.{{ env "DOMAINNAME" }}/':
              ttl: 300s 
          ykeys:
            Servarr_Static_Key:
              headers:
                Content-Type: 'text/html'
          surrogate_keys:
            Servarr_Surrogate_Key:
              headers:
                Content-Type: 'application/json'
