Soporte de The Movie Database

Hi, I just noticed that for lists created with the public field set to false, I am not able to retrieve its details with the same Bearer token I used to create it. The api returns 401. Logging out and in again didn't help either Cheers

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

Jump to last post

Página siguienteÚltima página

bump

Hi, any update on this ? if from the app I create a list with public field set to false, I am not able to access its content. I always get 401. When the public field is set to true I can access its content as always.

the version of the api I am using for lists is v4. POST /auth/access_token is successful and I am getting an access_token

Please advise Cheers

I'll be looking at this tomorrow. I'm finally get caught up with requests from a few months ago wink

Can you give this a try now? I setup a test script and it's working for me after I made a small change.

You can see my v4 list test script here.

Hi @travisbell , the script works. On my app, it still doesn't. I am able to add movies to the list and retrive them correctly on the website.

Please advise Cheers

Take a look at the source code of the script, it's all there so you can see what you're doing differently than I am.

Fair point . I will have another look to my code as soon as I get back home tonight . Thanks

I checked again, and we are calling the same endpoint in the same way. Still, for same reason I am always getting 401 back. The same token is working with the script, but it is not working on https://developers.themoviedb.org/4/list. Could somehow be related ?

Thanks

Post your code. wink

This is the definition of the end point

 @GET("4/list/{list_id}")
 Observable<UserListPaginatedResponse<ListMovieTvShow>> getListDetails(@Path("list_id") int listId,
            @QueryMap Map<String, String> query);

Each request gets

           Request original = chain.request();
            HttpUrl originalHttpUrl = original.url();
            HttpUrl url = originalHttpUrl.newBuilder()
                    .addQueryParameter("api_key", API_KEY)
                    .build();

            Request.Builder requestBuilder = original.newBuilder();
            requestBuilder.addHeader("Content-Type", "application/json");
            if (url.toString().contains("4/")) {
                String bearer = TextUtils.isEmpty(WRITE_ACCESS_TOKEN)
                        ? READ_ACCESS_TOKEN
                        : WRITE_ACCESS_TOKEN;
                requestBuilder
                        .addHeader("Authorization", "Bearer " + bearer);
            }

            requestBuilder.url(url);
            Request request = requestBuilder.build();

the rest client is called Retrofit and it is from square.

@POST("4/list/{list_id}/items")

works correctly.

Curl


curl --request GET   --url 'https://api.themoviedb.org/4/list/19993?sort_by=release_date.asc&api_key=fbf437d289a107e9aaf4eb0b24aabbb7&page=1'   --header 'Authorization: Bearer WRITE_TOKEN'   --header 'content-type: application/json;charset=utf-8'   --data '{}'

returns

{"status_message":"This resource is private.","success":false,"status_code":39}

If you're getting the private message, you're not using a properly signed access token (for that user). My guess would be that you're trying to access it with your account's read token. Especially if you can see that the token is working in my sample script.

I'll check that again. If that was the case, would I still be able to add items to a list?

Thanks

After serveral attemps I found out that the culprit was the api key. Removing it from the url fixed my issue.

Best

Nice, good find! Yes, now that I think about it, the API key (if present) will probably be used as your auth token. Something for me to remember moving forward wink

thanks for the quick feedback @travisbell . How long do you think will it take to have both v3 and v4 working with the new authentication system?

¿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 discusión

n crear nueva discusión
w cambiar el estado de visualización
p cambiar público/privado
c cambiar cerrar/abrir
a abrir actividad
r responder a la discusión
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