0
1

忘れる度検索してるので覚書。

動作環境:Python 3.12.3

Webhook送信先(エンドポイント)

mastodon

マストドンベースインスタンスはこれ(Fedibird等)

https://[インスタンスURL]/api/v1/statuses

例:
https://mstdn.jp/api/v1/statuses

Misskey

https://[インスタンスURL]/api/notes/create

例:
https://misskey.io/api/notes/create

公開範囲 (visibility)

公開 ホーム(未収載) フォロワー DM(※)
mastodon public unlisted private direct
Misskey public home followers specified

※DMの場合送信先ユーザの指定が必要
(一応指定しなくても自分にだけ見える投稿は可能)

記述は下記参照

mastodon

@user_id_1,@user_id_2…:送信先ID

payload = {
    "status": "@user_id_1 @user_id_2 投稿テキスト",  # メンション付きの投稿テキスト
    "visibility": "direct"  # DMの場合は "direct" を指定
}

statususer_id,textを変数にしたもの。

user_id_1 = "user_id_1"
user_id_2 = "user_id_2"
text = "ここに投稿テキストを入力"

payload = {
    "status": f"@{user_id_1} @{user_id_2} {text}",  # メンション付きの投稿テキスト
    "visibility": "direct"  # DMの場合は "direct" を指定
}

Misskey

user_id_1,user_id_2…:送信先ID

payload = {
    "text": "投稿テキスト",
    "visibility": "specified",
    "visibleUserIds": ["user_id_1", "user_id_2"] #DMの場合ユーザを指定
}

リクエストヘッダー

HTTPリクエストヘッダー。
mastodon、Misskey共通

fediverse_access_token:各インスタンスで取得したAPIアクセストークン

fediverse_headers  = {
    "Content-Type": "application/json",
    "Authorization": f"Bearer {fediverse_access_token}"
}

おわり

mastodonとMisskeyで投稿パラメータが違うところでよく引っかかる。
(mastodonはstatus、Misskeyはtext
そのうちBlueskyのAPIもやってみたいね

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1