プロトコル
非同期処理
APIはすべてのポーリングに非同期処理を利用します。これには、iCloudなどの外部サービスとのやり取りも含まれます。これらは、必要な処理量によっては完了までに数秒から数分かかることがあるためです。
多くの標準的なリソースの相互作用は、APIリファレンスドキュメントで概説されている非同期の「副作用」を引き起こす可能性があります。これらは通常、妥当性検査またはその他のユーティリティー機能を実行するためのものです。
APIの非同期基盤は、API内からトリガーされる定期的なポーリングのためのインターフェースを単純化するのにも役立ちます。つまり、イベントと結果の取得は、APIと直接やり取りする場合でも、または定期的な投票を通じてやり取りする場合でも同じです。
応答待ち
APIは、ポーリングの必要性を最小限に抑え、エンドユーザーの合計応答時間を短縮するために、長期間有効な要求を介して非同期タスクの完了を待機することをサポートします。この機能を有効にするには、 Ricloud-Await
HTTPヘッダーを希望するタイムアウト値でリクエストに追加します。現在の最大タイムアウト値は10秒です。
Ricloud-Await: 3
この機能は、次のエンドポイントでサポートされています。
- セッション
POST /sessions
作成しPOST /sessions
- テストストレージ
POST /configs/storage/{storage_config ID}/test
- テストwebhook
POST /configs/webhook/{webhook_config ID}/test
暗号化された公開
APIによって公開されたすべての結果は、組織全体の公開RSAキーを使用して暗号化できます。
エンドユーザートライアル
エンドユーザーの試用モジュールがクライアントで使用できます。これは、潜在的なエンドユーザーにデータの「ティーザー」を返すために使用できます。このモジュールは、最後の5つのメッセージのフィード、最後の場所、およびその他の使用可能なメッセージの要約カウントを提供します。
このメカニズムを使用すると、完全なキーをエンドユーザーの試用版に使用するよりも費用対効果が高くなります。
分析とレポート
ricloudのiCloudサービスは、分析とレポートに関する多くの追加機能を提供します。
企業向けに2つのモジュールが用意されています。1日にiOSデバイスで使用されたアプリを表示する基本的なアプリの使い方と、セッション数、セッションの期間などの詳細情報を提供する高度なアプリの使い方です。これらのモジュールに関するより多くの情報は要求あり次第利用可能です。
法医学と回復
メッセージ(SMS、MMS、iMessage)やiCloudフォトライブラリモジュールなど、以下に示すように、フォレンジックの削除および回復機能は、いくつかのモジュールで利用できます。
再インキュベートには、WhatsAppやWeChatなど、他のモジュールへの要求に応じて適用できるカスタムフォレンジックツールがいくつかあります。
属性タイプ
日付時刻
日時属性は、ISO8601仕様に従ってフォーマットされます。 APIは、UTCタイムゾーン、つまり"2018-08-22T10:25:05Z"
すべての日時属性を返します。
多くのリソースリストエンドポイントでは、 date_created
などのdatetime属性でのフィルタリングが可能date_created
。より便利な演算子を使用してフィルタリングするには、日時フィルター値の前にlt_
、 lte_
、 gt_
、またはgte_
いずれかをgte_
ます。
タイムデルタ
特に指定しない限り、timedeltaタイプの属性は常に秒単位です。
ページネーション
APIは、カーソルベースのページ区切りを利用します。すべてのリスト型呼び出しは追加のパラメーターを取ります。
- 返されるアイテムの最大数を指定するための
limit
。デフォルト値は10、最大値は1000です。 -
after_id
を指定して、リストを開始するIDを指定します。 - リストを停止するリソースIDを指定する
before_id
。
リスト応答には、 data
属性で返されたリソースが含まれています。また、ヘルパー属性has_more
も含まれています。これは、制限のために含まれていなかったより多くのリソースをリストすることができるかどうかを示します。
レート制限
APIへのリクエストは、標準のレート制限または機内リクエスト制限のいずれかによって制限できます。前者は大規模なAPIリソースの悪用を最小限に抑えるために使用され、後者は個々のリソースインスタンスを保護するために使用されます。
レート制限の例:単一の組織からのAPIへのリクエスト数は、1時間あたり10,000リクエストに制限されています。これにより、悪意のあるまたは偶発的なトラフィックの急増から保護することができます。
実行中の制限の例 :別のタスクが既に処理中の場合、ソースリソースのインスタンスはそれに対して作成されたタスクを持つことができません。これにより、セッションの整合性が維持され、外部サービスへのトラフィックが最小限に抑えられます。
バージョニング
APIのメジャーリリースは主にセマンティックバージョニングスキーム(つまりv1 、 v2 、 v3 )に従いますが、APIのv3バージョン内で行われた変更はカレンダーバージョニングスキーム(すなわち2018-11-06 ) に従ってバージョン管理されます。バージョンは組織に合わせてグローバルに設定することも、 Ricloud-Version
ヘッダーを介して要求ごとに指定することもできます。
削除可能なリソース
ほとんどのリソースは削除不可能です。つまり、所有している組織によってのみ非アクティブ化されるか、API管理者によってブロックされるだけです。