本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
StartExpenseAnalysis
开始对发票或收据进行异步分析,以获取联系信息、购买物品和供应商名称等数据。
StartExpenseAnalysis
可以分析 JPEG、PNG 和 PDF 格式的文档中的文本。必须将这些文档存储在 Amazon S3 存储桶中。使用DocumentLocation参数,指定您的 S3 存储桶的名称和该存储桶中的文档名称。
StartExpenseAnalysis
返回作业标识符 (JobId
) 你将提供给GetExpenseAnalysis
检索操作结果。完成对输入发票/收据的分析后,Amazon Textract 将完成状态发布到您提供给NotificationChannel
. 要获取发票和收据分析操作的结果,请确保发布到 Amazon SNS 主题的状态值为SUCCEEDED
. 如果是的话,打电话GetExpenseAnalysis,然后传递作业标识符(JobId
) 那是通过你的电话返回的StartExpenseAnalysis
.
有关更多信息,请参阅 。分析发票和收据.
请求语法
{
"ClientRequestToken": "string
",
"DocumentLocation": {
"S3Object": {
"Bucket": "string
",
"Name": "string
",
"Version": "string
"
}
},
"JobTag": "string
",
"KMSKeyId": "string
",
"NotificationChannel": {
"RoleArn": "string
",
"SNSTopicArn": "string
"
},
"OutputConfig": {
"S3Bucket": "string
",
"S3Prefix": "string
"
}
}
请求参数
请求接受采用 JSON 格式的以下数据。
- ClientRequestToken
-
用于标识启动请求的幂等令牌。如果你对多个使用同一个令牌
StartDocumentTextDetection
请求,同样JobId
返回。使用ClientRequestToken
以防止同样的工作不止一次被意外启动。有关更多信息,请参阅 。调用 Amazon Textract 异步操作类型: 字符串
长度约束:最小长度为 1。最大长度为 64。
模式:
^[a-zA-Z0-9-_]+$
:必填项:否
- DocumentLocation
-
要处理的文档的位置。
类型:DocumentLocation 对象
:必填项:是
- JobTag
-
您指定的标识符包含在发布到 Amazon SNS 主题的完成通知中。例如,您可以使用
JobTag
以确定完成通知对应的文件类型(例如纳税表或收据)。类型: 字符串
长度约束:最小长度为 1。最大长度为 64。
模式:
[a-zA-Z0-9_.\-:]+
:必填项:否
- KMSKeyId
-
用于加密推断结果的 KMS 密钥。这可以是密钥 ID 或密钥别名格式。提供 KMS 密钥后,KMS 密钥将用于对客户存储桶中的对象进行服务器端加密。如果未启用此参数,结果将使用 SSE-S3 加密服务器端。
类型: 字符串
长度约束:最小长度为 1。长度上限为 2048。
模式:
^[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,2048}$
:必填项:否
- NotificationChannel
-
您希望 Amazon Textract 将操作的完成状态发布到的 Amazon SNS 主题 ARN。
类型:NotificationChannel 对象
:必填项:否
- OutputConfig
-
设置输出是否转到客户定义的存储桶。默认情况下,Amazon Textract 将在内部保存结果以供
GetExpenseAnalysis
operation.类型:OutputConfig 对象
:必填项:否
响应语法
{
"JobId": "string"
}
响应元素
如果此操作成功,则该服务将会发送回 HTTP 200 响应。
服务以 JSON 格式返回的以下数据。
- JobId
-
文本检测任务的唯一标识符。这些区域有:
JobId
从返回StartExpenseAnalysis
. 一个JobId
值仅在 7 天内有效。类型: 字符串
长度约束:最小长度为 1。最大长度为 64。
模式:
^[a-zA-Z0-9-_]+$
错误
- AccessDeniedException
-
您无权执行该操作。使用授权用户或 IAM 角色的 Amazon 资源名称 (ARN) 来执行操作。
HTTP 状态代码:400
- BadDocumentException
-
Amazon Textract 无法阅读文档。有关 Amazon Textract 中文档限制的更多信息,请参阅Amazon Textract 中的硬性限制.
HTTP 状态代码:400
- DocumentTooLargeException
-
无法处理该文档,因为它太大。同步操作的最大文档大小为 10 MB。对于 PDF 文件,异步操作的最大文档大小为 500 MB。
HTTP 状态代码:400
- IdempotentParameterMismatchException
-
一个
ClientRequestToken
输入参数与操作一起重用,但至少有一个其他输入参数与先前对该操作的调用不同。HTTP 状态代码:400
- InternalServerError
-
Amazon Textract 遇到了一个服务问题。重新尝试您的调用。
HTTP 状态代码:500
- InvalidKMSKeyException
-
表示输入的 KMS 密钥没有解密权限,或者 KMS 密钥输入错误。
HTTP 状态代码:400
- InvalidParameterException
-
有一个输入参数违反了约束。例如,在同步操作中,
InvalidParameterException
如果两者都不会发生异常S3Object
要么Bytes
值在Document
请求参数。先验证您的参数,然后重新调用 API 操作。HTTP 状态代码:400
- InvalidS3ObjectException
-
Amazon Textract 无法访问请求中指定的 S3 对象。有关更多信息,配置对 Amazon S3 的访问有关故障排除信息,请参阅。Amazon S3 故障排除
HTTP 状态代码:400
- LimitExceededException
-
超出了 Amazon Textract 服务限制。例如,如果您同时启动太多异步作业,则调用启动操作(
StartDocumentTextDetection
例如)引发 LimitExceededException 异常 (HTTP 状态代码:400),直到并发运行的任务数量低于 Amazon Textract 服务限制。HTTP 状态代码:400
- ProvisionedThroughputExceededException
-
请求数超出了您的吞吐量限制。如要增加此限制,请联系 Amazon Textract。
HTTP 状态代码:400
- ThrottlingException
-
Amazon Textract 暂时无法处理该请求。重新尝试您的调用。
HTTP 状态代码:500
- UnsupportedDocumentException
-
不支持输入文档的格式。用于操作的文档可以是 PNG、JPEG、PDF 或 TIFF 格式。
HTTP 状态代码:400
另请参阅
有关在特定语言的AWS软件开发工具包中使用此 API 的更多信息,请参阅以下内容: