できること — 適用されるルール
APIでは、普段ツールで行っている作成、変更、公開ができます。適用されるルールも同じです:プランの上限、AI バー、公開前にブランドが完成していること、欠番のない請求書番号、そしてアップロードされるすべての画像のチェックです。ツールでできないことは、APIでもできません。
拒否された場合、type には、プログラムで判断に使える固定の英語コード(例:plan_limit_reached、brand_incomplete、ai_quota_exhausted)が入り、detail にはツールでも表示される文が入ります。
{
"error": {
"type": "brand_incomplete",
"message": "The brand needs a name, an address and an email or phone number before anything is published.",
"detail": "Bevor diese Website online geht, muss klar sein, wer dahintersteht. Es fehlt: …"
}
}権限
各領域には、読み取り用と書き込み用の権限がそれぞれあります。Webサイトには sites:read と sites:write、ドメインとDNSレコードには domains:read と dns:write、顧客・請求書・見積書には invoices:read と invoices:write、MediaStudio には media:read と media:write、ブランドには brand:read です。キーを作成する際に「このキーに許可すること」で選択してください。
ウェブサイト
POST /v1/sites は、一文からWebサイト全体を下書きとして構築します。通常 20~60 秒かかり、WebSiteBuilder と同様に AI ご利用枠を消費します。POST /v1/sites/{id}/edit は、指示に従って下書きのページを一つ変更します。POST /v1/sites/{id}/publish を実行するまで、何も公開されません。POST /v1/sites/{id}/unpublish は、何も失うことなくWebサイトを再び非公開にします。
brand_id は、Webサイトにロゴと会社情報が表示されるブランドを示します。ブランドが一つだけの場合、すべてのWebサイトは自動的にそのブランドに従います。その場合、brand_id にはそのブランドの番号が入り、brand_assigned は false になります。複数のブランドがある場合、Webサイトには割り当てたブランドのロゴと会社情報だけが表示されます。割り当てがない場合、brand_id は null です。
curl https://api.kenjtec.com/v1/sites \
-H "Authorization: Bearer kt_api_…" \
-H "Idempotency-Key: cafe-lumen-2026-10" \
-H "Content-Type: application/json" \
-d '{"brief": "Café Lumen in Lissabon: Frühstück, eigene Kaffeebohnen, Tische zum Reservieren."}'AI 機能を呼び出す際は、Idempotency-Key を一緒に送信してください。接続が切れた場合は、同じキーで再試行すると、すでに構築されたWebサイトを受け取れます。二重に支払うことはありません。
DNSレコード
GET /v1/domains は、DNSが KENJTEC にあるドメインを一覧表示します。その配下でレコード(A、AAAA、CNAME、MX、TXT、NS)を作成し、PATCH で置き換え、削除できます。DomainStudio と同じチェックが行われます。
KENJTECがあなたの作品のために設定したレコードには、managed: true が付いています。これらのレコードはAPIでは変更されません。変更は、影響も併せて表示されるDomainStudioで行ってください。
請求書と見積書
POST /v1/customers は顧客を作成し、POST /v1/invoices は下書き(請求書または見積書)を作成します。合計は KENJTEC が計算します。行ごとに数量、単価(セント単位)、税率を送信してください。
POST /v1/invoices/{id}/issue で発行します。書類には欠番なく次の番号が付き、それ以降は確定します。訂正するには取り消す必要があります。POST /v1/invoices/{id}/cancel は、独自の番号を持つ取消請求書を作成します。削除されるものはありません。
メディアをアップロード
アップロードは、MediaStudio と同様に二段階で行います。POST /v1/media/uploads がアドレスとヘッダーを返すので、そのアドレスへ PUT でファイルを送信します。その後、POST /v1/media/{id}/confirm が届いた内容をチェックし、それが済んで初めてファイルがそのアドレスで利用可能になります。
使用できる形式は、JPEG、PNG、WebP、GIF、PDF、MP4、WebMです。コンテンツチェックに通らなかった画像は、422 で拒否されます。
ブランドを読み取る
GET /v1/brands は、BrandStudio のブランド情報(名前、ロゴ、カラー、フォント、会社情報、チャネル)を返します。これにより、独自のプログラムでも KENJTEC の作品と同じデザインで構築できます。