

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# AnalyzeExpense
<a name="API_AnalyzeExpense"></a>

 `AnalyzeExpense`同步分析输入文档以了解文本之间的财务相关关系。

信息将返回为`ExpenseDocuments`并分开如下。
+  `LineItemGroups`-包含的数据集`LineItems`它们存储有关文本行的信息，例如购买的物品及收据上的价格。
+  `SummaryFields`-收据包含所有其他信息，例如标题信息或供应商名称。

## 请求语法
<a name="API_AnalyzeExpense_RequestSyntax"></a>

```
{
   "Document": { 
      "Bytes": blob,
      "S3Object": { 
         "Bucket": "string",
         "Name": "string",
         "Version": "string"
      }
   }
}
```

## 请求参数
<a name="API_AnalyzeExpense_RequestParameters"></a>

请求接受采用 JSON 格式的以下数据。

 ** [Document](#API_AnalyzeExpense_RequestSyntax) **   <a name="Textract-AnalyzeExpense-request-Document"></a>
输入文档，可以是字节或作为 S3 对象。  
您可以使用`Bytes`财产。例如，您应使用`Bytes`属性来传递从本地文件系统加载的文档。使用`Bytes`属性必须采用 base64 编码。如果您使用 AWS 开发工具包调用 Amazon Textract API 操作，则代码可能不需要对文档文件字节进行编码。  
您可以使用存储在 S3 存储桶中的图像传递给 Amazon Textract API 操作。`S3Object`财产。存储在 S3 存储桶中的文档不需要 base64 编码。  
包含 S3 对象的 S3 存储桶的 AWS 区域必须与您用于 Amazon Textract 操作的 AWS 区域匹配。  
如果您使用 AWS CLI 调用 Amazon Textract 操作，则不支持使用字节属性传递图像字节。您必须先将文档上传到 Amazon S3 存储桶，然后使用 S3Oject 属性调用操作。  
要使 Amazon Textract 处理 S3 对象，用户必须具有访问 S3 对象的权限。  
类型：[Document](API_Document.md) 对象  
必填项：是

## 响应语法
<a name="API_AnalyzeExpense_ResponseSyntax"></a>

```
{
   "DocumentMetadata": { 
      "Pages": number
   },
   "ExpenseDocuments": [ 
      { 
         "ExpenseIndex": number,
         "LineItemGroups": [ 
            { 
               "LineItemGroupIndex": number,
               "LineItems": [ 
                  { 
                     "LineItemExpenseFields": [ 
                        { 
                           "LabelDetection": { 
                              "Confidence": number,
                              "Geometry": { 
                                 "BoundingBox": { 
                                    "Height": number,
                                    "Left": number,
                                    "Top": number,
                                    "Width": number
                                 },
                                 "Polygon": [ 
                                    { 
                                       "X": number,
                                       "Y": number
                                    }
                                 ]
                              },
                              "Text": "string"
                           },
                           "PageNumber": number,
                           "Type": { 
                              "Confidence": number,
                              "Text": "string"
                           },
                           "ValueDetection": { 
                              "Confidence": number,
                              "Geometry": { 
                                 "BoundingBox": { 
                                    "Height": number,
                                    "Left": number,
                                    "Top": number,
                                    "Width": number
                                 },
                                 "Polygon": [ 
                                    { 
                                       "X": number,
                                       "Y": number
                                    }
                                 ]
                              },
                              "Text": "string"
                           }
                        }
                     ]
                  }
               ]
            }
         ],
         "SummaryFields": [ 
            { 
               "LabelDetection": { 
                  "Confidence": number,
                  "Geometry": { 
                     "BoundingBox": { 
                        "Height": number,
                        "Left": number,
                        "Top": number,
                        "Width": number
                     },
                     "Polygon": [ 
                        { 
                           "X": number,
                           "Y": number
                        }
                     ]
                  },
                  "Text": "string"
               },
               "PageNumber": number,
               "Type": { 
                  "Confidence": number,
                  "Text": "string"
               },
               "ValueDetection": { 
                  "Confidence": number,
                  "Geometry": { 
                     "BoundingBox": { 
                        "Height": number,
                        "Left": number,
                        "Top": number,
                        "Width": number
                     },
                     "Polygon": [ 
                        { 
                           "X": number,
                           "Y": number
                        }
                     ]
                  },
                  "Text": "string"
               }
            }
         ]
      }
   ]
}
```

## 响应元素
<a name="API_AnalyzeExpense_ResponseElements"></a>

如果此操作成功，则该服务将会发送回 HTTP 200 响应。

服务以 JSON 格式返回的以下数据。

 ** [DocumentMetadata](#API_AnalyzeExpense_ResponseSyntax) **   <a name="Textract-AnalyzeExpense-response-DocumentMetadata"></a>
有关输入文档的信息。  
类型：[DocumentMetadata](API_DocumentMetadata.md) 对象

 ** [ExpenseDocuments](#API_AnalyzeExpense_ResponseSyntax) **   <a name="Textract-AnalyzeExpense-response-ExpenseDocuments"></a>
Amazon Textract 检测到的费用。  
类型: 数组的[ExpenseDocument](API_ExpenseDocument.md)对象

## 错误
<a name="API_AnalyzeExpense_Errors"></a>

 ** AccessDeniedException **   
您无权执行该操作。使用授权用户或 IAM 角色的 Amazon 资源名称 (ARN) 来执行操作。  
HTTP 状态代码：400

 ** BadDocumentException **   
Amazon Textract 无法阅读文档。有关 Amazon Textract 中文档限制的更多信息，请参阅[Amazon Textract 中的硬性限制](limits.md).  
HTTP 状态代码：400

 ** DocumentTooLargeException **   
无法处理该文档，因为它太大。同步操作的最大文档大小为 10 MB。对于 PDF 文件，异步操作的最大文档大小为 500 MB。  
HTTP 状态代码：400

 ** InternalServerError **   
Amazon Textract 遇到了一个服务问题。重新尝试您的调用。  
HTTP 状态代码：500

 ** InvalidParameterException **   
有一个输入参数违反了约束。例如，在同步操作中，`InvalidParameterException`如果两者都没有`S3Object`要么`Bytes`值在`Document`请求参数。请先验证您的参数，然后再次调用 API 操作。  
HTTP 状态代码：400

 ** InvalidS3ObjectException **   
Amazon Textract 无法访问请求中指定的 S3 对象。有关更多信息，请[配置对 Amazon S3 的访问权限](https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html)有关故障排除信息，请参阅。[Amazon S3 故障排除](https://docs.aws.amazon.com/AmazonS3/latest/dev/troubleshooting.html)   
HTTP 状态代码：400

 ** ProvisionedThroughputExceededException **   
请求数超出了您的吞吐量限制。如要增加此限制，请联系 Amazon Textract。  
HTTP 状态代码：400

 ** ThrottlingException **   
Amazon Textract 暂时无法处理该请求。重新尝试您的调用。  
HTTP 状态代码：500

 ** UnsupportedDocumentException **   
输入文档的格式不受支持。操作文档可以是 PNG、JPEG、PDF 或 TIFF 格式。  
HTTP 状态代码：400

## 另请参阅
<a name="API_AnalyzeExpense_SeeAlso"></a>

有关在特定语言的AWS软件开发工具包中使用此 API 的更多信息，请参阅以下内容：
+  [AWS Command Line Interface](https://docs.aws.amazon.com/goto/aws-cli/textract-2018-06-27/AnalyzeExpense) 
+  [适用于 .NET 的AWS开发工具包](https://docs.aws.amazon.com/goto/DotNetSDKV3/textract-2018-06-27/AnalyzeExpense) 
+  [适用于 C\$1\$1 的AWS开发工具包](https://docs.aws.amazon.com/goto/SdkForCpp/textract-2018-06-27/AnalyzeExpense) 
+  [适用于 Go 的AWS开发工具包](https://docs.aws.amazon.com/goto/SdkForGoV1/textract-2018-06-27/AnalyzeExpense) 
+  [AWS适用于 Java V2 的开发工具包](https://docs.aws.amazon.com/goto/SdkForJavaV2/textract-2018-06-27/AnalyzeExpense) 
+  [适用于 JavaScript 的AWS开发工具包](https://docs.aws.amazon.com/goto/AWSJavaScriptSDK/textract-2018-06-27/AnalyzeExpense) 
+  [适用于 PHP V3 的 AWS 开发工具包](https://docs.aws.amazon.com/goto/SdkForPHPV3/textract-2018-06-27/AnalyzeExpense) 
+  [适用于 Python 的 AWS 开发工具包](https://docs.aws.amazon.com/goto/boto3/textract-2018-06-27/AnalyzeExpense) 
+  [适用于 Ruby V3 的 AWS 开发工具包](https://docs.aws.amazon.com/goto/SdkForRubyV3/textract-2018-06-27/AnalyzeExpense) 