2019年10月から継続

公開API、そしてなぜ7年かかったのか

プラットフォームリビジョン5.4では、6月にトークン認証APIがリリースされました。これが何をするのか、意図的に何を拒否するのか、そしてなぜこれほど待ったのか。

APIは7月2日にベータを離れました。これは6月にプラットフォームリビジョン5.4で出荷され、2月から招待ベータとして実行され、400強のアカウントが参加し、4月以降は形状が変わっていません。バージョン管理され、文書化され、パネルと同じ可用性コミットメントの対象です。

遅いと呼ぶのは寛大でしょう。その理由は謎ではありません。サーバーを構築するのに3分半かかるプロビジョニングシステムの上に置かれたインターフェースは、スピナーをポーリングするためのインターフェースだったでしょう。私たちは最初にキューを書き直しました、2025年に、その順序は幸運ではなく意図的でした。

それができること

グループできること注記
インスタンス作成、サイズ変更、再構築、スナップショット、リストア、破棄サイズ変更アップはライブ、サイズ変更ダウンは再起動が1回必要
イメージOSカタログの一覧表示、カスタムISOのURLからの登録カスタムISOインストールはまだ手動で、まだ遅い
ネットワーキングIPv4の追加、逆DNSの編集、IPv6 /48のリクエスト委任され、プロキシされることはない
フィルタリング攻撃イベントの読み取り、DDoS Proでのレイヤー7ルールのプッシュ基本フィルタリングには設定するものはない
請求残高の読み取り、請求書の一覧表示、入金請求書のオープンカードフィールドはない、カードがないから
イベントイベントログのポーリングまたはwebhookの登録アカウントごとのシークレットで署名

すべてはHTTPS上のJSONであり、パネルが表示できるすべてのオブジェクトはAPIが返すことができるオブジェクトです。ウェブインターフェースのために予約された機能の層はありません。これは私たちにコストがかかる約束です:パネルは現在、あなたが使うのと同じ公開エンドポイントを消費しているので、壊れたAPIは壊れたパネルであり、私たちはすぐに気づきます。

認証

トークンはパネルで作成され、スコープされ、一度だけ表示されます。パスワード認証なし、セッションクッキーなし、私たちが収集しないようにかなりの努力をしてきたものを信頼しなければならないアイデンティティプロバイダーへのリダイレクトもありません。

トークンは、読み取り、書き込み、または請求のスコープ、単一サイトへのオプションの制限、インスタンスのリストへのオプションの制限、および設定する有効期限を持ちます。デフォルトは60日です。トークンは個別に失効させることができ、失効はエッジで2秒以内に有効になります。これは、ビルドサーバーがその上に何があったかを知らない誰かによって再構築されたときに、聞こえる以上に重要です。

ここでのアカウントはメールアドレスとパスワードハッシュであるため、取得する顧客オブジェクトはありません。APIには名前フィールド、住所フィールド、会社フィールド、税フィールドがありません。これは、サインアップフォームがそうであるのとまったく同じ理由です。

レート制限、冪等性、エラー

1分あたり600回の読み取りと60回の書き込みで、アカウントごとではなくトークンごとにカウントされるため、1つのノイジーなスクリプトが他の自動化を飢えさせることはありません。制限は、成功した応答を含むすべての応答のヘッダーで返されます。

すべての書き込みは冪等性キーを受け入れます。同じキーで作成を再試行すると、元のインスタンスが返され、それに沿って請求される2番目のインスタンスは返されません。これはベータテスターが最も感謝した単一の機能であり、業界の他の部分がプロビジョニング中のタイムアウトをどのように処理するかについて何かを語っています。

エラーは文書化されたマシンコード、人間が読める1文、およびリクエスト識別子です。識別子をチケットに貼り付けると、サポートはあなたが見たのと同じリクエストを見ることができ、再現するように頼むことはありません。

意図的にやらないこと

  • 法定通貨は絶対にありません。 請求エンドポイントは残高を読み取り、入金請求書を開きます。決済はOxaPayと選択したチェーンに留まり、支払いページで説明されているとおりです。
  • サブアカウントやロールはありません。 絶えずリクエストされます。構築されていません。明白な実装は誰が誰のために働くかの構造を保持することを意味し、私たちは有効期限が切れるスコープ付きトークンを出荷し、組織図を自分たちに留めておくことを好むからです。
  • オートスケーリングはありません。 インスタンスは実際のシリコン上の専用コアであり、私たちが呼び出せるプールではありません。自分のスケジュールで作成および破棄できます。私たちはその下に弾力性のある抽象化が存在するふりをするつもりはありません。
  • SDKマトリックスはありません。 1つのリファレンスクライアントと、コントラクトとしてのプレーンHTTP。6つの半メンテナンスの言語バインディングは、ドキュメントよりも悪く熟成するでしょう。

壊してほしいこと

ベータでは修正する価値のある9つのバグが見つかりました。そのうち3つは興味深い方法で私たちのものであり、6つはドキュメントが嘘をついていました。10番目を見つけた場合、レート制限の悪用はテスト中は問題なく期待されており、サポートはスクリーンショットよりもリクエスト識別子を望んでいます。

リファレンスはドキュメントにあります。リビジョン5.4のチェンジログには、2月から4月の間に形状が変わった7つのエンドポイントがリストされており、これらがバージョン1内で発生する唯一の破壊的変更です。

準備はできている

都市を選べ。サイズを選べ。コインで支払え。

あなたが誰かに関するフォームも、承認する人間を待つ必要も、確認のための電話もありません。請求が完了すれば、認証情報があなたの受信トレイに届きます。