テンプレートから文字数内のSNSプロフィールを作成
氏名、職業、最大3件の関心事を入力すると、文字数を推測することなく、読みやすいSNSプロフィールを作成できます。この決定論的なテンプレート機能はUnicode文字を数え、本人を示す表現を維持したまま、指定された上限に必要な場合だけ優先度の低い関心事を除外します。完成した文章、正確な文字数、採用または省略された関心事が明示されるため、個別のプロフィール更新にも、自動化された登録フローにもご利用いただけます。
無料で実行
正確に残すべき情報から入力します
最初に、公開時に表示したい氏名を正確に入力し、その方の仕事を最も分かりやすく表す役割または職業を続けて指定します。この2項目はプロフィールの必須部分です。連続した空白は整理されますが、内容が創作、省略、言い換えされることはありません。資格名、事務所名、専門的な肩書きを自動的に短縮すると意味が変わるおそれがあるため、職業プロフィールでは特に重要な方針です。関心事は優先度の高い順に最大3件まで追加できます。1件目を最優先とし、文字数が足りない場合は3件目から除外されます。分野、コミュニティー、技能、活動などを指定できますが、文章に自然につながる短い表現が適しています。出力は、氏名、職業、必要に応じた関心事の文という簡潔な構成です。各情報の位置が決まっているため、確認しやすく再現性があります。同じ入力からは常に同じプロフィールが得られ、登録時のプロフィール作成や複数システム間の同期にも安心してお使いいただけます。
文字数の上限と調整方法を確認します
掲載先に合う文字数制限を指定してください。短いSNSプロフィールであれば、たとえば150文字を設定できます。この機能は、前後の空白を取り除き、連続する内部の空白を1つに整えた後、Unicodeコードポイントを数えます。まず、入力された関心事をすべてテンプレートに入れます。上限を超えた場合は末尾の関心事を1件外して再確認し、文章が収まるか、関心事がなくなるまで繰り返します。これは創作的な書き換えではなく、規則に基づく調整です。氏名と職業は変えず、句読点も統一したまま、優先度が最も低い項目だけを除外します。応答には採用した関心事と省略した関心事が別々に示されるため、アプリケーションから変更内容を正確に説明できます。氏名と職業だけでも上限を超える場合は入力エラーになります。その際は上限を増やすか、実際に短い職業表現をご指定ください。単語の途中での切断、不自然な頭文字、分かりにくい略語による誤解を防げます。
プロフィールや自動処理で結果を活用します
個別のプロフィールでは、返された文章をコピーし、文字数が掲載先の公表上限内であることをご確認ください。自動処理では、登録フォームの構造化された項目を送信し、完成したプロフィールとともに、採用および省略された関心事の一覧を保存できます。この情報があれば、後から修正する際に、入らなかった項目を確認し、職業を短くする、関心事の順序を変える、上限を増やすといった判断が容易です。ネットワーク通信、乱数、言語モデルによる変動がないため、プレビュー画面にも適しています。ブラウザー内のプレビューとAPIの結果には、同じ決定論的な規則が適用されます。検証は厳格で、氏名や職業の欠落、空の関心事、3件を超える一覧、対応範囲外の上限は推測せずに拒否します。APIリクエスト1件の料金は$0.002で、ブラウザー版はローカルで実行できます。他サービスからプロフィール情報を取得することも、お客様に代わってSNSアカウントを公開または変更することもありません。
活用例
登録時にプロフィールをプレビューします
入力フォームの項目を確認可能なプロフィールに変換し、採用された関心事を明確に表示します。
チーム名簿の紹介文を統一します
個人情報を創作したり言い換えたりせず、すべてのプロフィールに一貫した形式を適用します。
掲載先の文字数制限に合わせます
氏名と職業を維持し、文章が収まるまで優先度の低い関心事を除外します。
よくある質問
料金はいくらですか?
APIリクエスト1件につき$0.002です。ブラウザー版はローカルで無料実行できます。
関心事はどのように省略されますか?
指定された一覧の末尾から1件ずつ、プロフィールが上限に収まるまで除外されます。
氏名や職業は短縮されますか?
いいえ。氏名と職業は維持され、この2項目だけで上限を超える場合はエラーになります。
文字数はどのように数えますか?
整形後のプロフィールについて、空白と句読点を含むUnicodeコードポイントを数えます。
プロフィール情報を生成または公開しますか?
いいえ。ご提供の事実を整形して文章を返すだけで、人物の調査やSNSアカウントへのアクセスは行いません。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/write/bio-template-fill \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Maya Chen","role":"Product designer"}'const res = await fetch("https://api.kit.forhosting.com/write/bio-template-fill", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"name": "Maya Chen",
"role": "Product designer"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/write/bio-template-fill",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"name": "Maya Chen",
"role": "Product designer"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/write/bio-template-fill", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"name":"Maya Chen","role":"Product designer"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"name":"Maya Chen","role":"Product designer"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/write/bio-template-fill", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"name": "Maya Chen",
"role": "Product designer"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "write.bio_template_fill",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_chars | 500 |
max_interests | 3 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |