次の方法で共有


printDocument: createUploadSession

名前空間: microsoft.graph

重要

Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。

アプリが印刷ドキュメントにリンクされたバイナリ ファイルの範囲を反復的にアップロードできるようにするアップロード セッションを作成します。

応答の一部として、このアクションは、後続のシーケンシャル PUT クエリで使用できるアップロード URL を返します。 各 PUT 操作の要求ヘッダーを使用して、アップロードする正確なバイト範囲を指定できます。 これにより、アップロード中にネットワーク接続が切断された場合に備えて、転送を再開できます。

: アプリケーションのアクセス許可を使用したアップロード セッションの作成は、要求するアプリが作成したトリガーによって開始された、関連する印刷ジョブにprocessing状態の printTask がある場合にのみ成功します。 タスク トリガーを登録する方法の詳細については、「 プル印刷をサポートするためのユニバーサル印刷の拡張」を参照してください。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。

アクセス許可の種類 最小特権アクセス許可 より高い特権のアクセス許可
委任 (職場または学校のアカウント) PrintJob.Create PrintJob.ReadWrite、PrintJob.ReadWrite.All
委任 (個人用 Microsoft アカウント) サポートされていません。 サポートされていません。
アプリケーション PrintJob.ReadWrite.All 注意事項なし。

HTTP 要求

プリンターを使用してアップロード セッションを作成するには:

POST /print/printers/{id}/jobs/{id}/documents/{id}/createUploadSession

printerShare を使用してアップロード セッションを作成するには (委任されたアクセス許可でのみサポートされます)。

POST /print/shares/{id}/jobs/{id}/documents/{id}/createUploadSession

要求ヘッダー

名前 説明
Authorization ベアラー {token}。 必須です。 認証と認可についての詳細をご覧ください。
Content-type application/json. 必須です。

要求本文

要求本文で、次のパラメーターを含む JSON オブジェクトを指定します。

パラメーター 説明
properties printDocumentUploadProperties アップロードするバイナリ ファイルのプロパティを表します。

要求本文の contentType プロパティの値は、printer/printerShare でサポートされている必要があります。 サポートされているコンテンツ タイプを取得するには、 printer/printerShare の printerCapabilities を取得します。

OXPS から PDF への変換では、application/pdfをサポートする printer/printerShare の contentType としてapplication/oxpsを渡す必要があります。 ユニバーサル印刷では、次のすべての条件が満たされると、OXPS が PDF に変換されます。

  1. プリンター/プリンター共有では、printerCapabilities でのapplication/pdfがサポートされます。
  2. プリンター/プリンター共有では、printerCapabilities でのapplication/oxpsはサポートされていません。
  3. 要求本文の contentType プロパティの値は application/oxps

応答

成功した場合、このメソッドは応答コード 200 OK と、応答本文に新しい uploadSession オブジェクトを返します。

: uploadSession 応答オブジェクトの一部として返される uploadUrl プロパティは、後続のPUTクエリでファイルのバイト範囲をアップロードするための不透明な URL です。 これには、expirationDateTime によって期限切れになる後続のPUT クエリに適した認証トークンが含まれています。 この URL は変更しないでください。

次の例は、指定した printDocument への後続のファイル アップロード操作で使用できるアップロード セッションを作成する方法を示しています。

要求

POST https://graph.microsoft.com/beta/print/shares/1c879027-5120-4aaf-954a-ebfd509a3bcc/jobs/46207/documents/9001bcd9-e36a-4f51-bfc6-140c3ad7f9f7/createUploadSession
Content-type: application/json

{
  "properties": {
    "documentName": "TestFile.pdf",
    "contentType": "application/pdf", 
    "size": 4533322
  }
}

応答

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#microsoft.graph.uploadSession",
    "uploadUrl": "https://print.print.microsoft.com/uploadSessions/5400be13-5a4e-4c20-be70-90c85bfe5d6e?tempauthtoken={token}",
    "expirationDateTime": "2020-10-25T02:19:38.1694207Z",
    "nextExpectedRanges": [
        "0-4533321"
    ]
}