概要
公開サイトとシステムで使用されるコア API です。**この API を利用したいサードパーティの開発者は、Performance Hub サポートに連絡して IP アドレスを許可リストに登録してください。登録しない場合、同じ参照元や IP からのリクエストが多すぎると、レート制限やブロックの対象になります。**
ベース URL
https://uapi.gymsystems.co/
認証
Universal API では、HTTP ヘッダーによる API キー認証を使用します。
各リクエストの X-API-Key ヘッダーに API キーを含めてください。
API キーは慎重に取り扱ってください。API キーを使用するとアカウントにフルアクセスできます。 これらのキーを公開リポジトリ、クライアント側アプリケーション、その他漏洩のおそれがある場所に絶対に公開しないでください。
API は安全な HTTPS 接続のみを受け付けます。 暗号化されていない HTTP リクエストは拒否されます。適切な認証情報がないリクエストも同様に拒否されます。
リクエストの例
curl https://uapi.gymsystems.co/api/v1/clubs \
-H "X-API-Key: YOUR_API_KEY"
一般お問い合わせフォーム
Example Club の Web サイトや、その他の外部向けサービス(トレーニングキャンプなど)からの「一般お問い合わせ」メッセージに使用される API です。
パラメーター
organisationId `string` (任意) 施設データを取得する組織の ID。同じ組織に属する施設のみを返すために使用されます。 leadForwarding `string` (任意) 見込み客管理システム(gymsales、gymleads など)にメールを転送するかどうか。`onlyForwardIfConfigured` に設定すると、見込み客はすべての CRM に転送されますが、施設の主要メールアドレスには転送されません。リクエスト本文
一般お問い合わせの本文
エンドポイント
POST /api/v1/support/contact-submission
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/support/contact-submission \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
無料トライアル
指定した施設の「無料トライアル」ランディングページのリクエストを生成します
リクエスト本文
無料トライアルの本文
エンドポイント
POST /api/v1/leads/free-trial
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/leads/free-trial \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
トレーニングの予約
Example Club の Web サイトの「book a workout」フォームで使用される API です。
リクエスト本文
トレーニング予約の本文
エンドポイント
POST /api/v1/leads/book-a-workout
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/leads/book-a-workout \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
トレーニングキャンプの見込み客の登録
メインの Web サイトから送信された、トレーニングキャンプへの関心を登録するための送信内容を追跡します。この情報は、ユーザーを trainingcamp.com のアプリやサイトに案内するため、また施設がメンバーをトレーニングキャンプに参加させるために使用されます。
リクエスト本文
ページの本文
エンドポイント
POST /api/v1/leads/training-camp
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/leads/training-camp \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
個々の施設、またはすべての施設のメタデータを取得します
この API は、個々の施設のページを表示するために使用する施設のメタデータ、またはデータベース内のすべての施設のメタデータを返します。
パラメーター
organisationId `string` (任意) 施設データを取得する組織の ID。同じ組織に属する施設のみを返すために使用されます。 club `string` (任意) 取得する施設の ID。*NB* すべての施設を 1 つの JSON オブジェクトとして返す場合は、省略できます。エンドポイント
GET /api/v1/club/data
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/club/data \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
個々の施設、またはすべての施設のメタデータを取得します
この API は、個々の施設のページを表示するために使用する施設のメタデータ、またはデータベース内のすべての施設のメタデータを返します。
パラメーター
organisationId `string` (任意) 施設データを取得する組織の ID。同じ組織に属する施設のみを返すために使用されます。 club `string` (任意) 取得する施設の ID。*NB* すべての施設を 1 つの JSON オブジェクトとして返す場合は、省略できます。エンドポイント
GET /api/v2/club/data
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v2/club/data \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
都市と緯度・経度で施設を検索します
緯度、経度、および検索語(地区、町、市など)に基づいて、近くの施設を検索します
パラメーター
geogroup `string` (任意) 施設が所在する都市、州、国を「グループ化」した一覧を返します search `string` (任意) 検索する語句。通常は、町、市、地区、または郵便番号のいずれかです limit `string` (任意) 結果の上限数 origin `string` (任意) 検索の基準となる緯度と経度。同じ名前の町や地区が、複数の施設がある別の国や都市に存在する場合(例:`Southbank Example City` と `Southbank Example City 2`)に検索するうえで非常に重要です organisationId `string` (任意) 施設を絞り込む組織の ID。同じ組織に属する施設のみを返すために使用されます。エンドポイント
GET /api/v1/club/geosearch
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/club/geosearch \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
個々の施設の固定されたレビューを一覧表示します
この API は、施設の固定されたレビューを返します。
パラメーター
club `string` (任意) 取得する施設の IDエンドポイント
GET /api/v2/club/reviews
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v2/club/reviews \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
指定した施設で設定されているアプリの構成を取得します
指定した施設で設定されているアプリの構成を取得します
パラメーター
clubID `string` (任意) 取得する施設の ID appID `string` (任意) 取得するアプリの IDエンドポイント
GET /api/v1/club/apps/config
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/club/apps/config \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
ユーザーの IP に基づく緯度と経度
Maxmind の GeoIP データベースに基づいて、ユーザーの IP の推定緯度と経度を返します。
エンドポイント
GET /api/v1/geo/ip
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/geo/ip \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
住所の文字列を解析し、オブジェクトとして返します。
住所の文字列を、番地、市区町村、州、郵便番号で構成されるオブジェクトに変換します。
リクエスト本文
ページの本文
エンドポイント
POST /api/v1/user/address-parser
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/user/address-parser \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
送信されたメールアドレスを中央データベースで追跡します。
Web サイトのさまざまな部分 _(内部 API、Mailchimp、Hubspot など)_ やサードパーティの API に送信されたメールアドレスを中央の DynamoDB テーブルで追跡し、Example Club エコシステムのメンバーをより詳細に分析し、ターゲティングできるようにします。
リクエスト本文
ページの本文
エンドポイント
POST /api/v1/analytics/track-email
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/analytics/track-email \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
Graylog へのデータ送信
さまざまなフロントエンドサービスから、内部のログ管理システム(Graylog)にデータを送信します。
リクエスト本文
ページの本文
エンドポイント
POST /api/v1/analytics/beacon
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/analytics/beacon \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
Myzone Belt ID が施設に登録されているかどうかを確認します
Myzone Belt ID が指定した施設 ID に関連付けられているかどうかを、true または false で返します。
パラメーター
club `string` (任意) 照会する施設の ID beltid `string` (任意) 検索する Myzone Belt の IDエンドポイント
GET /api/v1/myzone/belt-registered
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/myzone/belt-registered \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
来館時のスワイプ頻度を取得します
特定の期間におけるメンバーの来館時のスワイプの一覧を取得します
パラメーター
start_date `string` (任意) メンバーの来館を絞り込むための期間の開始日 end_date `string` (任意) メンバーの来館を絞り込むための期間の終了日 club `string` (任意) メンバーがスワイプした施設を絞り込むための、メンバーが登録している特定の施設 email `string` (任意) 来館時のスワイプに使用された特定のメールアドレスエンドポイント
GET /api/v1/members/swipes/frequency
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/members/swipes/frequency \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
GymMaster のチェックインイベント用 Webhook
GymMaster のチェックインイベント用 Webhook
エンドポイント
POST /api/v1/webhooks/gymmaster/checkin
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/webhooks/gymmaster/checkin \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
デバイス ID を登録・送信します
ディスプレイスクリーンのコンピューターの UUID、IP、スクリーン ID(デバイス ID)をデータベースに保存し、Performance Hub でデバイスを関連付けられるようにします。
リクエスト本文
このエンドポイントには、IP や UUID など、デバイスに関する情報を含む JSON オブジェクトを POST する必要があります
エンドポイント
POST /api/v1/devices/dashkiosk/register
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/devices/dashkiosk/register \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
デバイスのメタデータを更新します
UUID のデバイスメタデータを更新します。この関数へのデータの POST には認証が不要なため、データに機密情報を含めないでください。
リクエスト本文
このエンドポイントには、OS 情報や Wi-Fi の指標など、デバイスに関する情報を含む JSON オブジェクトを POST する必要があります。
エンドポイント
POST /api/v1/devices/metadata/beacon
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/devices/metadata/beacon \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
デバイスの UUID に基づいて、ディスプレイに関する情報を返します。
デバイスの UUID に基づいてデバイスの設定を取得し、デバイスに関連付けられているラウンドや表示すべきコンテンツなどの情報を返します。
パラメーター
uuid `string` (必須) 設定を取得するデバイスの UUIDエンドポイント
GET /api/v1/devices/displayconfig/{uuid}
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/devices/displayconfig/{uuid} \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
UUID に基づいて、デバイスの設定情報を返します。
デバイスの UUID を使用して複数のテーブル(ディスプレイスクリーン、IoT デバイス、CCTV デバイス)からデバイスの設定を取得し、関連する設定の詳細を JSON で返します。
パラメーター
uuid `string` (必須) 設定を取得するデバイスの UUIDエンドポイント
GET /api/v1/devices/config/{uuid}
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/devices/config/{uuid} \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
BLE ビーコンデバイスを登録します
BLE ビーコンデバイスの情報をデータベースに保存します
リクエスト本文
BLE ビーコンデバイスのデータ
エンドポイント
POST /api/v1/devices/blebeacon/register
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/devices/blebeacon/register \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
ClubID に関連付けられた CCTV デバイスを一覧表示します
ClubID に関連付けられた CCTV デバイスの概要を一覧表示します。この API で返されるのは、デバイスのローカル IP アドレスやオンライン/オフラインの状態など、一般的な概要情報のみです。デバイスの詳細情報を取得するには、Performance Hub API を使用する必要があります。
パラメーター
clubID `string` (必須) 照会する施設の IDエンドポイント
GET /api/v1/devices/cctv/list-devices/{clubID}
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/devices/cctv/list-devices/{clubID} \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
CCTV デバイスを登録します
CCTV デバイスの情報をデータベースに保存します
リクエスト本文
CCTV デバイスのデータ
エンドポイント
POST /api/v1/devices/cctv/register
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/devices/cctv/register \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
AI Edge Processor デバイスを登録します
AI Edge Processor デバイスの情報をデータベースに保存します
リクエスト本文
AI Edge Processor デバイスのデータ
エンドポイント
POST /api/v1/devices/ai-edge-processor/register
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/devices/ai-edge-processor/register \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
CCTV の録画のアップロードを受け付ける署名付き URL を生成します
後処理のために、クライアントが CCTV の録画を S3 に直接アップロードできる署名付きの S3 URL を生成します。
リクエスト本文
デバイスのメタデータ
エンドポイント
POST /api/v1/devices/cctv/generate-upload-token
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/devices/cctv/generate-upload-token \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
マルチパートアップロードが完了したことを S3 に通知します
クライアントによるマルチパートアップロードが完了したことを S3 に通知します
リクエスト本文
デバイスのメタデータ
エンドポイント
POST /api/v1/devices/cctv/complete-upload
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/devices/cctv/complete-upload \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
レスポンス
{}
施設の Sonos デバイスに Sonos コマンドを送信します
施設の Sonos デバイスに Sonos コマンドを送信します
パラメーター
clubID `string` (必須) 照会する施設の IDエンドポイント
POST /api/v1/devices/audio-control/command/{clubID}
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/devices/audio-control/command/{clubID} \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
施設のオーディオコントロール設定を取得します
施設のオーディオコントロール設定を取得します
パラメーター
clubID `string` (必須) 照会する施設の IDエンドポイント
GET /api/v1/devices/audio-control/config/{clubID}
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/devices/audio-control/config/{clubID} \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
一時的なアクセストークンを作成します
一時的なアクセストークンを作成します
エンドポイント
POST /api/v1/temporary-access/token
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/temporary-access/token \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
音楽のライブストリーム項目を取得します
音楽のライブストリーム項目を取得します
エンドポイント
GET /api/v1/streams
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/streams \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
音楽のライブストリーム項目のデータを取得します
音楽のライブストリーム項目のデータを取得します
パラメーター
id `string` (必須) ストリーム項目を識別する一意の IDエンドポイント
GET /api/v1/streams/{id}
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/streams/{id} \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
FAQ 項目を取得します
FAQ 項目を取得します
パラメーター
location `string` (任意) FAQ 項目を表示する場所。例:メイン Web サイト(website_main)。 categories `string` (任意) FAQ 項目のカテゴリー。 status `string` (任意) 項目のステータスエンドポイント
GET /api/v1/faqs
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/faqs \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
FAQ 項目を取得します
FAQ 項目を取得します
パラメーター
category `string` (必須) カテゴリーのフィルターエンドポイント
GET /api/v1/faqs/{category}
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/faqs/{category} \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
プレス項目を取得します
プレス項目を取得します
パラメーター
location `string` (任意) プレス項目を表示する場所。例:メイン Web サイト(website_main)。 status `string` (任意) 項目のステータスエンドポイント
GET /api/v1/press
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/press \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
メールのマッピングを取得します
メールのマッピングを取得します
エンドポイント
GET /api/v1/email-mapping
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/email-mapping \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
カスタムトラッキングコードを取得します
カスタムトラッキングコードを取得します
パラメーター
clubID `string` (必須) 施設 ID または施設の所在地。例:Miltonエンドポイント
GET /api/v1/customtracking/{clubID}
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/customtracking/{clubID} \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
ランディングページの項目を取得します
ランディングページの項目を取得します
パラメーター
region `string` (任意) 施設が属するリージョン。例:AU、NZ、US club `string` (任意) 施設 ID(施設の一意の識別子) slug `string` (任意) ページの一意の識別子となる、URL アドレスの最後の部分エンドポイント
GET /api/v1/landing-pages
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/landing-pages \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
Performance Hub Web サイトのお問い合わせフォーム
Performance Hub の Web サイトからのフォーム送信(デモのリクエスト、営業へのお問い合わせ、早期アクセスの注文)を受け付け、SES で通知メールを送信します。
エンドポイント
POST /api/v1/performancehub/website-contact
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/performancehub/website-contact \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
ドア/ゲートアクセスの OTP をリクエストします
指定した電話番号またはメールアドレスに 1 回限りの確認コードを送信します。識別子の列挙を防ぐため、常に 200 を返します。識別子ごと、および IP ごとにレート制限されます(Redis のスライディングウィンドウ)。
エンドポイント
POST /api/v1/door-gate-access/auth/otp/request
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/door-gate-access/auth/otp/request \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
ドア/ゲートアクセスの OTP を確認し、トークンを発行します
OTP を確認し、すべての施設にわたって紐付けられた人物プロフィールを解決して、有効期間の短い JWT と、ローテーションされる不透明なリフレッシュトークンを返します。
エンドポイント
POST /api/v1/door-gate-access/auth/otp/verify
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/door-gate-access/auth/otp/verify \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
ドア/ゲートアクセスのリフレッシュトークンをローテーションします
エンドポイント
POST /api/v1/door-gate-access/auth/refresh
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/door-gate-access/auth/refresh \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
ドア/ゲートアクセスのリフレッシュトークンを取り消します
エンドポイント
POST /api/v1/door-gate-access/auth/logout
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/door-gate-access/auth/logout \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
現在のドア/ゲートアクセスのセッション
エンドポイント
GET /api/v1/door-gate-access/me
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/door-gate-access/me \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
編集可能なプロフィールのフィールドを更新します
JWT の識別子に一致するすべての ph-door-access-users 行の firstName / lastName を更新します。メールアドレスと電話番号はここでは変更できません。
エンドポイント
PATCH /api/v1/door-gate-access/me
リクエストの例
curl -X PATCH https://uapi.gymsystems.co//api/v1/door-gate-access/me \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
ドア/ゲートアクセスのユーザーの施設を一覧表示します
エンドポイント
GET /api/v1/door-gate-access/me/facilities
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/door-gate-access/me/facilities \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
ユーザーが現在選択している施設を設定します
エンドポイント
POST /api/v1/door-gate-access/me/facility
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/door-gate-access/me/facility \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
施設でユーザーが開けるドアを一覧表示します
パラメーター
facilityId `string` (任意) 施設の識別子(clubID)。エンドポイント
GET /api/v1/door-gate-access/me/doors
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/door-gate-access/me/doors \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
現在のユーザーの最近の解錠試行
エンドポイント
GET /api/v1/door-gate-access/me/access-history
リクエストの例
curl -X GET https://uapi.gymsystems.co//api/v1/door-gate-access/me/access-history \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}
ドア/ゲートアクセスのモバイルアプリからドアを解錠します
MQTT に発行する前に、サーバー側で厳密なチェックを行います。恒久的なルール、追加の Access Time Windows、ドアの明示的なブロック、メンテナンスモード、ジオフェンスについては、サーバーが正式な情報源です。クライアントの状態は UX のためだけに使用されます。
パラメーター
doorId `string` (必須) ドアコントローラーの balenaUUID。エンドポイント
POST /api/v1/door-gate-access/doors/{doorId}/unlock
リクエストの例
curl -X POST https://uapi.gymsystems.co//api/v1/door-gate-access/doors/{doorId}/unlock \
-H "x-api-key: YOUR_API_KEY"
レスポンス
{}