> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API による請求書の処理

> FlexiCapture for Invoices Cloud API を使用して、初めての請求書を処理します。認証ヘッダー を作成し、ファイルをアップロードし、タスクを開始して、結果をダウンロードします。

このガイドでは、ABBYY FlexiCapture for Invoices Cloud API を使用して初めての請求書を処理する方法を説明します。認証ヘッダーを作成し、ファイルをアップロードし、タスクを開始して、結果をダウンロードします。

すべてのエンドポイントで、ベース URL `https://api-{location-id}.flexicapture.com` を使用します。ここで、`{location-id}` は[サポートされているロケーション](/ja/flexi-capture/cloud/cloud-f-cfor-invoices-api#icaas-supported-countries)を表し、`us` (USA とカナダ) 、`au` (オーストラリア) 、または `eu` (欧州連合加盟国) のいずれかです。

<Steps>
  <Step title="アカウントを作成">
    API を利用するには、アカウントが必要です。まだ作成していない場合は、[ABBYY FlexiCapture Cloud web portal](https://flexicapture.com) で作成してください。
  </Step>

  <Step title="Authorization ヘッダーを取得する">
    API へのすべてのリクエストには、application ID とトークンから作成した authorization header を含める必要があります。手順については、[Authentication](/ja/flexi-capture/cloud/cloud-f-cfor-invoices-api-auth)を参照してください。以下の例では、サンプルヘッダー `Basic QWxhZGRpbjpPcGVuU2VzYW1l` を使用しています。
  </Step>

  <Step title="ファイルをアップロード">
    [ファイルをサーバーにアップロードします](/ja/flexi-capture/cloud/cloud-f-cfor-invoices-api-upload-file)。レスポンスでファイルの識別子とトークンを取得できます。これらは、このファイルに関する以降のすべてのリクエストで使用されます。

    ```bash theme={null}
    curl -X POST \
      --header "Accept: application/json" \
      --header "Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l" \
      --form "file=@/path/to/file/Letter.tif" \
      "https://api-{location-id}.flexicapture.com/v2/file"
    ```

    <Warning>
      REST API 経由でファイルをアップロードする場合、document assembly のプロジェクト設定は適用されません。各ファイルが個別のドキュメントとして作成されます。
    </Warning>
  </Step>

  <Step title="タスクを開始する">
    ドキュメントがアップロードされたら、タスクを開始してデータ抽出を始めます。このリクエストでは複数のファイルを指定できます。リクエストには、次のオプションのパラメーターを含めることができます: 請求書の[地域](/ja/flexi-capture/cloud/cloud-f-cfor-invoices-languages)、検証タイプ、結果の[エクスポート形式](/ja/flexi-capture/cloud/cloud-f-cfor-invoices-formats)。レスポンスにはタスク識別子が含まれます。

    ```bash theme={null}
    curl -X POST \
      --header "Content-Type: application/json" \
      --header "Accept: application/json" \
      --header "Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l" \
      -d '{
        "properties": {
          "region": "US",
          "export_format": "Xls",
          "verification_type": "NoVerification"
        },
        "files": [
          {
            "id": "5ea16ff21b777315586713bf",
            "token": "34FB84AA68684F0F2BF496045224EB6C436F596B"
          }
        ]
      }' \
      "https://api-{location-id}.flexicapture.com/v2/task/capture/invoices"
    ```
  </Step>

  <Step title="タスクのステータスを取得する">
    タスクの処理には多少時間がかかるため、抽出されたデータをすぐに利用することはできません。タスクの開始時に受け取った識別子を使用して、[タスクのステータスを確認](/ja/flexi-capture/cloud/cloud-f-cfor-invoices-api-get-task)できます。ステータスが`Done`に変わるまでお待ちください。

    ```bash theme={null}
    curl -X GET \
      --header "Accept: application/json" \
      --header "Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l" \
      "https://api-{location-id}.flexicapture.com/v2/task/5ea18adc220e0d1c58177c59"
    ```
  </Step>

  <Step title="結果をダウンロードする">
    タスクのステータスが`Done`に変わったら、識別子とトークンを使用して出力ファイルを[ダウンロード](/ja/flexi-capture/cloud/cloud-f-cfor-invoices-api-download-file)できます。タスク要求内の各入力ファイルに対して、このリクエストを繰り返してください。

    ```bash theme={null}
    curl -X GET \
      --header "Accept: application/json" \
      --header "Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l" \
      "https://api-{location-id}.flexicapture.com/v2/file/5ea21f6b7a9ae6193831d671/D188E5EFC0042A83529899AC1E1D94400A25DCF6"
    ```
  </Step>

  <Step title="タスクを削除">
    出力データをダウンロードした後、すべての入力ファイルと出力ファイルを削除するには、[タスクを削除](/ja/flexi-capture/cloud/cloud-f-cfor-invoices-api-delete-task)します。

    ```bash theme={null}
    curl -X DELETE \
      --header "Accept: application/json" \
      --header "Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l" \
      "https://api-{location-id}.flexicapture.com/v2/task/5ea18adc220e0d1c58177c59"
    ```
  </Step>
</Steps>
