Skip to main content
Articles エンドポイントを使うと、開発者は X 上で下書きの Articles をプログラムから作成して公開できます。Articles は、リッチテキスト書式、埋め込み投稿、リンク、画像をサポートする長文の投稿です。 これらのエンドポイントは、tweet.readtweet.writeusers.read スコープを伴う OAuth 1.0a または OAuth 2.0 PKCE によるユーザー認証が必要です。 現在、API は次の 2 つのエンドポイントをサポートしています。

下書き Article を作成する

開発者は POST https://api.x.com/2/articles/draft エンドポイントを使用して、新しい下書き Article を作成できます。リクエストボディには、記事のタイトル、テキストブロックとエンティティの DraftJS コンテンツステートで表される本文、そして任意で メディアアップロードエンドポイント からアップロードしたカバーメディアを含めます。

Article を公開する

下書きが準備できたら、開発者は POST https://api.x.com/2/articles/{article_id}/publish エンドポイントを使用して公開できます。ここで article_id は下書きを作成したときに返された ID です。

はじめに

これらのエンドポイントを使用するには、ユーザーアクセストークンが必要です。生成方法の詳細については、PKCE を使った OAuth 2.0 認可コードフロー のドキュメントを参照してください。 アクセストークンを取得したら、以下のようにして下書き Article を作成できます。
curl --request POST 'https://api.x.com/2/articles/draft' \
  --header 'Authorization: Bearer XXXXX' \
  --header 'Content-Type: application/json' \
  --data '{
    "title": "My first Article",
    "content_state": {
      "blocks": [
        {
          "text": "Hello from the Articles API!",
          "type": "unstyled"
        }
      ],
      "entities": []
    }
  }'
リクエストが成功すると、次のような JSON レスポンスが返されます。
{
  "data": {
    "id": "1146654567674912769",
    "title": "My first Article"
  }
}
その後、返された Article ID を使って下書きを公開できます。
curl --request POST 'https://api.x.com/2/articles/1146654567674912769/publish' \
  --header 'Authorization: Bearer XXXXX'
リクエストが成功すると、レスポンスには公開された Article に対して作成された投稿の ID が含まれます。
{
  "data": {
    "post_id": "1346889436626259968"
  }
}