ちょいと思い付きで、TikTok関連のアプリを作ってみることにしました。
何をするかというと、自分のアカウントの投稿している動画について、動画の投稿日時、キャプション、再生数、言い値数、コメント数、シェア数、平均視聴時間、視聴完了率、視聴者層などを、一覧化するツールを作りたいんです。
ちょいと調べてはみたものの、あまり簡単にこれらが得られるようなサービスってなさそうだったので。っつかスマホからならある程度見られるけど、PCでこれらのデータを得ようとすると何故か面倒くさいんだよな。自分のアカウントのものくらい簡単に見れるようにしといておくれよ。
全体としての流れを、ChatGPT先生にお尋ねしながらwebアプリ作成についてはほぼ素人な私が、やっていく内容を本ブログに記録として残しておくものです。
全体の流れ
まずは全体の流れの整理をば。
- TikTokの開発者としてTikTok for Developersに登録(Sign up)します。
- アプリを実際に開発します。最初はSandboxで開発するそうです。
- Developer Portal の Manage apps から Create App に変更します。
- TikTokのガイドに沿ってSandbox / Production を切り替えつつ設定します。
- つまり、まずは Sandbox で試し、公開時は Production で審査に提出するってことだそうです。
- 必要なプロダクトを追加します。
- アプリに Login Kit を追加します。
- 今回のアプリでは動画そのものは表示させませんので、Display API(TikTok API) は追加しません。
- Redirect URI(コールバック)登録
- Login Kit の設定画面で Redirect URI を登録します。
- Web/デスクトップとも登録した URI と完全一致していないとエラーになるそうです。Sandbox だと挙動が違うことがあるので、Production で Live にする必要が出る場合もあります(面倒くせぇな)。
- Client Key / Client Secret を取得
- Developer Portal の Manage apps → 該当アプリ から Client key / Client secret を確認します。
- スコープ(権限)の設定・申請
- アプリの設定で
user.info.basic
,video.list
を要求スコープに追加。必要なら審査申請して承認を取るんだそうですが、よくわかんない。あとで調べて追記しよう。
- アプリの設定で
- OAuth 2.0 フロー実装
認可 URL(例)
https://www.tiktok.com/v2/auth/authorize/?client_key=YOUR_CLIENT_KEY&scope=user.info.basic,video.list&response_type=code&redirect_uri=YOUR_REDIRECT_URI&state=RANDOM
リダイレクトでもらった
code
を /oauth/access_token で交換して access_token を取得。トークンは期限があるので、リフレッシュや失効処理も実装。
- この辺もよくわかんない。あとで調べて追記しよう。
- API 呼び出し
ユーザー基本情報(open_id など):
GET https://open.tiktokapis.com/v2/user/info/
(fields
指定、Authorization: Bearer <access_token>
) developers.tiktok.com動画一覧:
POST https://open.tiktokapis.com/v2/video/list/
(fields
に必要な項目を列挙)利用可能フィールド例:
title
(=キャプション相当),duration
,width
,height
,like_count
,comment_count
,share_count
, ほか(APIドキュメントの VideoObject 参照)。ページングは
cursor
で実施。
主にChatGPT先生にお尋ねした内容をだいたいコピペしただけですが、流れとしてはこーゆーことだそーで。簡単に言うと、開発者登録→Sandboxで作って動作確認→審査(作成したアプリに関して)→認証組み込み→審査(認証に関して)→稼働 ってことだと思うんだけどなぁ。
さて、次から順をおってやってみましょうか。
コメント