「X」の版間の差分

提供:GNU social JP Wiki
(Function Xプレミアム About)
 
14行目: 14行目:


特に、Nitterは主要なメディアでの報道がないものの、潜在的なユーザーが多いようで、アクセスが多かった。
特に、Nitterは主要なメディアでの報道がないものの、潜在的なユーザーが多いようで、アクセスが多かった。
== Function ==
=== Xプレミアム ===
==== About ====
[https://help.x.com/ja/using-x/x-premium Xプレミアムについて]
Xの有料会員サービス。3種類ある。
{| class="wikitable"
|+
!レベル
!機能
!金額
|-
|ベーシック
|
# ポストの編集
# 長いポスト
# 長い動画のアップロード
# コミュニティーの作成
|月3ドル、年32ドル
月368円、年3916円
|-
|プレミアム
|
# ベーシックの機能
# 青いチェックマーク
# クリエイター収益分配
# クリエイターサブスクリプション
# プレミアムのプレゼント
# 広告数の削減 (おすすめとフォロー中のタイムラインで50%削減)
# 返信の上位表示
# 認証済みアカウント限定返信の制限
# 身分証明書の確認
# Media Studio
# X Proへのアクセス
|月8ドル、年84ドル
月980円、年10280円
|-
|プレミアムプラス
|
# プレミアムの機能
# Grokの利用上限引き上げ
# 広告数の削減
# 返信の上位表示 (最大)
# Radarサーチ
# 記事機能
|
|}
==== 是非 ====
月1000円で本人認証や収益分配に参加できる。特に本人認証の意味が大きい。無名のやる気ないユーザー、業者とあきらかに差別化可能。
金額も1日30円くらい。マッチングアプリと思ったら、安い。コスパは悪くない。交流を深めたり、目立ったり、影響力を増やしたり発揮したい場合、Xで何かしたいなら加入した方がいい。


== API ==
== API ==

2026年5月26日 (火) 16:41時点における最新版

About

旧Twitter。

Link

Service

X/Twitter関係でアクセスの多い役務関係の記事が以下となっている。

特に、Nitterは主要なメディアでの報道がないものの、潜在的なユーザーが多いようで、アクセスが多かった。

Function

Xプレミアム

About

Xプレミアムについて

Xの有料会員サービス。3種類ある。

レベル 機能 金額
ベーシック
  1. ポストの編集
  2. 長いポスト
  3. 長い動画のアップロード
  4. コミュニティーの作成
月3ドル、年32ドル

月368円、年3916円

プレミアム
  1. ベーシックの機能
  2. 青いチェックマーク
  3. クリエイター収益分配
  4. クリエイターサブスクリプション
  5. プレミアムのプレゼント
  6. 広告数の削減 (おすすめとフォロー中のタイムラインで50%削減)
  7. 返信の上位表示
  8. 認証済みアカウント限定返信の制限
  9. 身分証明書の確認
  10. Media Studio
  11. X Proへのアクセス
月8ドル、年84ドル

月980円、年10280円

プレミアムプラス
  1. プレミアムの機能
  2. Grokの利用上限引き上げ
  3. 広告数の削減
  4. 返信の上位表示 (最大)
  5. Radarサーチ
  6. 記事機能

是非

月1000円で本人認証や収益分配に参加できる。特に本人認証の意味が大きい。無名のやる気ないユーザー、業者とあきらかに差別化可能。

金額も1日30円くらい。マッチングアプリと思ったら、安い。コスパは悪くない。交流を深めたり、目立ったり、影響力を増やしたり発揮したい場合、Xで何かしたいなら加入した方がいい。

API

Authentication

Ref: OAuth with the Twitter API | Docs | Twitter Developer Platform.

Twitter APIを使う場合、まず認証が必要になる。OAuth 2.0ベースだが、いくつか方式がある。

  1. Application-only authentication: OAuth2 (bearer token): アプリで認証するケース。
  2. Application-user authentication: OAuth 1a (access token for user context): ユーザーで認証するケース。3-legged-OAuthを使用。

1番目は全体で共有する感じ。単独アプリなどで使う。レート制限などを緩和するために、サーバーアプリで、登録ユーザー別に、認証したいなら後者を使ったほうがいい。

OAuth 1.0a

Ref: OAuth 1.0a | Docs | Twitter Developer Platform.

以下の情報を使う。

  • oauth_consumer_key/secret: アプリの認証情報。アクセストークンの取得に使用。API Key、アプリキーなどとも呼ばれる。
  • oauth_token/secret: アクセストークン。ユーザーが自分のアカウントにAPI経由でのアクセスに使用。実質的なパスワード。

consumer_key/secretは、開発者がX Developer Platformから事前に発行して取得しておく必要がある。oauth_token/secretは実装後にユーザーがアプリ操作で取得する感じになる。

アクセストークンを実際に取得する際のリクエストは以下のようなイメージ。

curl --request POST \
  --url 'https://api.twitter.com/1.1/statuses/update.json?status=Hello%20world' \
  --header 'authorization: OAuth oauth_consumer_key="CONSUMER_API_KEY", oauth_nonce="OAUTH_NONCE", oauth_signature="OAUTH_SIGNATURE", oauth_signature_method="HMAC-SHA1", oauth_timestamp="OAUTH_TIMESTAMP", oauth_token="ACCESS_TOKEN", oauth_version="1.0"' \
API Key and Secret

Ref: API Key and Secret | Docs | Twitter Developer Platform.

Consumer Key/Secretを取得する。開発者アカウントにログインして、アプリのプロジェクトを作成すると表示される。これを控えておく。

User Access Tokens (3-legged OAuth flow)

Ref:

3-legged OAuth flowをに従って、ユーザーにアクセストークンの取得を行える。ここが重要。Twitterでのログインとほぼ同じ手順。

1 POST oauth/request_token

まずコンシューマーキーを使って、アクセストークンを要請する。

  • oauth_callback
  • oauth_consumer_key

応答200で以下のパラメーターがボディーにあるので、これを後続の処理で使用する。

  • oauth_token
  • oauth_token_secret
  • oauth_callback_confirmed

なお、OAuth関係のリクエスト送信時には、

oauth_nonce="OAUTH_NONCE", oauth_signature="OAUTH_SIGNATURE", oauth_signature_method="HMAC-SHA1", oauth_timestamp="OAUTH_TIMESTAMP", oauth_token="ACCESS_TOKEN", oauth_version="1.0"' \

の情報も必要な模様。

2 GET oauth/authorize

1で取得したoauth_tokenを使って、GETする。

https://api.twitter.com/oauth/authorize?oauth_token=NPcudxy0yU5T3tBzho7iCotZ3cnetKwcTIRlX0iwRl0

すると、1でoauth_callbackdで指定したURLにリダイレクトされて、URLクエリーにパラメーターがついてくる。

https://yourCallbackUrl.com?oauth_token=NPcudxy0yU5T3tBzho7iCotZ3cnetKwcTIRlX0iwRl0&oauth_verifier=uw7NjWHT6OJ1MpJOXsHfNxoAhPKpgI8BlYDhxEjIBY

3 POST oauth/access_token

最後にアクセストークンを取得する。

  • POST /oauth/access_token
  • oauth_consumer_key=cChZNFj6T5R0TigYB9yd1w oauth_token=NPcudxy0yU5T3tBzho7iCotZ3cnetKwcTIRlX0iwRl0 oauth_verifier=uw7NjWHT6OJ1MpJOXsHfNxoAhPKpgI8BlYDhxEjIBY

応答本体に以下が返ってくる。

  • oauth_token=7588892-kagSNqWge8gB1WwE3plnFsJHAZVfxWD7Vb57p0b4 oauth_token_secret=PbKfYqSryyeKDWz4ebtY3o5ogNLG11WJuZBc9fQrQo

以後は上記をリクエストで使う。

Authorizing a request

Ref:

X/TwitterはシンプルHTTPでAPI呼び出しがベース。

POST /1.1/statuses/update.json?include_entities=true HTTP/1.1
Accept: */*
Connection: close
User-Agent: OAuth gem v0.4.4
Content-Type: application/x-www-form-urlencoded
Content-Length: 76
Host: api.twitter.com

status=Hello%20Ladies%20%2b%20Gentlemen%2c%20a%20signed%20OAuth%20request%21

ただし、これに加えて以下の情報がないと、無効扱いになる。

  • アプリ。
  • ユーザー。
  • 権限。
  • 改竄。

上記の情報をリクエストに付与するために、OAuth 1.0aプロトコルを採用している。具体的には、上記の情報を付与する、追加のHTTP Authorizationヘッダーがあればよい。具体的には以下となる。

POST /1.1/statuses/update.json?include_entities=true HTTP/1.1
Accept: */*
Connection: close
User-Agent: OAuth gem v0.4.4
Content-Type: application/x-www-form-urlencoded
Authorization:
OAuth oauth_consumer_key="xvz1evFS4wEEPTGEFPHBog",
oauth_nonce="kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg",
oauth_signature="tnnArxj06cWHq44gCs1OSKk%2FjLY%3D",
oauth_signature_method="HMAC-SHA1",
oauth_timestamp="1318622958",
oauth_token="370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb",
oauth_version="1.0"
Content-Length: 76
Host: api.twitter.com

status=Hello%20Ladies%20%2b%20Gentlemen%2c%20a%20signed%20OAuth%20request%21

Authorizationヘッダーは実際には一行。

この署名プロセスが過度な場合、Web Intentsを使ったほうが簡単。

パラメーターは以下の通り。

  • oauth_consumer_key=アプリの情報。開発者ページで生成しておく。
  • oauth_nonce=リクエストごとに固有。再送防止用に使用する。
  • oauth_signature=改竄防止用。他のパラメーターから自動生成。
  • oauth_signature_method=HMAC-SHA1で固定。
  • oauth_timestamp=リクエスト作成日。Unixエポック。
  • oauth_token=アクセストークン。
  • oauth_version=1.0固定。
Creating a signature

Search

前後の投稿の検索

投稿元ユーザーと、日付を指定することで前後検索が可能になる。

from:username until:YYYY-mm-dd

最古検索

Twitterで期間や日付を指定して検索する方法 - 検索コマンドを簡単解説 | マイナビニュース

発端となる最初の投稿を調査したいことがある。

untilの日付をずらしていって絞り込む。

_hh:mm:ss_JSTのような時間まで指定できる。

until:2021-6-1_10:45:00_JST

Other

Account

不審なログインが阻止されました

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">ふえええんなんかtwitterのバグでロックかかってたの、ちょうど24時間で復活したー!

 後学のために、また同じ問題に当たってしまった方のために記録を残しておきます。

・以下のようなメッセージが出て入れなくなっていました。

不審なログインが阻止されました
ご本人であることを確認できなかったため、ご利用のアカウントへのアクセスをブロックしました。これは、ログイン試行の回数が多すぎる、普段とは別の場所や端末からログインが試みられたなど、通常とは異なるログイン操作が見られたためです。しばらくしてからログインしなおしてください。このようなブロックは自動的に解除されます。ログインの問題についてのヘルプは、こちらをご覧ください。

・他の方もそうなるかはわかりませんが、僕はちょうど24時間でロックが解除されました。

 ご参考までに!</p>— 稲垣理一郎(リーチロー)💵🪨🏈 (@reach_ina) <a href="https://twitter.com/reach_ina/status/1680975592521633795?ref_src=twsrc%5Etfw">July 17, 2023</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

サブアカウント作成などで、既存アカウントのログアウト・ログインを複数回繰り返すと、不正アクセス扱いでブロックされる。24時間経過しないと解除されないらしい。