猫でもわかるWeb開発・プログラミング

本業エンジニアリングマネージャー。副業Webエンジニア。Web開発のヒントや、副業、日常生活のことを書きます。

When authenticating requests to the Twitter API v2 endpoints, you must use keys and tokens from a Twitter developer App that is attached to a Project.

Twitter の v2 API を oauth 1.0a 認証で叩こうと思ったら、以下のエラーが返ってきました。

{"client_id":"21075140","detail":"When authenticating requests to the Twitter API v2 endpoints, you must use keys and tokens from a Twitter developer App that is attached to a Project. You can create a project via the developer portal.","registration_url":"https://developer.twitter.com/en/docs/projects/overview","title":"Client Forbidden","required_enrollment":"Standard Basic","reason":"client-not-enrolled","type":"https://api.twitter.com/2/problems/client-forbidden"}

detail の所だけ抜き出すとこうです。

When authenticating requests to the Twitter API v2 endpoints, you must use keys and tokens from a Twitter developer App that is attached to a Project. You can create a project via the developer portal.

Twitter API v2 を叩く場合は、 App を Project に所属させる必要があります。

と書いてあります。

developer portal を見ると

f:id:yoshiki_utakata:20210617122500p:plain

この場合、 yoshikyoto という Project があり、その下に「ほげみ」というアプリがあります。

STANDALONE APPS というのがあり、こちらは Project に所属しているアプリです。

たとえば、 sakamoto-test-app は Project に所属していないため、このアプリから発行された token では、 v2 API は叩けません。 v1.1 の API は叩けます。

注意してください。