受监管订单
Work with regulated orders using the Orders API.
Amazon classifies some products as regulated to comply with local regulations and to support providing a broader selection of regulated items to customers. Because orders that contain regulated items must be validated by skilled professionals before shipment, customers are required to provide additional information to complete the purchase (for example, upload a prescription). Regulated items include pet pharmacy, eye contact lenses, and prescription glasses.
You can use the getOrderRegulatedInfo
and updateVerificationStatus
operations in the Orders API to programmatically integrate this validation process into your applications.
术语
-
Regulated product. A product that is sold on Amazon that requires additional information, provided at the time of purchase, to comply with local regulations.
-
Regulated information. Additional information that a customer must include when they purchase a regulated product.
-
Regulated order. A customer order that contains a regulated product, and the associated regulated information.
-
受限数据令牌 (RDT)。一种短期访问令牌,用于授权调用受限操作。RDT 的有效期为一小时。
-
验证状态。受监管订单的状态,表明它是否已被熟练的专业人员批准或拒绝。
-
Verification detail. Additional information about the verification of a regulated order. Supported details differ depending on the product. Some products might not support additional details. Only prescription-related details are currently supported in the US.
教程:了解订单是否包含受监管信息
Learn how to determine if an order is a regulated order.
After you identify a regulated order, you can make a separate API request to get the status and regulated information. For more information, refer to How to retrieve an order's regulated information.
先决条件
要完成本教程,您需要:
- Authorization from the seller for whom you are making calls. For more information, refer to Authorizing Selling Partner API applications.
- 批准开发者资料中的“直接配送至买家(受限)”职权。
- The Direct-to-Consumer Delivery (Restricted) role selected on the App registration page for your application.
Find out if an order contains regulated information
Call the getOrder
operation and pass the following query parameter:
参数 | 描述 | 必填项 |
---|---|---|
orderId | An Amazon-defined order identifier, in 3-7-7 format. Type: string | 有帮助 |
请求示例
GET https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/
响应
A successful response includes the payload
object, which contains the information for an order. This includes HasRegulatedItems
. When true
, the order has regulated items that might require additional approval steps before being filled.
For information about the possible objects and properties in an order, refer to Order
in the API reference.
响应示例
This example is for an order that contains regulated information:
{
"payload": {
"BuyerInfo": {},
"AmazonOrderId": "026-1520163-6049104",
"EarliestShipDate": "2022-03-10T00:00:00Z",
"SalesChannel": "Amazon.co.uk",
"AutomatedShippingSettings": {
"HasAutomatedShippingSettings": false
},
"OrderStatus": "Canceled",
"NumberOfItemsShipped": 0,
"OrderType": "StandardOrder",
"IsPremiumOrder": false,
"IsPrime": false,
"FulfillmentChannel": "MFN",
"NumberOfItemsUnshipped": 0,
"HasRegulatedItems": true,
"IsReplacementOrder": false,
"IsSoldByAB": false,
"LatestShipDate": "2022-03-10T23:59:59Z",
"ShipServiceLevel": "Std UK Dom_1",
"IsISPU": false,
"MarketplaceId": "A1F83G8C2ARO7P",
"PurchaseDate": "2022-03-09T22:03:02Z",
"IsAccessPointOrder": false,
"IsBusinessOrder": false,
"OrderTotal": {
"CurrencyCode": "GBP",
"Amount": "20.00"
},
"PaymentMethodDetails": [
"Standard"
],
"IsGlobalExpressEnabled": false,
"LastUpdateDate": "2022-03-14T22:05:14Z",
"ShipmentServiceLevelCategory": "Standard"
}
}
This example is for an order that doesn't contain regulated information:
{
"payload": {
"BuyerInfo": {},
"AmazonOrderId": "026-1520163-6049104",
"EarliestShipDate": "2022-03-10T00:00:00Z",
"SalesChannel": "Amazon.co.uk",
"AutomatedShippingSettings": {
"HasAutomatedShippingSettings": false
},
"OrderStatus": "Canceled",
"NumberOfItemsShipped": 0,
"OrderType": "StandardOrder",
"IsPremiumOrder": false,
"IsPrime": false,
"FulfillmentChannel": "MFN",
"NumberOfItemsUnshipped": 0,
"HasRegulatedItems": false,
"IsReplacementOrder": false,
"IsSoldByAB": false,
"LatestShipDate": "2022-03-10T23:59:59Z",
"ShipServiceLevel": "Std UK Dom_1",
"IsISPU": false,
"MarketplaceId": "A1F83G8C2ARO7P",
"PurchaseDate": "2022-03-09T22:03:02Z",
"IsAccessPointOrder": false,
"IsBusinessOrder": false,
"OrderTotal": {
"CurrencyCode": "GBP",
"Amount": "20.00"
},
"PaymentMethodDetails": [
"Standard"
],
"IsGlobalExpressEnabled": false,
"LastUpdateDate": "2022-03-14T22:05:14Z",
"ShipmentServiceLevelCategory": "Standard"
}
}
Tutorial: Recognize which orders contain regulated information
Learn how to recognize which orders in a list contain regulated information.
After you identify a regulated order, you can get more information about the status and regulated information. For more information, refer to How to retrieve an order's regulated information.
先决条件
要完成本教程,您需要:
- Authorization from the seller for whom you are making calls. For more information, refer to Authorizing Selling Partner API applications.
- 批准开发者资料中的“直接配送至买家(受限)”职权。
- The Direct-to-Consumer Delivery (Restricted) role selected on the App registration page for your application.
Recognize which orders contain regulated information
Call the getOrders
operation and pass the parameters you want to use to filter the result.
请求示例
GET https://sellingpartnerapi-eu.amazon.com/orders/v0/orders?MarketplaceIds=A1F83G8C2ARO7P&CreatedAfter=1985-04-12T23:20:50.52Z
响应
A successful response includes a payload
object. This object contains an Orders
array of one or more orders, and (optionally) additional properties (for more informartion, refer to OrderList
). Each order in the array includes HasRegulatedItems
; when true
, the order contains regulated items that might require additional approval steps.
For details about the possible objects and properties in an order, refer to Order
in the API reference.
响应示例
In this example, the first order in the Orders
array has regulated items. The second order in the Orders
array does not have regulated items.
{
"payload": {
"Orders": [
{
"BuyerInfo": {},
"AmazonOrderId": "026-1520163-6049104",
"EarliestShipDate": "2022-03-10T00:00:00Z",
"SalesChannel": "Amazon.co.uk",
"AutomatedShippingSettings": {
"HasAutomatedShippingSettings": false
},
"OrderStatus": "Canceled",
"NumberOfItemsShipped": 0,
"OrderType": "StandardOrder",
"IsPremiumOrder": false,
"IsPrime": false,
"FulfillmentChannel": "MFN",
"NumberOfItemsUnshipped": 0,
"HasRegulatedItems": true,
"IsReplacementOrder": false,
"IsSoldByAB": false,
"LatestShipDate": "2022-03-10T23:59:59Z",
"ShipServiceLevel": "Std UK Dom_1",
"IsISPU": false,
"MarketplaceId": "A1F83G8C2ARO7P",
"PurchaseDate": "2022-03-09T22:03:02Z",
"IsAccessPointOrder": false,
"IsBusinessOrder": false,
"OrderTotal": {
"CurrencyCode": "GBP",
"Amount": "20.00"
},
"PaymentMethodDetails": [
"Standard"
],
"IsGlobalExpressEnabled": false,
"LastUpdateDate": "2022-03-14T22:05:14Z",
"ShipmentServiceLevelCategory": "Standard"
},
{
"BuyerInfo": {},
"AmazonOrderId": "203-1028129-8694751",
"EarliestShipDate": "2022-03-17T00:00:00Z",
"SalesChannel": "Amazon.co.uk",
"AutomatedShippingSettings": {
"HasAutomatedShippingSettings": false
},
"OrderStatus": "Canceled",
"NumberOfItemsShipped": 0,
"OrderType": "StandardOrder",
"IsPremiumOrder": false,
"IsPrime": false,
"FulfillmentChannel": "MFN",
"NumberOfItemsUnshipped": 0,
"HasRegulatedItems": false,
"IsReplacementOrder": "false",
"IsSoldByAB": false,
"LatestShipDate": "2022-03-17T23:59:59Z",
"ShipServiceLevel": "Std UK Dom_1",
"IsISPU": false,
"MarketplaceId": "A1F83G8C2ARO7P",
"PurchaseDate": "2022-03-15T16:45:35Z",
"IsAccessPointOrder": false,
"IsBusinessOrder": false,
"OrderTotal": {
"CurrencyCode": "GBP",
"Amount": "20.00"
},
"PaymentMethodDetails": [
"Standard"
],
"IsGlobalExpressEnabled": false,
"LastUpdateDate": "2022-03-29T01:55:37Z",
"ShipmentServiceLevelCategory": "Standard"
}
],
"CreatedBefore": "2022-04-22T07:23:40Z"
}
}
教程:如何检索订单的受监管信息
Learn how to retrieve the regulated information associated with an order.
先决条件
要完成本教程,您需要:
- Authorization from the seller for whom you are making calls. For more information, refer to Authorizing Selling Partner API applications.
- 批准开发者资料中的“直接配送至买家(受限)”职权。
- The Direct-to-Consumer Delivery (Restricted) role selected on the App registration page for your application.
Step 1. Retrieve the Restricted Data Token
To access regulated information, you require a Restricted Data Token (RDT). To get this token:
-
Call the
createRestrictedDataToken
operation and pass these parameters:参数 描述 必填项 restrictedResources
A list of restricted resources.
Type: array <RestrictedResource
>有帮助 请求示例
POST https://sellingpartnerapi-eu.amazon.com/tokens/2021-03-01/restrictedDataToken { "restrictedResources": [ { "method": "GET", "path": "/orders/v0/orders/{orderId}/regulatedInfo" } ] }响应
For additional details about the response properties, refer to
CreateRestrictedDataTokenResponse
in the Tokens API reference.响应示例
{ "expiresIn": 3600, "restrictedDataToken": "Atz..." } -
Save the
restrictedDataToken
value (which is the RDT). You'll need this in Step 2.
Step 2. Retrieve regulated information associated with an order
Call the getOrderRegulatedInfo
operation and pass the orderId
of the order with the regulated information you want. Include the RDT from Step 1 in the x-amz-access-token
header of your call.
路径参数
参数 | 描述 | Required: |
---|---|---|
orderId | An Amazon-defined order identifier, in 3-7-7 format. Type: string | 有帮助 |
请求示例
GET https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/regulatedInfo
响应
A successful response includes information about the order, whether a dosage label is required, the verification status of the order, and the requested regulated information. Some types of regulated orders support additional details about the verification of the order. Information about the supported detail types are returned as part of this response. For detailed information about the objects and properties that might be present in a successful response, refer to OrderRegulatedInfo
.
响应示例
This example is for a pending order:
{
"payload": {
"AmazonOrderId": "205-1725759-9209952",
"RequiresDosageLabel": true,
"RegulatedInformation": {
"Fields": [
{
"FieldLabel": "Species",
"FieldId": "petsSpecies",
"FieldValue": "Cat",
"FieldType": "Text"
}, {
"FieldLabel": "Pet name",
"FieldId": "petsName",
"FieldValue": "Snowy",
"FieldType": "Text"
}, {
"FieldLabel": "Birth date",
"FieldId": "petsDateOfBirth",
"FieldValue": "15 August 2021",
"FieldType": "Text"
}, {
"FieldLabel": "Weight",
"FieldId": "petsWeight",
"FieldValue": "1 kg",
"FieldType": "Text"
}, {
"FieldLabel": "Gender",
"FieldId": "petsGender",
"FieldValue": "Female",
"FieldType": "Text"
}, {
"FieldLabel": "Is your pet lactating?",
"FieldId": "petsLactating",
"FieldValue": "No",
"FieldType": "Text"
}, {
"FieldLabel": "Is your pet pregnant?",
"FieldId": "petsPregnant",
"FieldValue": "Yes",
"FieldType": "Text"
}, {
"FieldLabel": "Pregnancy stage",
"FieldId": "petsPregnancyStage",
"FieldValue": "Second trimester",
"FieldType": "Text"
}, {
"FieldLabel": "Does your pet have allergies?",
"FieldId": "petsAllergies",
"FieldValue": "Yes",
"FieldType": "Text"
}, {
"FieldLabel": "Is your pet neutered?",
"FieldId": "petsNeutered",
"FieldValue": "No",
"FieldType": "Text"
}, {
"FieldLabel": "Is your pet on any other medication?",
"FieldId": "petsAdditionalMedicationRadio",
"FieldValue": "No",
"FieldType": "Text"
}, {
"FieldLabel": "snowy prescription 1",
"FieldId": "snowy prescription 1",
"FieldValue": "https://...",
"FieldType": "FileAttachment"
}
]
},
"RegulatedOrderVerificationStatus": {
"Status": "Pending",
"RequiresMerchantAction": true,
"ValidRejectionReasons": [
{
"RejectionReasonId": "shield_pom_v_reject_pregnant_only",
"RejectionReasonDescription": "Not suitable for pregnant pet"
}, {
"RejectionReasonId": "shield_pom_v_reject_product",
"RejectionReasonDescription": "This product is not suitable"
}, {
"RejectionReasonId": "shield_pom_v_reject_reject_age",
"RejectionReasonDescription": "Your pet is too young for this medicine."
}
]
}
}
}
This example is for an approved order:
{
"payload": {
"AmazonOrderId": "205-1725759-9209952",
"RequiresDosageLabel": true,
"RegulatedInformation": {
"Fields": [
{
"FieldLabel": "Species",
"FieldId": "petsSpecies",
"FieldValue": "Cat",
"FieldType": "Text"
}
]
},
"RegulatedOrderVerificationStatus": {
"Status": "Approved",
"RequiresMerchantAction": false,
"ExternalReviewerId": "externalId",
"ReviewDate": "1970-01-19T03:59:27Z",
"ValidRejectionReasons": []
}
}
}
This example is for a rejected order:
{
"payload": {
"AmazonOrderId": "205-1725759-9209952",
"RequiresDosageLabel": true,
"RegulatedInformation": {
"Fields": [
{
"FieldLabel": "Species",
"FieldId": "petsSpecies",
"FieldValue": "Cat",
"FieldType": "Text"
}
]
},
"RegulatedOrderVerificationStatus": {
"Status": "Rejected",
"RequiresMerchantAction": false,
"ExternalReviewerId": "externalId",
"ReviewDate": "1970-01-19T03:59:27Z",
"RejectionReason": {
"RejectionReasonId": "shield_pom_vps_reject_species",
"RejectionReasonDescription": "This medicine is not suitable for this pet’s species"
}
"ValidRejectionReasons": []
}
}
}
This example is for a cancelled order:
{
"payload": {
"AmazonOrderId": "202-5156092-2672318",
"RequiresDosageLabel": false,
"RegulatedInformation": {
"Fields": [
{
"FieldLabel": "Species",
"FieldId": "petsSpecies",
"FieldValue": "Dog",
"FieldType": "Text"
}, {
"FieldLabel": "Birth date",
"FieldId": "petsDateOfBirth",
"FieldValue": "8 March 2019",
"FieldType": "Text"
}, {
"FieldLabel": "Weight",
"FieldId": "petsWeight",
"FieldValue": "44 kg",
"FieldType": "Text"
}, {
"FieldLabel": "Gender",
"FieldId": "petsGender",
"FieldValue": "Male",
"FieldType": "Text"
}, {
"FieldLabel": "Does your pet have allergies?",
"FieldId": "petsAllergies",
"FieldValue": "No",
"FieldType": "Text"
}, {
"FieldLabel": "Is your pet neutered?",
"FieldId": "petsNeutered",
"FieldValue": "No",
"FieldType": "Text"
}, {
"FieldLabel": "Is your pet on any other medication?",
"FieldId": "petsAdditionalMedicationRadio",
"FieldValue": "No",
"FieldType": "Text"
}
]
},
"RegulatedOrderVerificationStatus": {
"Status": "Cancelled",
"RequiresMerchantAction": false,
"ValidRejectionReasons": []
}
}
}
This example is for an expired order:
{
"payload": {
"AmazonOrderId": "205-2554781-3212354",
"RequiresDosageLabel": true,
"RegulatedInformation": {
"Fields": [
{
"FieldLabel": "Species",
"FieldId": "petsSpecies",
"FieldValue": "Cat",
"FieldType": "Text"
}, {
"FieldLabel": "Birth date",
"FieldId": "petsDateOfBirth",
"FieldValue": "25 January 2020",
"FieldType": "Text"
}, {
"FieldLabel": "Weight",
"FieldId": "petsWeight",
"FieldValue": "2 kg",
"FieldType": "Text"
}, {
"FieldLabel": "Gender",
"FieldId": "petsGender",
"FieldValue": "Male",
"FieldType": "Text"
}, {
"FieldLabel": "Does your pet have allergies?",
"FieldId": "petsAllergies",
"FieldValue": "No",
"FieldType": "Text"
}, {
"FieldLabel": "Is your pet neutered?",
"FieldId": "petsNeutered",
"FieldValue": "No",
"FieldType": "Text"
}, {
"FieldLabel": "Is your pet on any other medication?",
"FieldId": "petsAdditionalMedicationRadio",
"FieldValue": "No",
"FieldType": "Text"
}, {
"FieldLabel": "JPEG 2 prescription 1",
"FieldId": "JPEG 2 prescription 1",
"FieldValue": "https://...",
"FieldType": "FileAttachment"
}
]
},
"RegulatedOrderVerificationStatus": {
"Status": "Expired",
"RequiresMerchantAction": false,
"ValidRejectionReasons": []
}
}
}
This example is for a pending order that supports additional details:
The order in this example supports one additional detail type: prescriptionDetail
. You can only provide this information when RegulatedOrderVerificationStatus.Status
is Approved
. For more supported detail types, refer to List of all supported verificationDetails.
{
"payload": {
"AmazonOrderId": "205-2554781-3212354",
"RequiresDosageLabel": true,
"RegulatedInformation": {
"Fields": [
{
"FieldLabel": "Species",
"FieldId": "petsSpecies",
"FieldValue": "Cat",
"FieldType": "Text"
}
]
},
"RegulatedOrderVerificationStatus": {
"Status": "Pending",
"RequiresMerchantAction": true,
"ValidRejectionReasons": [
{
"RejectionReasonId": "shield_pom_v_reject_pregnant_only",
"RejectionReasonDescription": "Not suitable for pregnant pet"
}
],
"ValidVerificationDetails": [
{
"VerificationDetailType": "prescriptionDetail",
"ValidVerificationStatuses": [
"Approved"
]
}
]
}
}
}
教程:如何批准或拒绝受监管订单
本教程向您展示如何批准或拒绝包含受监管信息的订单。
先决条件
要完成本教程,您需要:
- Authorization from the seller for whom you are making calls. For more information, refer to Authorizing Selling Partner API applications.
- 批准开发者资料中的“直接配送至买家(受限)”职权。
- The Direct-to-Consumer Delivery (Restricted) role selected on the App registration page for your application.
Approve or reject a regulated order
Call the updateVerificationStatus
operation and pass these parameters:
路径参数
参数 | 描述 | 必填项 |
---|---|---|
orderId | An Amazon-defined order identifier, in 3-7-7 format. Type: string | 有帮助 |
主体参数
参数 | 描述 | 必填项 |
---|---|---|
regulatedOrderVerificationStatus | The updated verification status properties. Type: UpdateVerificationStatusRequestBody | 有帮助 |
请求示例
This example is for approving an order:
PATCH https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/regulatedInfo
{
"regulatedOrderVerificationStatus": {
"status": "Approved",
"externalReviewerId": "reviewer1234"
}
}
This example is for rejecting an order:
PATCH https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/regulatedInfo
{
"regulatedOrderVerificationStatus": {
"status": "Rejected",
"externalReviewerId": "reviewer1234",
"rejectionReasonId": "shield_pom_vps_reject_incorrect_weight"
}
}
响应
The response is empty for this operation.
Tutorial: Provide additional details about the verification of a regulated order
Learn how to provide additional details about the verification of an order that contains regulated information.
You can only provide additional verification details when the verification status is in a specific state. Some verification details are only supported for certain types of regulated products. To determine which verification details are supported for your order, reference the ValidVerificationDetails
value that is returned from your getOrderRegulatedInfo
call. If ValidVerificationDetails
is not returned, no additional verification details are supported.
先决条件
要完成本教程,您需要:
- Authorization from the seller for whom you are making calls. For more information, refer to Authorizing Selling Partner API applications.
- 批准开发者资料中的“直接配送至买家(受限)”职权。
- The Direct-to-Consumer Delivery (Restricted) role selected on the App registration page for your application.
Step 1. Check the verification detail is supported and order is in a valid status
Call the getOrderRegulatedInfo
operation and verify that:
- The detail type you want to provide is listed in
ValidVerificationDetails
- The
RegulatedOrderVerificationStatus.Status
value is listed in the correspondingValidVerificationStatuses
for that detail type
响应示例
In this example, one type of verification detail (prescriptionDetail
) is supported for this order.
{
"payload": {
"AmazonOrderId": "205-2554781-3212354",
"RequiresDosageLabel": true,
"RegulatedInformation": {
"Fields": [
{
"FieldLabel": "Species",
"FieldId": "petsSpecies",
"FieldValue": "Cat",
"FieldType": "Text"
}
]
},
"RegulatedOrderVerificationStatus": {
"Status": "Approved",
"RequiresMerchantAction": false,
"ValidRejectionReasons": [
{
"RejectionReasonId": "shield_pom_v_reject_pregnant_only",
"RejectionReasonDescription": "Not suitable for pregnant pet"
}
],
"ValidVerificationDetails": [
{
"VerificationDetailType": "prescriptionDetail",
"ValidVerificationStatuses": [
"Approved"
]
}
]
}
}
}
ValidVerificationDetails
lists all supported verificationDetails
for the order and when you can provide them.
In the preceding example, you can include prescriptionDetail
in your call because the following conditions are met:
RegulatedOrderVerificationStatus
containsStatus
asApproved
.ValidVerificationDetails
includesprescriptionDetail
as theVerificationDetailType
and the correspondingValidVerificationStatuses
isApproved
.
If RegulatedOrderVerificationStatus
is Pending
or Rejected
, calls to set prescriptionDetail
will fail.
Refer to Step 2 for more information on the call to set prescriptionDetail
.
Step 2. Provide additional details regarding the verification of a regulated order
Call the updateVerificationStatus
operation and pass these parameters:
路径参数
参数 | 描述 | 必填项 |
---|---|---|
orderId | An Amazon-defined order identifier, in 3-7-7 format. Type: string | 有帮助 |
主体参数
参数 | 描述 | 必填项 |
---|---|---|
regulatedOrderVerificationStatus | The updated verification status properties. Type: UpdateVerificationStatusRequestBody | 有帮助 |
请求示例
This example shows updates to only verificationDetails
:
PATCH https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/regulatedInfo
{
"regulatedOrderVerificationStatus": {
"externalReviewerId": "reviewer1234",
"verificationDetails": {
"prescriptionDetail":
{
"prescriptionId": "Rx-1234",
"expirationDate": "2024-01-01T00:00:00Z",
"writtenQuantity": 2,
"totalRefillsAuthorized": 10,
"usageInstructions": "Take one per day by mouth with food",
"refillsRemaining": 10,
"clinicId": "ABC-1234"
}
}
}
}
This example shows updates to verificationDetails
and status
:
You can alter the status and the details in a single call. Updates to statuses are applied first, so the status in your request payload must be one of the supported statuses for the detail. If the following example had a status
of Rejected
, the call would fail.
PATCH https://sellingpartnerapi-eu.amazon.com/orders/v0/orders/205-1725759-9209952/regulatedInfo
{
"regulatedOrderVerificationStatus": {
"status": "Approved",
"externalReviewerId": "reviewer1234",
"verificationDetails": {
"prescriptionDetail":
{
"prescriptionId": "Rx-1234",
"expirationDate": "2024-01-01T00:00:00Z",
"writtenQuantity": 2,
"totalRefillsAuthorized": 10,
"usageInstructions": "Take one per day by mouth with food",
"refillsRemaining": 10,
"clinicId": "ABC-1234"
}
}
}
}
响应
The response is empty for this operation.
List of all supported verificationDetails
verificationDetails
prescriptionDetails
This is supported for US regulated products and must include information pertaining to the prescription provided by the customer's clinic. This information is only available if the order is approved. Attempts to provide this information for a rejected order will fail.
Updated 6 months ago