APIのicloudサービスは、iCloudに保存されている情報に、iOSデバイスバックアップからのバッチ形式でも、他のソースからのリアルタイムおよびicloudでもアクセスするための機能を提供します。APIは、iCloudの最初のリリース以来、iCloudへのアクセスをサポートしています。サンプルのクライアント実装は、開発者が関与する必要なしに、以下に示す複雑さの大部分を処理します。以下のcurlメソッドは、APIの基礎を掘り下げたい、または自分自身のネイティブクライアントを構築したい開発者のために示されています。クライアントがiCloudサービスで実行する必要があるかもしれない4つのコアオペレーションがあります。curlを使用してbash端末表記で示しています。/提出タスク:httpsを。APIからのモックデータを操作するAPIとの統合の開発を支援するために、一連の豊富なデータが入ったモックアカウントが利用可能になります。APIの機能をテストすることができます。john.appleseed@reincubate.comとパスワードjoshuaを使ってアクセスできます。log-inicloudサービスを利用するための最初のステップはログインです。最初のログイン後、アカウントを再認証するために提供された認証トークンを使用することが可能です。これにより、クライアントがアカウントの資格情報を保存する必要がなくなります。認証トークンを使用したアカウントログインの更新を参照してください。log-inパラメータjohn.appleseed@reincubate.comなどのiCloudアカウントIDを表しaccount。アクションに必要なアクションパラメータ。endpointでリストされているオプションのアクションパラメータも指定できます。<TASK_SUBMISSION_ENDPOINT>asapiエンドポイントはJSON形式で返信します。"<TASK_ID_1>"}あなたはaschannelエンドポイント上の正しいstream_endpointに接続されている場合は、結果が一致して来るでしょう<TASK_ID_1>あなたはASAPIエンドポイントから受信しました。true}結果には、ログインタスクが成功した場合にtrueになるsuccessパラメータと、メッセージおよび他のサービスアクションで使用するためのApple認証トークンが含まれます。実行される他のサービス操作の数に関係なく、iCloudアカウントに対して1回だけログインを実行する必要があります。新しいログインは、既存のiCloudセッションが期限切れになったときにのみ実行する必要があります。ログインエラーの応答に関するセクションを参照してください。2FAと2SV2SVまたは2FAで設定されているiCloudアカウントにログインしようとすると、通常のログインは失敗し、以下のようなエラーメッセージが返されます。device_idキーとするデバイスのリストが含まれていdevice_id。これらは、次の認証手順を実行するためにiCloudアカウントによって信頼されているデバイスです。デバイスのエンドユーザーの設定に応じて、コードはさまざまな方法でユーザーに提供されます。2SVは、選択したデバイスへのテキストであるか、またはそのデバイスによって生成された4桁の数字コードを使用します。2FAは、アカウントに関連付けられたすべてのデバイスによって同時に生成される6桁の数字コードを使用します。APIを使用すると、ユーザーは認証トークンを取得できます。これにより、クライアントは毎回デバイスチャレンジで認証する必要なく、一定期間にわたって2FAまたは2SVで保護されたアカウントにアクセスし続けることができます。trustedDevicesのリストには1つ以上のデバイスが含まれます。クライアントは、チャレンジするためにリストされているデバイスを選択する必要があります。trustedDevicesから選択されたデバイスのキーにchallengeセットを設定してperform-2fa-challengeを実行perform-2fa-challengeことによって行われます。devices"]に設定され、チャレンジはそのアカウントに接続されているすべてのiOSデバイスに送信する必要があることを示します。devices"]perform-2fa-challengeを使用perform-2fa-challengeこのメソッドは、2FAの場合はアカウントのすべてのデバイスに、2SVの場合は選択したデバイスにリアルタイムで要求を送信します。devices"asapiはいつもどおりに返信します。"<TASK_ID_X>"}検索エンドポイントは以下のように返信します。submit-2fa-challengeを使用submit-2fa-challengeて2要素コードをAPIに返送する必要があります。2SVログイン用にデバイスに送信されたコードを表します。<TASK_SUBMISSION_ENDPOINT>asapiはいつもどおりに返信します。"<TASK_ID_X>"}検索エンドポイントは通常のログインメッセージで応答します。true}認証トークンを使用したアカウントログインの更新ricloudは、完全なiCloud認証情報を使用する必要なしに、ログインを更新する際に使用するための認証トークンを提供します。トークン化メカニズムのユーザーは、ユーザー資格情報を保持する必要はありません。資格情報を保持する必要がなくなるため、これはすべてのアカウントを操作するための推奨される方法です。トークンは有効期限が切れるまでの数ヶ月間有効です。不規則な使用を含め、他の要因でトークンの有効期限が早まることがあります。トークンが数日間使用されないままの場合は、アップルによって期限切れになる可能性があります。これを行うには、クライアントはログイン中に取得されたauth_tokenフィールドを使用する必要があります。refresh-sessionサービス・アクション・エンドポイントに送信する必要があります。<TASK_SUBMISSION_ENDPOINT>これにより、サービスに対して任意のサービスアクションを実行できます。list-devicesアカウントにログインすると、クライアントはiCloudアカウントに関連付けられているデバイスとデバイスバックアップを列挙できます。これはiCloudサービスに対してlist-devicesアクションを実行することによって行われます。予想されるデバイスがデバイスのリストにない場合は、そのデバイスがiCloudにバックアップされていないことを示しています。list-devicesのみが表示されます。icloudサービスは、iOS以外のデバイスやバックアップされていないデバイスなど、アカウント上のすべてのデバイスを一覧表示するためのモジュールを提供します。詳細については、「全アカウントデバイス」モジュールを参照してください。これは、他のサービス処置と同じ方法で行われます。これは、このアクションに対するcurlリクエストの例です。john.appleseed@reincubate.comなどのアカウントIDを入力できます。<TASK_SUBMISSION_ENDPOINT>asapiエンドポイントはJSON形式で返信します。"<TASK_ID_2>"}あなたの結果はすぐに検索の終点に現れるでしょう。以下はレスポンスの一例です。}}このレスポンスには、指定されたアカウントのiCloudセッションのauth_tokenと、そのアカウントに関連付けられているデバイスの一覧がdevicesセクションに含まれていdevices。すべてのデバイスエントリには次のキーが含まれています。fetch-datafetch-dataアクションは、APIからJSONデータのフィードにアクセスするために使用されます。以下のパラメータが必要です。:リクエストされたフィードモジュールのCSVオプションのパラメータは次のとおりです。:結果が一致する期間ricloudはISO-8601フォーマットの日付を使用します。17:30:00.000000と表現されます。APIが使用するタイムゾーンは常にUTCです。以下はfetch-dataアクションの例です。modules.たとえば、上記のコマンドで<FEED_MODULES>値smsを使用すると、バックアップ内のSMS、MMS、およびiMessagesにアクセスできます。コマンドで<FEED_MODULES>の値sms,whatsapp_messages,snapchat_messagesを使用すると、SMS、MMS、およびiMessages、WhatsAppメッセージ、およびSnapchatメッセージにアクセスでき、すべて同じJSONの結果になります。asapiは次のように答えます。"<TASK_ID_3>"}その直後に、結果が同じtask_id結果エンドポイントに表示されます。]}他のフィードモジュールは、他の形式のコンテンツにアクセスするために使用できる情報を提供します。特定のデバイスに対して<FEED_MODULES>として「photos」を使用したfetch-dataアクションは、次のようになります。<TASK_SUBMISSION_ENDPOINT>asapiに次のように応答させます。"<TASK_ID_4>"}次の結果が適切なエンドポイントに表示されます。}]}クライアントはこの情報をdownload-fileアクションで使用してファイルを取得できます。下記のrawファイルの取得を参照してください。JSONフィードフォーマットJSONフィードは、できるだけ簡単に解析できるように設計されています。フィードは、単一の応答内で要求されたすべてのデータ型を返します。moduleフラグで指定された各フィードモジュールは、返されるトップレベルのJSON辞書に独自のキーを持ちます。download-filedownload-fileのdownload-fileアクションは、ファイルまたはメッセージの添付ファイルをiCloudから直接ダウンロードするために使用できます。必要なパラメータは、ターゲットの<DEVICE_ID>と<FILE_ID>です。file_listおよびphotoモジュールを含むフィードモジュールの中には、ダウンロード可能なファイルまたは添付ファイルへの参照が含まれています。typeなどの追加のメタデータが含まれていfilename。情報抽出プログラムを参照してください。<TASK_SUBMISSION_ENDPOINT>asapiは次のように答えます。"<TASK_ID_5>"}結果が同じtask_idエンドポイントに表示される直後に。aschannel経由で送信された大きなファイルはチャンクされ、使用される前に再組み立てされる必要があります。aschannelのドキュメントにあります。filename.直接ファイルアクセス用のアプリに関連付けられている一般的なハッシュキーには、次のものがあります。MessengerやWeChatなどの一部のメッセンジャーアプリケーションでは、会話に応じてfile_id異なります。ricloudはこれらをオンザフライでデコードします。次の表は、あらゆるアクションで発生する可能性があるエラーコードを示しています。未初期化のアップルサービス未知の失敗ログインタスクが失敗しました。このコードでタスクが失敗した場合、クライアントはサポートチームに連絡してください。アカウントが無効になりましたこれは、アカウント非アクティブ化管理コマンドを使用してアカウントが非アクティブ化されたことを意味します。手動の起動コマンドが送信されない限り、アクセスできません。端末が無効になりましたこれは、デバイス非アクティブ化管理コマンドを使用してデバイスが非アクティブ化されたことを意味します。手動の起動コマンドが送信されない限り、アクセスできません。APIトークンが無効APIへのアクセスに使用されているトークンが無効になっています。サポートチームに連絡してください。内部タイムアウト他のサービスアクションの実行中にAPIセッションが期限切れになると、クライアントはエラーコードpush-api-timeoutを受け取り、再度ログインする必要があります。"push-api-timeout"}iCloudは承認されていませんAppleとのセッションがアクションの前に期限切れになったり無効になったりした場合は、アクションを中止する必要があります。新しいlog-inタスクで再認証することでセッションを再確立する必要があります。refresh-sessionを使用しても、有効期限が切れているAppleとのセッションに関連付けられているトークンが使用されるため、機能しません。場合によっては、セッションが部分的に期限切れになることがあります。fetch-dataはicloud-unauthorised失敗します。この場合、セッションは引き続きアクセス可能なデータに使用できますが、それ以上のデータを取得するにはlog-inタスクを使用して完全に更新する必要があります。サービス停止エラーAPIがサービスを初期化しようとしたが、ユーザーのアカウントで無効にされていないことを示す応答をAppleから受信した場合、この応答が返されます。照会されているデータ・タイプに対応する設定を調べて、それが活動化され初期化されていることを確認してください。log-inおよびsubmit-2fa-challengeアクションによって発生する可能性があるエラーコードを示しています。資格情報が正しくありませんアカウントに指定された資格情報が正しくなかったため、認証ができません。2FAが必要2要素認証(2FA)または2段階認証(2SV)を使用するアカウントにログインするには、いくつか追加の手順が必要です。以下の「2FAと2SV」のセクションを参照してください。無効な2FAコード2FAチャレンジに応答して、無効または不正確な2FAコードが送信されました。2FAレート制限このアカウントに対して最近送信された2FAリクエストが多すぎます:レート制限されています。30分後に再試行してください。アカウントがロックされましたiCloudアカウントはアップルによってロックされています。短期間に別の試みでアカウントにアクセスしようとすると、代わりにaccount-credentials-blockedエラーが返されます。ricloudはすでにaccount-lockedクライアントに通知しています。このメッセージは、サービスがリクエストをAppleに中継していないことを示すために使用されています。利用規約は受け入れられていませんiCloudアカウントは、最新のiCloud利用規約に同意するまで無効になっています。ユーザーは自分のデバイス上で、またはicloud.comにログインしてこれらを受け入れることができます。セッション作成エラーiCloudバックエンドはセッションの初期化中にエラーで応答しましたが、再試行することで問題が解決し成功する可能性があります。セッション破損エラーiCloudバックエンドはセッションの初期化中にエラーで応答しました。再試行しても別の結果にはなりません。このエッジケースを調査できるように、サポートに連絡してください(できればアカウント資格情報を使用して)。どのように我々は助けることができます?サポートチームがお手伝いします!営業時間は月曜日から金曜日の午前9時から午後5時(GMT)です。1営業日以内に、お返事を差し上げます。メールアドレスはこちら。:Reincubateは、「Appleのシステムと製品の深い理解」と「iCloudへの倫理的なアクセスの許可」のためにイギリスで最も高い公式のビジネス名誉を2回受賞しました。私たちのサポートはビジネスで最高です-私たちはあなたのデータを迅速かつ安全に取り戻すために最大限努力します。支援していただいたお客様からの素晴らしい5つ星Trustpilotレビューをご覧ください。無断複写・転載を禁じます。Reincubate®は登録商標です。マルチファクタ認証をお勧めします。ロンドンで愛と建てられた。使用状況を追跡し、あなたの経験を向上させるためにクッキーを使用します。