Soporte de The Movie Database

{ status_code: 7, status_message: "Invalid API key: You must be granted a valid key.", success: false }

Getting this but I have doubled checked my api key and copied it and pasted but although getting the same message..

URL using for my fetch() functions

const API_BASE_URL = "https://api.themoviedb.org/3";

const API_KEY = import.meta.VITE_TMDB_API_KEY;

const API_OPTIONS = {
  method: 'GET',
  headers: {
    Accept: "application/json",
    Authorization: `Bearer ${API_KEY}`
  }
}

function App() {
  const [searchTerm, setSearchTerm] = useState('');
  const [errorMessage, setErrorMessage] = useState(null);

  const fetchMovies = async () => {
    try {
      const endpoint = `${API_BASE_URL}/discover/movie?sort_by=popularity.desc`;
      const response = await fetch(endpoint, API_OPTIONS);

      if (!response.ok) {
        throw new Error("Sorry");
      } else {
        const data = await response.json();
        if (data.response == 'false') {
          setErrorMessage(data.error || 'failed to fetch movies.');
        }
        console.log(data);
      }
    } catch (error) {
      console.error(`Error fetching movies : ${error}`);
      setErrorMessage(`Error fetching movies, please try again later.`);
    }
  }

  useEffect(() => {
    fetchMovies();
  }, []);

2 respuestas (en la página 1 de 1)

Jump to last post

Can you post here a real example of what the API Request sent to the TMDb servers is?
Maybe in the console.
Only then can we find out where the error is in the Request.

Problems with API Request

In order for someone to help you with API Request questions,
it is critical that you post here the API Request you are sending to the TMDb server.
Remember to replace your Key with MY_KEY , YOUR_KEY , THE_KEY , or something like that.

Not the programming code/script you used to build the API Request.
But the API Request that is sent to the TMDb server.
Or the API Request you would like to send.

@yadavkumarshivam,

I'm going to assume based on your variable names, that you're passing the API key in as a Bearer token. That is not supported. If you want to use header authentication, you need to pass your access token.

The docs outline this use case. You can read that here.

¿No encuentras una película o serie? Inicia sesión para crearla:

Global

s centrar la barra de búsqueda
p abrir menú de perfil
esc cierra una ventana abierta
? abrir la ventana de atajos del teclado

En las páginas multimedia

b retrocede (o a padre cuando sea aplicable)
e ir a la página de edición

En las páginas de temporada de televisión

(flecha derecha) ir a la temporada siguiente
(flecha izquierda) ir a la temporada anterior

En las páginas de episodio de televisión

(flecha derecha) ir al episodio siguiente
(flecha izquierda) ir al episodio anterior

En todas las páginas de imágenes

a abrir la ventana de añadir imagen

En todas las páginas de edición

t abrir la sección de traducción
ctrl+ s enviar formulario

En las páginas de debate

n crear nuevo debate
w cambiar el estado de visualización
p cambiar público/privado
c cambiar cerrar/abrir
a abrir actividad
r responder al debate
l ir a la última respuesta
ctrl+ enter enviar tu mensaje
(flecha derecha) página siguiente
(flecha izquierda) página anterior

Configuraciones

¿Quieres puntuar o añadir este elemento a una lista?

Iniciar sesión