【タイッツー】最初期版APIの使い方
公開 2023/07/22 00:31
最終更新 2024/06/04 14:51
現時点では、認証不要の参照系APIのみの公開となります。
認証APIについては最初期版APIに追って追加される可能性がありますが、正式版APIまで追加されない可能性もあります。
(すみません、ちょっとまだ未定です…💦)

■最初期版APIの利用方法 #

PIXIV FANBOXの「サポータープラスプラス」プラン以上にてご支援いただいている方向けに、最初期版APIの早期アクセスをご提供しております。
APIキーを発行いたしますので、以下の記事のフォームからご入力をお願いいたします。
https://hoku.fanbox.cc/posts/6384440

API利用を希望で入力したにも関わらずPIXIV上のDMで連絡が来ていない場合、以下ご確認をお願いいたします。
①「サポータープラス」プランではないか?(API早期アクセスは「サポータープラスプラス」以上となります。)
②PIXIVのユーザーID入力をちゃんと数値で入れたか?(怪しい場合は、再度フォームにご入力をお願いいたします。)
③「①」も「②」も問題ないのにDMが来ていない場合は、お手数ですが私(hoku)宛にPIXIVのDMをいただけますでしょうか。

■最初期版APIの使用上のルール #

★1秒間に何十回もアクセスするような高頻度のアクセスは不可。
★人を不快にさせるような利用方法は不可。(例えば、特定の人を探して晒し上げて笑いものにするためのツール!とかNG。そんなの作る人いないとは思いますが、一応…。)
★その他一般常識として問題のない範囲でご利用ください。
★データをキャッシュしてそのまま表示に使用する場合、キャッシュ期間は最大5分までとしてください。(タイーツ等を解析してその集計結果等を公開するサイトであれば、期限に制限はありません。例えば、1日毎のつぶやかれたワードランキング、等。)
★本バージョンのAPIは、正式版APIが出た後に廃止となる予定です。ご了承ください。
★いわば正式版までのつなぎ版で、I/Fが結構イケていない感じもありますが、一旦これでご利用ください🙇
★広告の扱いについて、後述のルールを守ってください。


■タイーツ一覧内に含まれる広告について #

現実的に持続可能なAPIの運用方法を模索しておりまして、現時点においては以下のルールとさせていただきます。今後変更となる可能性は十分にあります。
(パブリックタイムライン取得、タイーツ一覧取得、のAPIにおいて、取得したタイーツ一覧内に広告タイーツが含まれます。その広告タイーツに対する扱いのルールです。)

★取得したタイーツ一覧を画面上に表示して使用する用途の場合、いかなる場合でも広告タイーツを除外してはいけません。
★広告タイーツの表示を目立たなくさせる、目立たせすぎる、といった表示も不可。[AD]や[広告]や[プロモーション]といった言葉を添えて他のタイーツと共に必ず表示させること。
★広告タイーツ内のURLは必ずリンクさせ、ワンタップでサイトに遷移するように実装すること。
★例外として、タイーツの情報をもとにデータ集計を行ったり統計を取るなどして、その結果のみを表示に用いる場合においては、広告タイーツを除外して処理を行って良いものとする。(例えば、1日毎のつぶやかれたワードランキング、等。)(このパターンの場合、将来的に利用量に応じて有料プランとなる可能性があります。少なくとも現時点では追加課金無しで大丈夫です。)
★広告タイーツか否かの判定は、タイーツ情報内に「is_ad」という項目が存在し、それがtrueのものが広告タイーツである。
★フォロー/フォロワー情報の取得など、「ユーザー情報」の取得時には広告が入りませんので気にしなくて大丈夫です。


■パブリックタイムライン取得 #

リクエスト #

# 初回
curl https://publicapi.taittsuu.com/publicapi/v0.1/publictimelines \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key"

# 続きを取得
curl https://publicapi.taittsuu.com/publicapi/v0.1/publictimelines \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key" \
-G -d next=48
レスポンスにnextが入っている場合、その値をリクエストに含めることで続きを取得できます。

レスポンス #

{
    "data": [
        {
            "id": 1455806,
            "user_id": 1,
            "content": "タイーツ本文タイーツ本文タイーツ本文タイーツ本文",
            "post_type": 10,
            "is_defensive": 0,
            "is_sensitive": 0,
            "scope": 10,
            "exist_media": 0,
            "exist_url": 0,
            "exist_hashtag": 0,
            "target_rt_post_id": null,
            "created_at": "2023-01-01T00:00:00.000000Z",
            "user_name": "ほく",
            "user_screenname": "hoku",
            "is_verified": 1,
            "is_locked": 0,
            "like_count": 0,
            "rt_count": 0,
            "is_liked": false,
            "is_retaiitsued": false,
            "is_ignored": false,
            "is_ad":false,
            "ad_id":1
        },
        {
            …
        }
    ],
    "next": 1234
}
現時点で気にすべき値は「id(タイーツID)」「content(タイーツ本文)」「created_at(投稿日時)」「user_name(ユーザー名)」「user_screenname(ユーザーID)」「is_verified(認証状態)」「like_count(いいね数)」「rt_count(RT数)」「is_ad(広告か否か)」のみ。
ほかは全て固定値または最初期版では気にしなくて良い値。
特に、「user_id(ユーザー内部ID)」は使うっぽい雰囲気だが、使わない。


■タイーツ一覧取得 #

リクエスト #

# 初回
curl https://publicapi.taittsuu.com/publicapi/v0.1/users/{ユーザーID}/taiitsus \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key"

# 続きを取得
curl https://publicapi.taittsuu.com/publicapi/v0.1/users/{ユーザーID}/taiitsus \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key" \
-G -d next=75
URLに{ユーザーID}を含めてください。(ユーザー内部IDではないです)
レスポンスにnextが入っている場合、その値をリクエストに含めることで続きを取得できます。

レスポンス #

パブリックタイムライン取得と同じフォーマット。


■タイーツ取得 #

リクエスト #

curl https://publicapi.taittsuu.com/publicapi/v0.1/taiitsus/{タイーツID} \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key"
URLに{タイーツID}を含めてください。

レスポンス #

パブリックタイムライン取得と同じフォーマット。
ただし、1件の配列である。
また、[next]項目は含まれない。


■いいねしたユーザー一覧取得 #

リクエスト #

# 初回
curl https://publicapi.taittsuu.com/publicapi/v0.1/taiitsus/{タイーツID}/liking_users \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key"

# 続きを取得
curl https://publicapi.taittsuu.com/publicapi/v0.1/taiitsus/{タイーツID}/liking_users \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key" \
-G -d next=33
URLに{タイーツID}を含めてください。
レスポンスにnextが入っている場合、その値をリクエストに含めることで続きを取得できます。

レスポンス #

{
    "data": [
        {
            "post_like_id": 1,
            "id": 1,
            "name": "ほく",
            "is_verified": 1,
            "is_locked": 0,
            "screen_name": "hoku",
            "started_at": "2023-07-20 19:15:46",
            "bio": "こんちは"
        },
        {
            …
        }
    ],
    "next": 1234
}
現時点で気にすべき値は「name(ユーザー名)」「is_verified(認証状態)」「is_locked(鍵アカ状態)」「screen_name(ユーザーID)」「started_at(タイッツー開始日時)」「bio(自己紹介)」のみ。
項目名がパブリックタイムライン取得のときと違いますが、目をつぶっていただいて…🙇


■ユーザー取得 #

リクエスト #

curl https://publicapi.taittsuu.com/publicapi/v0.1/users/{ユーザーID} \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key"
URLに{ユーザーID}を含めてください。

レスポンス #

{
    "data": {
        "id": 1,
        "screen_name": "hoku",
        "name": "ほく",
        "bio": "こんちは",
        "image_path": null,
        "url": "http://hoku.in/",
        "started_at": "2023-07-01T00:00:00.000000Z",
        "is_locked": 0,
        "is_verified": 1
    }
}
配列ではなくオブジェクトで返ります。


■フォロー取得 #

リクエスト #

# 初回
curl https://publicapi.taittsuu.com/publicapi/v0.1/users/{ユーザーID}/following \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key"

# 続きを取得
curl https://publicapi.taittsuu.com/publicapi/v0.1/users/{ユーザーID}/following \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key" \
-G -d next=24
URLに{ユーザーID}を含めてください。
レスポンスにnextが入っている場合、その値をリクエストに含めることで続きを取得できます。

レスポンス #

{
    "data": [
        {
            "id": 1,
            "name": "ほく",
            "is_verified": 1,
            "is_locked": 0,
            "screen_name": "hoku",
            "started_at": "2023-07-01T00:00:00.000000Z",
            "bio": "こんちは",
            "user_follow_id": 1234
        },
        {
            …
        }
    ],
    "next": 1234
}
現時点で「id(ユーザー内部名)」「user_follow_id(フォロー内部ID)」は気にしなくてOKな値。


■フォロワー取得 #

リクエスト #

# 初回
curl https://publicapi.taittsuu.com/publicapi/v0.1/users/{ユーザーID}/followers \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key"

# 続きを取得
curl https://publicapi.taittsuu.com/publicapi/v0.1/users/{ユーザーID}/followers \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key" \
-G -d next=24
URLに{ユーザーID}を含めてください。
レスポンスにnextが入っている場合、その値をリクエストに含めることで続きを取得できます。

レスポンス #

フォロー取得と同じ。


■ユーザー検索 #

リクエスト #

# 初回
curl https://publicapi.taittsuu.com/publicapi/v0.1/search/users \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key" \
-G -d query=開発用

# 続きを取得
curl https://publicapi.taittsuu.com/publicapi/v0.1/search/users \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_api_key" \
-G -d "query=開発用&next=12"
queryに検索ワードを入れてください。(複数ワードには対応していません)
レスポンスにnextが入っている場合、その値をリクエストに含めることで続きを取得できます。

レスポンス #

{
    "data": [
        {
            "id": 2,
            "name": "ほく(開発用)",
            "is_verified": 1,
            "screen_name": "hoku_dev",
            "started_at": "2023-07-01T00:00:00.000000Z",
            "bio": "開発用のアカウント。",
            "is_locked": 1
        },
        {
            …
        }
    ],
    "next": 1234
}
現時点で「id(ユーザー内部名)」は気にしなくてOKな値。


■メディアファイルについて #

動画の場合はメディアのURLが「~~~/playlist.m3u8」になっています。
この場合、「.thumb.jpg」をくっつけたURLがサムネイルになります。
→例:「~~~/playlist.m3u8.thumb.jpg」

メディアのURLが「~~~/~~~_animation.gif」はアニメーションGIFで、これも「.thumb.jpg」をくっつけるとサムネになります。
→例:「~~~/~~~_animation.gif.thumb.jpg」
(※「_animation」がつかない.gifの場合、これはアニメじゃない普通のGIFなのでサムネもありません。)
hoku@個人開発
プロフィールページ
シンプルブログの運営者です。
色々作ってます。タイッツーも運営しています。
https://taittsuu.com/
よろしくお願いします〜🙇✨
最近の記事
Nginxのアクセスログからページ毎のアクセス数をざっくり調べる方法
Nginxのアクセスログの内容から、ページ毎の行数をカウントして出力する。 具体的なコマンド # 以下で、ページ毎のアクセス…
2025/01/23 11:01
クソアプリアドベントカレンダー2024の技術ネタ:サロゲートペア・ハフマン符号化・頻出ひらがな
クソアプリアドベントカレンダー2024作品【真名を示す暗黒ツール『‡虚空叡智の変換機‡』】の技術ネタです。 https://simblo.ne…
2024/12/05 05:59
真名を告げる顕現装置『‡虚空叡智の変換機‡』
※「クソアプリアドベントカレンダー2024(カレンダー1)」5日目の記事です。 【クソアプリアドベントカレンダー2024】 http…
2024/12/05 05:59
git push でエラーになった際の対応
結論 # # 現在の設定を確認 git config --show-origin --get-all http.postBuffer # 2Mに変更 git config --global http.po…
2024/08/30 17:01
【シンプルブログ】プロフィールでURLを設定できるようにしました!
今までは、Twitter連携している場合に自分のTwitterアカウントへのリンクアイコンを表示させる機能がありましたが、それを廃止…
2024/01/16 13:33
【タイッツー】リプライ機能の仕様について(2023/12/13時点)
リプライ機能は相手に対して直接声が届く機能となりますので、インターネットは公共の場であることを意識しつつ、いつも以上に…
2023/12/13 01:22
気管支炎
やっと風邪が治まってきた。 風邪をひくと咳が残ってしまいがちな体質なんだけど、どうやら今回は気管支炎とのことで色々処…
2023/12/10 15:43
究極で完全なSNS『Nekodake』
※「クソアプリアドベントカレンダー2023(カレンダー2)」4日目の記事です。 【クソアプリアドベントカレンダー2023】 http…
2023/12/04 07:31
AlmaLinux 9.3 で Wifi を使えるようにする手順
はじめに # AlmaLinux 9.3 のisoファイルを落としてきて、自宅のPCにインストールした場合のお話。(なので、VPSとかでAlmaLin…
2023/11/27 22:45
【タイッツー】政治と宗教に関わる投稿について
タイッツーではユーザーの投稿について利用規約で、 宗教的行為、宗教団体、政治的活動、政治団体の宣伝又は広告に関する情…
2023/09/21 10:44
【★タイッツーに限らず★】SNS等に投稿する内容と著作権について
先日タイーツした著作権等のお話について、 https://taittsuu.com/users/hoku/status/7172808 https://taittsuu.com/users/ho…
2023/09/13 14:06
ミルクボーイ風「好きなSNS」
★「どうもデニールブラザーズですー」 ★◎「お願いしますー ありがとうございますー」 ★「あっ いま チンジャオロースーの…
2023/08/31 23:42
【タイッツー】メンション機能の仕様(2023/8/23時点)
【3行でポイントだけまとめると】 ・メンションはフォロワー相手じゃないと通知が行かない! ・メンションありタイーツはPTL…
2023/08/23 00:36
シンプルブログ、タイッツーにシェアするボタンを追加した!
記事本文の上下にあるシェアボタンに、タイッツーへのシェアボタンも追加!!!! これで簡単にタイッツーにもシェアできる✨
2023/08/02 16:26
【タイッツー】最初期版APIの使い方
現時点では、認証不要の参照系APIのみの公開となります。 認証APIについては最初期版APIに追って追加される可能性がありますが…
2023/07/22 00:31
自分でも予想していなかった流れに
今までずっとtoC向けサービスを作ってたから、今年はtoB向けしか作らないぞ!!!!! と思ってたんだけどね。 …気づいたら…
2023/07/14 07:34
自サービス開発に明け暮れる日々
ここのところ、自身のプロダクト開発に明け暮れている。 去年まではtoC向けの無料サービスばかり作っていたが、そろそろしっ…
2023/05/16 11:49
一発系ネタサービスのバズらせ方について書いてみる
(大層なタイトルですが、私のネタサービスの作り方を公開しているだけのクソしょーもない内容を、少し真面目に書いた記事です…
2023/04/18 18:26
シンプルブログのTwitter認証をOAuth2.0に変更!
シンプルブログをTwitterと連携する機能で、今までは「OAuth 1.0a」というものを使っていた。 ただ、昨今のTwitterAPIの絡みで…
2023/04/11 12:34
シンプルブログの見出し機能をパワーアップ!!
独自タグの見出し機能をパワーアップしたのでご紹介いたします✨ 独自タグの見出し機能をパワーアップしました! # 「見出…
2023/04/06 03:17
もっと見る
タグ
シンプルブログ(15)
タイッツー(8)
個人開発(8)
新機能(7)
アドベントカレンダー(6)
Webサービス(5)
クソアプリ(5)
独自タグ(4)
SNS(3)
AI(2)
API(2)
MacBook(2)
OGP(2)
Twitter(2)
ChatGPT(1)
Chrome(1)
git(1)
Google(1)
Linux(1)
Nginx(1)
TwitterAPI(1)
Webツール(1)
あるある(1)
エンジニア(1)
ガスストーブ(1)
クイズ(1)
グランドオープン(1)
コロナワクチン(1)
サービス開発(1)
サイゼリヤ(1)
もっと見る
ブログランキング
ブログランキング・にほんブログ村へ