Служба підтримки The Movie Database

Hi, I'm trying to create a list via "Try it" feature on the API reference page. However, I'm failing with 401 saying: 'Sorry, your couldn't be authenticated with those credentials' pointing at my access token.

My fetch request:

const url = 'https://api.themoviedb.org/3/list?session_id=%7B%20%20%20%22success%22%3A%20true%2C%20%20%20%22session_id%22%3A%20%2230036ee8426fc0d347056e7be55fb77565598114%22%20%7D';
const options = {
  method: 'POST',
  headers: {
    accept: 'application/json',
    'content-type': 'application/json',
    Authorization: 'Bearer {MY_ACCESS_TOKEN}'
  },
  body: JSON.stringify({name: 'SUH first list', description: 'This is my first list', language: 'en'})
};

fetch(url, options)
  .then(res => res.json())
  .then(json => console.log(json))
  .catch(err => console.error(err));

Response:

{
  "success": false,
  "status_code": 3,
  "status_message": "Authentication failed: You do not have permissions to access the service."
}

I'm new to the Authentication API. I've created the request_token, authorized it and created a session_id successfully. However, when I try to create a list on a test basis, I fail as mentioned above.

Kindly let me know what I'm doing wrong.

Thanks!

4 відповідей (на сторінці 1 із 1)

Jump to last post

It's because you're authenticating with a bearer token. That is taking preference over your query params.

If you want to keep using a bearer token, you will need to create an access token that has been authorized by your user. This is outlined here.

If you don't care about bearer authentication, switch to using api_key as a query param, and delete the Authorization header.

I didn't quite get it. Firstly, I forgot to explicitly mention that I was using V3, although it was evident from the fetch request I shared.

So if I wanna keep using the bearer token, I'll have to switch to using V4 way of authorization via an access token?

The bearer token is already technically “v4” authentication. That’s why you’re having an issue.

So yes, you have to continue to use v4 for user authentication, or switch to query params for authentication (which is technically “v3”).

For anyone interested in the outcome of this thread:

If someone wants to keep using the bearer token in V3, he should create an access_token using this V4 workflow.

Then, use this access_token to get a session_id in V3 as mentioned here.

Не вдалося знайти фільм або серіал? Увійдіть, щоб додати.

Загальні

s відкрити панель пошуку
p відкрити меню профілю
esc закрити відкрите вікно
? відкрити вікно з гарячими клавішами

На сторінках медіа

b повернутися назад
e перейти до сторінки редагування

На сторінках сезонів шоу

(стрілка вправо) перейти до наступного сезону
(стрілка вліво) перейти до попереднього сезону

На сторінках серій шоу

(стрілка вправо) перейти до наступної серії
(стрілка вліво) перейти до попередньої серії

На всіх сторінках зображень

a відкрити вікно додавання зображення

На всіх сторінках редагування

t відкрити перемикач перекладів
ctrl+ s підтвердити форму

На сторінках обговорення

n створити нове обговорення
w змінити статус стеження
p перемикач публічно/приватно
c перемикач відкрито/закрито
a відкрити активність
r відповісти на обговорення
l перейти до останньої відповіді
ctrl+ enter підтвердити повідомлення
(стрілка вправо) наступна сторінка
(стрілка вліво) попередня сторінка

Налаштування

Хочете оцінити чи додати до списку?

Увійти

Немає облікового запису?

Приєднайтеся до спільноти