Dashboard show 404 error

Hello, I set traefik server but dashboard page always 404. even not show basic auth.
I don't know what I wrong.

My static configuration:

[global]
  checkNewVersion = true

[entryPoints]
  [entryPoints.web]
    address = ":80"
    [entryPoints.web.http.redirections.entryPoint]
      to = "websecure"
      scheme = "https"
      permanent = true
  [entryPoints.websecure]
    address = ":443"
  [entryPoints.websecure.http.tls]
    certResolver = "myresolver"

[log]
  level = "DEBUG"
[accessLog]

[api]
  dashboard = true

[providers]
  [providers.docker]
    endpoint = "unix:///var/run/docker.sock"
    exposedbydefault = false
    network = "web"

[certificatesResolvers]
  [certificatesResolvers.myresolver.acme]
    email = "<EMAIL>"
    storage = "acme.json"

  [certificatesResolvers.myresolver.acme.tlsChallenge]

my docker-compose.yml:

version: '3.3'
  
services:
  traefik:
    image: traefik:latest
    container_name: traefik
    restart: always
    command: --configFile=/traefik.toml
    restart: unless-stopped
    logging:
      options:
        max-size: 1m
    networks:
      - web
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /opt/traefik/traefik.toml:/traefik.toml
      - /opt/traefik/acme.json:/acme.json
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.api.rule = Host(`<MY DOMAIN>`) && (PathPrefix(`/api`) || PathPrefix(`/dashboard`))"
      - "traefik.http.routers.api.service=api@internal"
      - "traefik.http.routers.api.entrypoints=websecure"
      - "traefik.http.routers.api.middlewares=auth"
      - "traefik.http.middlewares.auth.basicauth.users=<ID:PASSWORD>"

  whoami:
    image: containous/whoami
    networks:
       - web
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.whoami.rule=Host(`<MY DOMAIN>`) && PathPrefix(`/whoami`)"
      - "traefik.http.routers.whoami.entrypoints=websecure"
      - "traefik.http.routers.whoami.middlewares=auth"
      - "traefik.http.middlewares.auth.basicauth.users=<ID:PASSWORD>"

networks:
  web:
    external: true

nevermind, I type whitespace between api.rule and Host