Skip to content
このページは AI の支援により作成・翻訳されました。誤りがあれば、改善にご協力ください。 GitHub で編集

API概要

Fenfaはビルドのアップロード、製品の管理、分析のクエリのためのREST APIを公開しています。CI/CDアップロードから管理パネル操作まで、すべてのプログラム的なやり取りはこのAPIを通じて行われます。

ベースURL

すべてのAPIエンドポイントはFenfaサーバーURLに対する相対パスです:

https://your-domain.com

認証

保護されたエンドポイントにはX-Auth-Tokenヘッダーが必要です。Fenfaは2つのトークンスコープを使用します:

スコープ可能な操作ヘッダー
uploadビルドのアップロードX-Auth-Token: YOUR_UPLOAD_TOKEN
admin完全な管理アクセス(アップロードを含む)X-Auth-Token: YOUR_ADMIN_TOKEN

トークンはconfig.jsonまたは環境変数で設定します。設定を参照してください。

WARNING

有効なトークンなしに保護されたエンドポイントへのリクエストは401 Unauthorizedレスポンスを受け取ります。

レスポンス形式

すべてのJSONレスポンスは統一された構造に従います:

成功:

json
{
  "ok": true,
  "data": { ... }
}

エラー:

json
{
  "ok": false,
  "error": {
    "code": "BAD_REQUEST",
    "message": "variant_id is required"
  }
}

エラーコード

コードHTTPステータス説明
BAD_REQUEST400無効なリクエストパラメータ
UNAUTHORIZED401認証トークンが不足または無効
FORBIDDEN403トークンに必要なスコープがない
NOT_FOUND404リソースが見つからない
INTERNAL_ERROR500サーバーエラー

エンドポイントサマリー

公開エンドポイント(認証不要)

メソッドパス説明
GET/products/:slug製品ダウンロードページ(HTML)
GET/d/:releaseID直接ファイルダウンロード
GET/ios/:releaseID/manifest.plistiOS OTAマニフェスト
GET/udid/profile.mobileconfig?variant=:idUDIDバインディングプロファイル
POST/udid/callbackUDIDコールバック(iOSから)
GET/udid/status?variant=:idUDIDバインディングステータス
GET/healthzヘルスチェック

アップロードエンドポイント(アップロードトークン)

メソッドパス説明
POST/uploadビルドファイルをアップロード

管理エンドポイント(管理トークン)

メソッドパス説明
POST/admin/api/smart-upload自動検出付きスマートアップロード
GET/admin/api/products製品一覧
POST/admin/api/products製品を作成
GET/admin/api/products/:idバリアント付きの製品を取得
PUT/admin/api/products/:id製品を更新
DELETE/admin/api/products/:id製品を削除
POST/admin/api/products/:id/variantsバリアントを作成
PUT/admin/api/variants/:idバリアントを更新
DELETE/admin/api/variants/:idバリアントを削除
GET/admin/api/variants/:id/statsバリアント統計
DELETE/admin/api/releases/:idリリースを削除
PUT/admin/api/apps/:id/publishアプリを公開
PUT/admin/api/apps/:id/unpublishアプリを非公開
GET/admin/api/eventsイベントをクエリ
GET/admin/api/ios_devicesiOSデバイス一覧
POST/admin/api/devices/:id/register-appleAppleにデバイスを登録
POST/admin/api/devices/register-appleデバイスをバッチ登録
GET/admin/api/settings設定を取得
PUT/admin/api/settings設定を更新
GET/admin/api/upload-configアップロード設定を取得
GET/admin/api/apple/statusApple APIステータス
GET/admin/api/apple/devicesApple登録デバイス

エクスポートエンドポイント(管理トークン)

メソッドパス説明
GET/admin/exports/releases.csvリリースをエクスポート
GET/admin/exports/events.csvイベントをエクスポート
GET/admin/exports/ios_devices.csviOSデバイスをエクスポート

IDフォーマット

すべてのリソースIDはプレフィックス + ランダム文字列形式を使用します:

プレフィックスリソース
prd_製品
var_バリアント
rel_リリース
app_アプリ(レガシー)

詳細リファレンス

  • アップロードAPI -- フィールドリファレンスと例を含むアップロードエンドポイント
  • 管理API -- 完全な管理エンドポイントドキュメント

Released under the Apache-2.0 License.