/check/[{username}/][?format=sse|json]
指定したユーザー名のユーザーが登録した URL のリダイレクト状況を取得します。
ユーザー名を省略した場合はすべてのユーザーの情報を返します。
ユーザー名が存在しない場合は 404 が返ります。
レスポンスは指定された形式で返され、省略した場合は sse
が指定されます。
Server-Sent Events によってイベントストリームとして返されます。
以下にストリームの例を示します。
event: initialize
data: {"count":30}
event: response
data: {"homo":{"screen_name":"@[email protected]","service":"mastodon","url":"https:\/\/homo.chitoku.jp","display_url":"homo.chitoku.jp","icon":"https:\/\/example.com\/icon.png","secure":true},"status":"OK","code":"302 Found","ip":"2001:db8::4545:4545","url":"https:\/\/homo.chitoku.jp","duration":0.45,"error":null}
event
が initialize
の場合は data
は count
を持つ JSON データです。
event
が response
の場合は data
は以下に示す JSON データです。
JSON によって返されます。
[
{
// (object) ホモ
"homo": {
// (string) スクリーンネーム
// Twitter の場合は @ を除くユーザー名
// Mastodon の場合は @[email protected] 表記のユーザー名
"screen_name": "@[email protected]",
// (string) サービス
// twitter または mastodon
"service": "mastodon",
// (string) URL
"url": "https://homo.chitoku.jp",
// (string) 表示用の URL
"display_url": "homo.chitoku.jp",
// (string) アイコンの URL
"icon": "https://example.com/icon.png",
// (bool) HTTPS 接続かどうかを示す値
"secure": true
},
// (string) リダイレクト状況を示す値
// OK: リダイレクト設定済
// WRONG: リダイレクト未設定
// CONTAINS: ページ内に URL を含む
// ERROR: 接続失敗/タイムアウト
"status": "OK",
// (string|null) 直前の接続先の HTTP レスポンスコード
"code": "302 Found",
// (string|null) 直前の接続先の IPv4 または IPv6(サポートしている場合)アドレス
"ip": "2001:db8::4545:4545",
// (string) 直前の接続先の URL
"url": "https://homo.chitoku.jp",
// (number) リダイレクトにかかった時間 (s)
"duration": 0.0,
// (string|null) エラーメッセージ
"error": "SSL: no alternative certificate subject name matches target host name 'homo.chitoku.jp'"
}
]
/list/[{username}/][?format=json|sql]
指定したユーザー名のユーザーが登録した URL の一覧を取得します。
ユーザー名を省略した場合はすべてのユーザーの情報を返します。
ユーザー名が存在しない場合は 404 が返ります。
レスポンスは指定された形式で返され、省略した場合は json
が指定されます。
[
{
// (string) スクリーンネーム
// Twitter の場合は @ を除くユーザー名
// Mastodon の場合は @[email protected] 表記のユーザー名
"screen_name": "",
// (string) サービス
// twitter または mastodon
"service": "",
// (string) URL
"url": "",
// (string) 表示用の URL
"display_url": "",
// (bool) HTTPS 接続かどうかを示す値
"secure": true
}
]
-- 各カラムの値は JSON と同様
insert into "users" ("screen_name", "service", "url") values ('', '', '');
/badge/[{status}/]
指定したステータスを持つホストの数を示すバッジを取得します。
バッジは Shields.io によって生成される画像を返します。
ステータスを省略した場合は登録されているホストの数を返します。