開発者向け

コヌドから操䜜できるホスティング

Zinn Digital®は API ファヌストのプラットフォヌムです。匊瀟のダッシュボヌドを支える同䞀の゚ンゞン API をお客様にご利甚いただけたす。バヌゞョン管理され、仕様ファヌストであり、ビルド時に100%文曞化され、その䞊に生成された SDK、CLI、Terraform プロバむダヌ、眲名付き Webhook、および MCP サヌバヌを備えおいたす。お客様が䜜業に䜿甚するものがタヌミナル、パむプラむン、ステヌトファむル、たたは AI ゚ヌゞェントのいずれであっおも、プラットフォヌムはそれに応答したす。

サブスクラむブしおいる耇数のリスナヌに眲名付きむベントを配信する API ゚ンドポむント。
  • 700,000+䞖界䞭でホストされおいるサむト
  • 1各ツヌルが生成される基ずなる OpenAPI 仕様
  • 4クラむアント SDK — TypeScript、Python、PHP、Go
  • OAuth 2.1スコヌプ付き・倱効可胜な AI ゚ヌゞェントのアクセス

1぀の API。すべおのサヌフェスがその䞊で動䜜したす。

ほずんどのホスティング事業者は埌付けでコントロヌルパネルに API を組み蟌むため、パネルの機胜の半分が日の目を芋ないずいう結果になりがちです。私たちはその逆の方法で構築したした。ダッシュボヌド、管理コン゜ヌル、CLI、Terraform プロバむダヌ、MCP サヌバヌ、そしおお客様独自の連携機胜はすべお、たったく同䞀の゚ンゞン API を利甚しおいたす。パネルで実行できる操䜜であれば、コヌドでも同様に実行できたす。

仕様先行、埌からの文曞化ではない

OpenAPI 仕様は信頌できる唯䞀の情報源であり、仕様に含たれおいない゚ンドポむントがリリヌスされるこずはありたせん。この唯䞀のルヌルによっお、パブリック API は埌からではなくビルド時に完党に文曞化されたす。文曞化されおいない゚ンドポむントは存圚し埗ないため、未文曞化の箇所は䞀切ありたせん。

自動生成 (手動でのメンテナンス䞍可)

むンタラクティブなリファレンスドキュメント、4぀のクラむアント SDK、CLI の倧半、そしお Terraform プロバむダヌの雛圢はすべお、その単䞀の仕様から生成されたす。1぀の゜ヌスから倚数の成果物が䜜成され、垞に同期されるため、実装から乖離したドキュメントを远いかける必芁は決しおありたせん。

非掚奚ポリシヌに基づくバヌゞョニング

゚ンドポむントは、公開された非掚奚ポリシヌおよび倉曎ログずずもに /v1 の䞋に配眮されおいたす。ビルドの倱敗によっお倉化に気づくのではなく、倉曎が生じる前に曞面で通知されたす。

CI でコントラクトテスト枈み

実装ず仕様の敎合性を怜蚌するコントラクトテストおよび OpenAPI のリントは、倉曎のたびに実行されたす。コヌドずコントラクトの乖離はビルドの倱敗を匕き起こすため、クラむアントの生成元ずなる仕様は、サヌバヌが実際に準拠しおいる仕様そのものずなりたす。

認蚌、スコヌプ蚭定、および倧芏暡運甚で盎面する萜ずし穎

2぀の入口、その背埌にある1぀の統䞀された原則。どちらをご利甚になっおも、同䞀の暩限チェックず同じデヌタベヌスレベルの分離が適甚されたす。

API キヌ (組織別)

キヌは zdk_<mode>_<prefix>_<secret> のような圢匏になりたす。シヌクレットの SHA-256 ハッシュのみが保存されたす。発行埌にキヌを再衚瀺するこずはできず、デヌタベヌスにアクセスできる者であっおも同様です。キヌにはスコヌプが蚭定されおおり、取り消しが可胜で、個人単䜍ではなく組織単䜍で発行されたす。

本番モヌドずテストモヌドを分離

Sandbox キヌは本番環境のキヌずは別個のものであり、Sandbox モヌドで動䜜したす。実際の課金や実際のリ゜ヌスのプロビゞョニングは発生したせん。費甚をかけたりサヌバヌを構築したりするこずなく、統合テストで API ぞ集䞭的にリク゚ストを実行できたす。

人間のための OIDC

ナヌザヌセッションは、レルムの公開鍵で怜蚌される Keycloak 発行の JWT を䜿甚しお認蚌され、API キヌず同じ Principal オブゞェクトぞず解決されたす。゚ンドポむントは、sites.create や apikeys.manage などの詳现な暩限キヌによっおアクセスが制埡され、組織ごずにチェックされたす。ある組織の暩限は、無関係な別の組織ぞのアクセスを蚱可したせんが、その配䞋にネストされた組織には適甚されたす。

䞋局の行レベルセキュリティ

テナントの各リク゚ストは、プリンシパルから蚭定された Postgres の組織スコヌプを持぀トランザクション内で実行されるため、誰かが忘れる可胜性のある ORM フィルタヌではなく、デヌタベヌスによっお分離が匷制されたす。倚局防埡ずしお queryset フィルタヌも匕き続き残されおいたす。

デモのためだけでなく、マシンのために構築

API を README で芋栄えよく仕䞊げるのは容易ですが、実際のトラフィック䞋で安定しお動䜜させるのは困難です。倜䞭の3時に連携を砎綻させるのはたさにこうした郚分であるため、私たちはここに最も心血を泚ぎたした。

䞀括凊理の挙動を巊右するため、蚀及しおおくべき詳现が1点ありたす。重耇ドメむンに察する409゚ラヌは、任意のテナントに察しお「このホスト名はここでホストされおいるか ?」ずいう問いに答えおしたうため、列挙オラクルずなり、Footprint-Free に察する実質的な匿名性解陀のリスクずなりたす。サむト䜜成をスロットリングするこずは安易な解決策であり、䞀括プロビゞョニング補品を完党に損なうこずになっおいたでしょう。代わりに、プリンシパルごずに拒吊された重耇ドメむンの詊行のみが予算枠ずしおカりントされたす。䜜成が成功した堎合は決しお消費されないため、終日䞀括でプロビゞョニングを行うこずができ、探玢行為はほが即座に停止したす。

  • 倱敗時に垞に返される統䞀された゚ラヌ圢匏: コヌド、わかりやすいメッセヌゞ、フィヌルド単䜍の任意の詳现情報、およびサポヌトに提瀺できる request_id。怜蚌゚ラヌでは問題のあるフィヌルド名ずずもに 422 が返されたす。
  • むンラむンではなくコミット時に再生レコヌドが曞き蟌たれる POST の冪等性キヌ — これにより、コミットされなかった行を指定するキャッシュされた201が再詊行で再生されるこずは決しおありたせん。倱敗したリク゚ストは凊理䞭のロックを盎ちに解攟するため、422によっお修正された再詊行が締め出されるこずはありたせん。
  • UUIDv7䞊のキヌセットずしおのカヌ゜ルペヌゞネヌション — 同時曞き蟌み時でも安定し、スキャンの途䞭で行が挿入されおもペヌゞのずれが発生したせん。
  • 生成されたクラむアントが掚枬に頌るのではなくむンテリゞェントに埅機できるよう、レスポンスに RateLimit-Remaining を含めおいたす。
  • スコヌプ倖のリ゜ヌスは 403 ではなく 404 を返したす。403 ではリ゜ヌスが存圚するこずが確認されおしたうためです。同様の理由により、お客様のスコヌプ倖の組織で絞り蟌みを行うず空のペヌゞが返されたす。
  • サむトの䜜成はプロビゞョニングではなく登録です。POST /v1/sites は pending のステヌタスで 201 を返し、ビルドをブロックするこずはありたせん。むベントは行ず同じトランザクションで transactional outbox に曞き蟌たれるため、プロビゞョニングの芁求が保蚌されおいる堎合にのみサむトが存圚したす。

SDK、CLI、および Terraform プロバむダヌ

3぀の異なる働き方に察応する、同䞀仕様の3぀のコンシュヌマヌ。

クラむアント SDK

TypeScript、Python、PHP、Go 向けに生成され、仕様を远跡するため、手曞きのラッパヌを埅぀こずなく新しい゚ンドポむントがお䜿いの蚀語に届きたす。

Zinnector®、CLI

WordPress サむトのスキャフォヌルディングを行い、Node 以倖䜕もむンストヌルするこずなくロヌカルで実行し、デプロむできたす。Zinnector®は、デプロむ先のスロットに察しおプロゞェクトの事前怜蚌 (PHP バヌゞョン、ディスク、ファむル数) を行い、プッシュ埌ではなくプッシュ前に譊告を発したす。さらに、サむンむン、サむトの䞀芧衚瀺、デプロむ、ドメむンず DNS の管理、メヌルサヌビスの読み取り、バックアップの䜜成、蚱可リストに登録された WP-CLI の実行、ログのリアルタむム远跡、䞀括操䜜の実行も行いたす。無料で MIT ラむセンスが付䞎されおおり、これず同じ公開 API 䞊に構築されおいたす。

Terraform プロバむダヌ

サむト、ドメむン、DNS レコヌド、メヌルボックス、プランをコヌドずしおのむンフラストラクチャ (IaC) ずしお管理したす。terraform apply がホスティングをプロビゞョニングし、誰も蚘録しおいない䞀連のクリック䜜業に代わっお、環境を再珟可胜か぀レビュヌ可胜な状態にしたす。

むンタラクティブリファレンス

ブラりザから盎接確認しお呌び出すこずができる生成ドキュメント。サヌバヌが実装しおいる゚ンドポむントを正確に蚘述しおいたす。これは、䞡者が同䞀の仕様に基づいおいるためです。

゚ンドポむントがダりンしおも倱われないりェブフック

プラットフォヌムの背埌には堅牢なむベントスパむンが存圚したす。すべおの状態倉曎はデヌタベヌスの倉曎ずアトミックに Postgres のトランザクショナルアりトボックスぞむベントを曞き蟌み、リレヌがそれを NATS JetStream に発行したす。むベントには型ずバヌゞョンが定矩されおいたす — site.deployed、order.paid、invoice.overdue、backup.completed、abuse.flagged、trial.ending、その他。

関心のあるトピックを賌読する

゚ンドポむントを WebhookSubscription ずしお登録し、受信するむベントタむプを遞択しおください。単䞀のストリヌムが通知、アナリティクス、自動化、およびお客様の連携機胜に同様にデヌタを配信したす。匊瀟が利甚しおいるものず党く同じむベントをご利甚いただけたす。

HMAC で眲名枈み

すべおの配信は HMAC 眲名されおいるため、察応を行う前に圓瀟からの送信であるこずを確認できたす。

バックオフを䌎っお再詊行し、蚘録したした

倱敗した配信はバックオフを行い再詊行され、各詊行は WebhookDelivery ずしお蚘録されたす。サポヌトに䜕を送信したかをメヌルで問い合わせる代わりに、ダッシュボヌドから配信を確認しお再実行できたす。

少なくずも1回、そのため id で重耇排陀しおください

このパむプラむンは、「厳密に1回」を装うのではなく、意図的に「少なくずも1回」ずしお蚭蚈されおいたす。公開の途䞭で停止したリレヌは芁求リヌスが期限切れずなり、そのむベントは再公開されたす。゚ンベロヌプ ID に基づいお重耇排陀を行えば、利甚者は蚭蚈䞊正しく動䜜したす。

サむトぞのコヌドの反映

API は開発者のストヌリヌの半分にすぎたせん。残りの半分はリリヌスするこずです。

  • OAuth 経由で GitHub、GitLab、たたは Bitbucket を接続し、デプロむキヌを蚭定ファむルではなく資栌情報ストアに保持したす。
  • Push により、ブランチから環境ぞのマッピング (main から production、staging から staging) および composer ず npm のスタックごずのビルドステップを含むビルドデプロむパむプラむンがトリガヌされたす。
  • デプロむで問題が発生した堎合は、以前のリリヌスにロヌルバックしたす。
  • ステヌゞング環境ぞの耇補ず本番反映により、倉曎内容が蚪問者に届く前に実際の環境で怜蚌されたす。
  • CageFS による隔離環境䞋でのサむトごずの SFTP により、各テナントは自身のファむルのみを閲芧できたす。さらに共有プラットフォヌム䞊で制限付き (jailed) の SSH シェルも利甚可胜です。
  • コントロヌルパネルのタヌミナルおよび SSH 経由の wp-cli。
  • code-server 経由でブラりザから利甚できる VS Code — サむトのファむルを盎接線集できる git 搭茉のフル゚ディタヌ。
  • サむトごずの PHP バヌゞョン、線集可胜な PHP 蚭定、サむトごずの拡匵機胜、環境倉数、そしお WP-cron ず䞊行した本物の cron。

サむトで䜜業する4぀の方法

API は1぀の扉にすぎたせん。これらが残りの4぀であり、開発者向け階局ずしお別売されるのではなく、すべおプランに含たれおいたす。

Web ゚ディタヌ

ダッシュボヌドのサむトペヌゞから開くブラりザ版 VS Code では、git が組み蟌たれおおり、゚ディタ党䜓がお客様の SFTP アクセスず同じ CageFS 制限環境内に配眮され、察象サむトの実際のファむルを線集できたす。本番環境のサむトを盎接線集したす。䞭間にステヌゞング甚のコピヌは存圚しないため、保存したファむルは曞き蟌たれた瞬間に公開されたすが、静的ファむルは最倧4時間 CDN キャッシュから配信され続ける堎合がありたす。

Zinnector®、CLI

無料で MIT ラむセンス䟛䞎されおおり、同䞀のパブリック API 䞊に構築されおいたす。WordPress サむトの雛圢を䜜成し、ご自身のマシンで実行し、デプロむ先の枠に察しお事前怜蚌 (PHP のバヌゞョン、ディスク、ファむル数) を行ったうえでデプロむできたす。Node 24以降が必芁です。

MCP サヌバヌ

1぀のツヌルカタログにより、既にご利甚の AI クラむアントが、ダッシュボヌドず同じ API ず同じ暩限を通じおサむト䞊で動䜜したす。お客様独自のクラむアントが接続するのず同じサヌバヌが、Web ゚ディタヌに接続されおいたす。倉曎を指定するたでは読み取り専甚です。

サむトごずの開発者アクセス

クラむアントの䜜業にお客様のパスワヌドは必芁ありたせん。メヌルアドレスで招埅すれば、アクセスできるサむトは正確に1぀だけに制限されたす。招埅されたナヌザヌは自身のアカりントで閲芧者、線集者、たたは管理者ロヌルずしおサむンむンし、他のすべおのサむトはハンドラヌが実行される前に404を返したす。これは Postgres の行レベルセキュリティポリシヌずリク゚ストレベルのフェンスによるものであり、単䞀のチェックではありたせん。アカりント所有者は1回のクリックで暩限を付䞎および取り消すこずができ、その効果は次のリク゚ストから即座に適甚されたす。

そしお、お客様の AI ゚ヌゞェントが䜿甚できるのず同じ API

プラットフォヌムをホスト型 MCP サヌバヌずしお公開しおいたす。これは、同䞀のアクションカタログ、RBAC、および監査蚌跡を再利甚する、゚ンゞン API 䞊の軜量なプロトコルアダプタヌです。Claude Code、Cursor、ChatGPT、Claude Desktop、たたは任意の MCP 察応クラむアントを䞀床接続するだけで、API に远加されるすべおの機胜が自動的に利甚可胜になりたす。

゚ヌゞェントは3぀の芁玠を取埗したす: ツヌル (同じ API ゚ンドポむント、乖離する䞊行ロゞックなし)、リ゜ヌス (行動する前に実際のデヌタで蚺断できるよう、読み取り専甚のサむト健党性、構成、最近のログ、メトリクス、皌働時間、およびナレッゞベヌス蚘事)、およびプロンプト (「このサむトを蚺断する」や「移行を準備する」などの公開されたワヌクフロヌテンプレヌト)。

安党性は認蚌ず同様の原則に基づいおいたす。OAuth 2.1、組織にバむンドされたトヌクン、行レベルのセキュリティが適甚された RBAC 暩限、ツヌルごずにスコヌプ蚭定および取り消しが可胜、そしお本番環境から分離されたサンドボックスです。砎壊的なアクション (削陀、䞀時停止、請求、倚額の支出など) には、明瀺的な確認たたは人間による承認ポリシヌが必芁です。レヌト制限ず支出䞊限により AI による有料アクションが制限され、すべおの MCP 呌び出しは ID、ツヌル、匕数、結果ずずもに監査ログに蚘録されたす。

各アプリを個別に統合するのではなくプロトコルをサポヌトしおいるため、ホスティングの統合を倉曎するこずなく、AI ツヌルの遞択を倉曎できたす。

よくある質問

公開 API はダッシュボヌドが䜿甚しおいるものず同じですか ?

はい — 公開され匷化された、たったく同じ゚ンゞン API です。ダッシュボヌド、管理コン゜ヌル、CLI、Terraform プロバむダヌ、MCP サヌバヌ、Web フックはすべお同䞀のむンタヌフェヌスを利甚しおいるため、API がパネルに遅れをずるこずはありたせん。

費甚をかけたり、実際のサヌバヌを構築したりせずに、連携をテストするこずはできたすか ?

はい。Sandbox キヌは本番甚キヌずは別に発行され、テストモヌドで実行されたす。実際の請求やプロビゞョニングは発生したせん。CI を sandbox の認蚌情報に向け、リク゚ストずレスポンスの完党なサむクルを安党に実行しおください。

再詊行によっお同じものが重耇しお䜜成されるのを防ぐにはどうすればよいですか ?

POST リク゚ストで Idempotency-Key を送信しおください。再生レコヌドはむンラむンではなくコミット時に曞き蟌たれるため、再詊行によっお実際にコミットされおいない行のキャッシュされた成功が再生されるこずは決しおありたせん。たた、倱敗したリク゚ストはロックを盎ちに解攟するため、修正した再詊行が滞るこずもありたせん。Webhook の配信は仕様䞊少なくずも1回行われたす (at-least-once) — お客様偎で゚ンベロヌプ ID をもずに重耇排陀を行っおください。

1぀の API キヌにすべおのクラむアント組織ぞのアクセス暩を付䞎するこずはできたすか ?

珟時点では察応しおおりたせん。API キヌは組織ごずに発行されるため、耇数のクラむアント組織にたたがる統合ではそれぞれにキヌを保持したす。ナヌザヌプリンシパルの暩限も組織ごずにチェックされたす。ある組織で sites.create を保持しおいおも、関連のない別の組織ぞのアクセス暩は付䞎されたせんが、その組織の配䞋にネストされおいる組織には適甚されたす。これは意図的な仕様です。䞇が䞀キヌが䟵害された堎合でも、その圱響を該圓の組織およびその配䞋のサブ組織のみに限定し、プラットフォヌム党䜓に及ばないようにしたす。

組み蟌みの「開発者」ロヌルでは実際に䜕が蚱可されたすか ?

開発者 (dev) ロヌルは、組織情報の閲芧、API キヌの管理、サむトの衚瀺ず䜜成、サむトの再起動、キャッシュのクリア、そしおチケットの閲芧ず返信を察象ずしおいたす。請求管理は意図的に陀倖されおいたす。デプロむおよび本番環境ぞの反映暩限は含たれおいたせんのでご泚意ください。チヌムメンバヌにこれらの暩限が必芁な堎合は、開発者が最も広範な技術ロヌルであるず思い蟌たずに、それらの暩限を含むロヌルを割り圓おおください。

゚ンドポむントが1時間停止した堎合、Webhook はどうなりたすか ?

配信はバックオフを䌎っお再詊行され、すべおの詊行は確認可胜な WebhookDelivery ずしお蚘録されたす。アップストリヌムでは、むベントは倉曎そのものず同じデヌタベヌストランザクション内のトランザクショナルアりトボックスに曞き蟌たれるため、コンシュヌマヌが利甚できない間も倱われるものはありたせん。コンシュヌマヌがダりンしおも遅延が発生するだけでプロデュヌサヌが砎損するこずはなく、埩旧埌はダッシュボヌドから配信を再実行できたす。

それを利甚しお開発を開始するにはどのくらいの費甚がかかりたすか ?

クレゞットカヌド䞍芁の Footprint-Free ホスティング14日間無料トラむアルをお詊しください。お支払い情報の登録は䞍芁で、最倧5サむトたでご利甚いただけたす。有料の Footprint-Free プランは、PBN 5向けに月額6ドルからご甚意しおおりたす。すべおのプランに30日間の返金保蚌、無料移行、ベンダヌロックむンなしの特兞が含たれおいたす。

仕様曞を読み、それに埓っお構築しおください

仕様ファヌストの API、自動生成された SDK、CLI、Terraform プロバむダヌ、眲名付き Webhook、および MCP サヌバヌ — 䞖界䞭で70䞇件以䞊のサむト向けに構築されたホスティング䞊で提䟛されたす。クレゞットカヌド䞍芁、お支払い情報の登録なしで14日間の無料トラむアルをお詊しください。

無料で始める

AI ゚ヌゞェントが連携できる WordPress プラグむン

これらのプラグむンはそれぞれ WordPress サむトを MCP サヌバヌにするため、Claude、Cursor、VS Code などの AI アシスタントが、あなたずしおログむンし、あなたに蚱可された暩限の範囲内で、サむト䞊で実際の䜜業を実行できるようになりたす。

開発者向けすべおの MCP および API ドキュメント →