

# Amazon Web Services Invoicing
<a name="API_Operations_AWS_Invoicing"></a>

The following actions are supported by Amazon Web Services Invoicing:
+  [BatchGetInvoiceProfile](API_invoicing_BatchGetInvoiceProfile.md) 
+  [CreateInvoiceUnit](API_invoicing_CreateInvoiceUnit.md) 
+  [CreateProcurementPortalPreference](API_invoicing_CreateProcurementPortalPreference.md) 
+  [DeleteInvoiceUnit](API_invoicing_DeleteInvoiceUnit.md) 
+  [DeleteProcurementPortalPreference](API_invoicing_DeleteProcurementPortalPreference.md) 
+  [GetInvoicePDF](API_invoicing_GetInvoicePDF.md) 
+  [GetInvoiceUnit](API_invoicing_GetInvoiceUnit.md) 
+  [GetProcurementPortalPreference](API_invoicing_GetProcurementPortalPreference.md) 
+  [ListInvoiceSummaries](API_invoicing_ListInvoiceSummaries.md) 
+  [ListInvoiceUnits](API_invoicing_ListInvoiceUnits.md) 
+  [ListProcurementPortalPreferences](API_invoicing_ListProcurementPortalPreferences.md) 
+  [ListTagsForResource](API_invoicing_ListTagsForResource.md) 
+  [PutProcurementPortalPreference](API_invoicing_PutProcurementPortalPreference.md) 
+  [TagResource](API_invoicing_TagResource.md) 
+  [UntagResource](API_invoicing_UntagResource.md) 
+  [UpdateInvoiceUnit](API_invoicing_UpdateInvoiceUnit.md) 
+  [UpdateProcurementPortalPreferenceStatus](API_invoicing_UpdateProcurementPortalPreferenceStatus.md) 

# BatchGetInvoiceProfile
<a name="API_invoicing_BatchGetInvoiceProfile"></a>

This gets the invoice profile associated with a set of accounts. The accounts must be linked accounts under the requester management account organization.

## Request Syntax
<a name="API_invoicing_BatchGetInvoiceProfile_RequestSyntax"></a>

```
{
   "AccountIds": [ "string" ]
}
```

## Request Parameters
<a name="API_invoicing_BatchGetInvoiceProfile_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [AccountIds](#API_invoicing_BatchGetInvoiceProfile_RequestSyntax) **   <a name="awscostmanagement-invoicing_BatchGetInvoiceProfile-request-AccountIds"></a>
Retrieves the corresponding invoice profile data for these account IDs.   
Type: Array of strings  
Array Members: Minimum number of 1 item. Maximum number of 1000 items.  
Pattern: `\d{12}`   
Required: Yes

## Response Syntax
<a name="API_invoicing_BatchGetInvoiceProfile_ResponseSyntax"></a>

```
{
   "Profiles": [ 
      { 
         "AccountId": "string",
         "Issuer": "string",
         "ReceiverAddress": { 
            "AddressLine1": "string",
            "AddressLine2": "string",
            "AddressLine3": "string",
            "City": "string",
            "CompanyName": "string",
            "CountryCode": "string",
            "DistrictOrCounty": "string",
            "PostalCode": "string",
            "StateOrRegion": "string"
         },
         "ReceiverEmail": "string",
         "ReceiverName": "string",
         "TaxRegistrationNumber": "string"
      }
   ]
}
```

## Response Elements
<a name="API_invoicing_BatchGetInvoiceProfile_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [Profiles](#API_invoicing_BatchGetInvoiceProfile_ResponseSyntax) **   <a name="awscostmanagement-invoicing_BatchGetInvoiceProfile-response-Profiles"></a>
 A list of invoice profiles corresponding to the requested accounts.   
Type: Array of [InvoiceProfile](API_invoicing_InvoiceProfile.md) objects

## Errors
<a name="API_invoicing_BatchGetInvoiceProfile_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_BatchGetInvoiceProfile_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/BatchGetInvoiceProfile) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/BatchGetInvoiceProfile) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/BatchGetInvoiceProfile) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/BatchGetInvoiceProfile) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/BatchGetInvoiceProfile) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/BatchGetInvoiceProfile) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/BatchGetInvoiceProfile) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/BatchGetInvoiceProfile) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/BatchGetInvoiceProfile) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/BatchGetInvoiceProfile) 

# CreateInvoiceUnit
<a name="API_invoicing_CreateInvoiceUnit"></a>

This creates a new invoice unit with the provided definition.

## Request Syntax
<a name="API_invoicing_CreateInvoiceUnit_RequestSyntax"></a>

```
{
   "Description": "string",
   "InvoiceReceiver": "string",
   "Name": "string",
   "ResourceTags": [ 
      { 
         "Key": "string",
         "Value": "string"
      }
   ],
   "Rule": { 
      "BillSourceAccounts": [ "string" ],
      "LinkedAccounts": [ "string" ]
   },
   "TaxInheritanceDisabled": boolean
}
```

## Request Parameters
<a name="API_invoicing_CreateInvoiceUnit_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [Description](#API_invoicing_CreateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateInvoiceUnit-request-Description"></a>
 The invoice unit's description. This can be changed at a later time.   
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 500.  
Pattern: `[\S\s]*`   
Required: No

 ** [InvoiceReceiver](#API_invoicing_CreateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateInvoiceUnit-request-InvoiceReceiver"></a>
 The Amazon Web Services account ID chosen to be the receiver of an invoice unit. All invoices generated for that invoice unit will be sent to this account ID.   
Type: String  
Pattern: `\d{12}`   
Required: Yes

 ** [Name](#API_invoicing_CreateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateInvoiceUnit-request-Name"></a>
 The unique name of the invoice unit that is shown on the generated invoice. This can't be changed once it is set. To change this name, you must delete the invoice unit recreate.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 50.  
Pattern: `(?! )[\p{L}\p{N}\p{Z}-_]*(?<! )`   
Required: Yes

 ** [ResourceTags](#API_invoicing_CreateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateInvoiceUnit-request-ResourceTags"></a>
 The tag structure that contains a tag key and value.   
Type: Array of [ResourceTag](API_invoicing_ResourceTag.md) objects  
Array Members: Minimum number of 0 items. Maximum number of 200 items.  
Required: No

 ** [Rule](#API_invoicing_CreateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateInvoiceUnit-request-Rule"></a>
The `InvoiceUnitRule` object used to create invoice units.   
Type: [InvoiceUnitRule](API_invoicing_InvoiceUnitRule.md) object  
Required: Yes

 ** [TaxInheritanceDisabled](#API_invoicing_CreateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateInvoiceUnit-request-TaxInheritanceDisabled"></a>
Whether the invoice unit based tax inheritance is/ should be enabled or disabled.   
Type: Boolean  
Required: No

## Response Syntax
<a name="API_invoicing_CreateInvoiceUnit_ResponseSyntax"></a>

```
{
   "InvoiceUnitArn": "string"
}
```

## Response Elements
<a name="API_invoicing_CreateInvoiceUnit_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [InvoiceUnitArn](#API_invoicing_CreateInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_CreateInvoiceUnit-response-InvoiceUnitArn"></a>
 The ARN to identify an invoice unit. This information can't be modified or deleted.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws[-a-z0-9]*:[a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+` 

## Errors
<a name="API_invoicing_CreateInvoiceUnit_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_CreateInvoiceUnit_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/CreateInvoiceUnit) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/CreateInvoiceUnit) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/CreateInvoiceUnit) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/CreateInvoiceUnit) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/CreateInvoiceUnit) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/CreateInvoiceUnit) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/CreateInvoiceUnit) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/CreateInvoiceUnit) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/CreateInvoiceUnit) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/CreateInvoiceUnit) 

# CreateProcurementPortalPreference
<a name="API_invoicing_CreateProcurementPortalPreference"></a>

 * **This feature API is subject to changing at any time. For more information, see the [Amazon Service Terms](https://aws.amazon.com/service-terms/) (Betas and Previews).** * 

Creates a procurement portal preference configuration for e-invoice delivery and purchase order retrieval. This preference defines how invoices are delivered to a procurement portal and how purchase orders are retrieved.

## Request Syntax
<a name="API_invoicing_CreateProcurementPortalPreference_RequestSyntax"></a>

```
{
   "BuyerDomain": "string",
   "BuyerIdentifier": "string",
   "ClientToken": "string",
   "Contacts": [ 
      { 
         "Email": "string",
         "Name": "string"
      }
   ],
   "EinvoiceDeliveryEnabled": boolean,
   "EinvoiceDeliveryPreference": { 
      "ConnectionTestingMethod": "string",
      "EinvoiceDeliveryActivationDate": number,
      "EinvoiceDeliveryAttachmentTypes": [ "string" ],
      "EinvoiceDeliveryDocumentTypes": [ "string" ],
      "Protocol": "string",
      "PurchaseOrderDataSources": [ 
         { 
            "EinvoiceDeliveryDocumentType": "string",
            "PurchaseOrderDataSourceType": "string"
         }
      ]
   },
   "ProcurementPortalInstanceEndpoint": "string",
   "ProcurementPortalName": "string",
   "ProcurementPortalSharedSecret": "string",
   "PurchaseOrderRetrievalEnabled": boolean,
   "ResourceTags": [ 
      { 
         "Key": "string",
         "Value": "string"
      }
   ],
   "Selector": { 
      "InvoiceUnitArns": [ "string" ],
      "SellerOfRecords": [ "string" ]
   },
   "SupplierDomain": "string",
   "SupplierIdentifier": "string",
   "TestEnvPreference": { 
      "BuyerDomain": "string",
      "BuyerIdentifier": "string",
      "ProcurementPortalInstanceEndpoint": "string",
      "ProcurementPortalSharedSecret": "string",
      "SupplierDomain": "string",
      "SupplierIdentifier": "string"
   }
}
```

## Request Parameters
<a name="API_invoicing_CreateProcurementPortalPreference_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [BuyerDomain](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-BuyerDomain"></a>
The domain identifier for the buyer in the procurement portal.  
Type: String  
Valid Values: `NetworkID`   
Required: Yes

 ** [BuyerIdentifier](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-BuyerIdentifier"></a>
The unique identifier for the buyer in the procurement portal.   
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `\S+`   
Required: Yes

 ** [ClientToken](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-ClientToken"></a>
A unique, case-sensitive identifier that you provide to ensure idempotency of the request.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `\S+`   
Required: No

 ** [Contacts](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-Contacts"></a>
List of contact information for portal administrators and technical contacts responsible for the e-invoice integration.  
Type: Array of [Contact](API_invoicing_Contact.md) objects  
Array Members: Fixed number of 1 item.  
Required: Yes

 ** [EinvoiceDeliveryEnabled](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-EinvoiceDeliveryEnabled"></a>
Indicates whether e-invoice delivery is enabled for this procurement portal preference. Set to true to enable e-invoice delivery, false to disable.  
Type: Boolean  
Required: Yes

 ** [EinvoiceDeliveryPreference](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-EinvoiceDeliveryPreference"></a>
Specifies the e-invoice delivery configuration including document types, attachment types, and customization settings for the portal.  
Type: [EinvoiceDeliveryPreference](API_invoicing_EinvoiceDeliveryPreference.md) object  
Required: No

 ** [ProcurementPortalInstanceEndpoint](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-ProcurementPortalInstanceEndpoint"></a>
The endpoint URL where e-invoices will be delivered to the procurement portal. Must be a valid HTTPS URL.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `\S+`   
Required: No

 ** [ProcurementPortalName](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-ProcurementPortalName"></a>
The name of the procurement portal.  
Type: String  
Valid Values: `SAP_BUSINESS_NETWORK | COUPA`   
Required: Yes

 ** [ProcurementPortalSharedSecret](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-ProcurementPortalSharedSecret"></a>
The shared secret or authentication credential used to establish secure communication with the procurement portal. This value must be encrypted at rest.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `\S+`   
Required: No

 ** [PurchaseOrderRetrievalEnabled](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-PurchaseOrderRetrievalEnabled"></a>
Indicates whether purchase order retrieval is enabled for this procurement portal preference. Set to true to enable PO retrieval, false to disable.  
Type: Boolean  
Required: Yes

 ** [ResourceTags](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-ResourceTags"></a>
The tags to apply to this procurement portal preference resource. Each tag consists of a key and an optional value.  
Type: Array of [ResourceTag](API_invoicing_ResourceTag.md) objects  
Array Members: Minimum number of 0 items. Maximum number of 200 items.  
Required: No

 ** [Selector](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-Selector"></a>
Specifies criteria for selecting which invoices should be processed using a particular procurement portal preference.  
Type: [ProcurementPortalPreferenceSelector](API_invoicing_ProcurementPortalPreferenceSelector.md) object  
Required: No

 ** [SupplierDomain](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-SupplierDomain"></a>
The domain identifier for the supplier in the procurement portal.  
Type: String  
Valid Values: `NetworkID`   
Required: Yes

 ** [SupplierIdentifier](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-SupplierIdentifier"></a>
The unique identifier for the supplier in the procurement portal.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `\S+`   
Required: Yes

 ** [TestEnvPreference](#API_invoicing_CreateProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-request-TestEnvPreference"></a>
Configuration settings for the test environment of the procurement portal. Includes test credentials and endpoints that are used for validation before production deployment.  
Type: [TestEnvPreferenceInput](API_invoicing_TestEnvPreferenceInput.md) object  
Required: No

## Response Syntax
<a name="API_invoicing_CreateProcurementPortalPreference_ResponseSyntax"></a>

```
{
   "ProcurementPortalPreferenceArn": "string"
}
```

## Response Elements
<a name="API_invoicing_CreateProcurementPortalPreference_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [ProcurementPortalPreferenceArn](#API_invoicing_CreateProcurementPortalPreference_ResponseSyntax) **   <a name="awscostmanagement-invoicing_CreateProcurementPortalPreference-response-ProcurementPortalPreferenceArn"></a>
The Amazon Resource Name (ARN) of the created procurement portal preference.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws:invoicing::[0-9]{12}:procurement-portal-preference/[-a-zA-Z0-9]+` 

## Errors
<a name="API_invoicing_CreateProcurementPortalPreference_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** ConflictException **   
The request could not be completed due to a conflict with the current state of the resource. This exception occurs when a concurrent modification is detected during an update operation, or when attempting to create a resource that already exists.    
 ** resourceId **   
The identifier of the resource that caused the conflict.  
 ** resourceType **   
The type of resource that caused the conflict.
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ServiceQuotaExceededException **   
The request was rejected because it attempted to create resources beyond the current Amazon Web Services account limits. The error message describes the limit exceeded.   
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_CreateProcurementPortalPreference_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/CreateProcurementPortalPreference) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/CreateProcurementPortalPreference) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/CreateProcurementPortalPreference) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/CreateProcurementPortalPreference) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/CreateProcurementPortalPreference) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/CreateProcurementPortalPreference) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/CreateProcurementPortalPreference) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/CreateProcurementPortalPreference) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/CreateProcurementPortalPreference) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/CreateProcurementPortalPreference) 

# DeleteInvoiceUnit
<a name="API_invoicing_DeleteInvoiceUnit"></a>

This deletes an invoice unit with the provided invoice unit ARN. 

## Request Syntax
<a name="API_invoicing_DeleteInvoiceUnit_RequestSyntax"></a>

```
{
   "InvoiceUnitArn": "string"
}
```

## Request Parameters
<a name="API_invoicing_DeleteInvoiceUnit_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [InvoiceUnitArn](#API_invoicing_DeleteInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_DeleteInvoiceUnit-request-InvoiceUnitArn"></a>
 The ARN to identify an invoice unit. This information can't be modified or deleted.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws[-a-z0-9]*:[a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+`   
Required: Yes

## Response Syntax
<a name="API_invoicing_DeleteInvoiceUnit_ResponseSyntax"></a>

```
{
   "InvoiceUnitArn": "string"
}
```

## Response Elements
<a name="API_invoicing_DeleteInvoiceUnit_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [InvoiceUnitArn](#API_invoicing_DeleteInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_DeleteInvoiceUnit-response-InvoiceUnitArn"></a>
 The ARN to identify an invoice unit. This information can't be modified or deleted.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws[-a-z0-9]*:[a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+` 

## Errors
<a name="API_invoicing_DeleteInvoiceUnit_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_DeleteInvoiceUnit_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/DeleteInvoiceUnit) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/DeleteInvoiceUnit) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/DeleteInvoiceUnit) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/DeleteInvoiceUnit) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/DeleteInvoiceUnit) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/DeleteInvoiceUnit) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/DeleteInvoiceUnit) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/DeleteInvoiceUnit) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/DeleteInvoiceUnit) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/DeleteInvoiceUnit) 

# DeleteProcurementPortalPreference
<a name="API_invoicing_DeleteProcurementPortalPreference"></a>

 * **This feature API is subject to changing at any time. For more information, see the [Amazon Service Terms](https://aws.amazon.com/service-terms/) (Betas and Previews).** * 

Deletes an existing procurement portal preference. This action cannot be undone. Active e-invoice delivery and PO retrieval configurations will be terminated.

## Request Syntax
<a name="API_invoicing_DeleteProcurementPortalPreference_RequestSyntax"></a>

```
{
   "ProcurementPortalPreferenceArn": "string"
}
```

## Request Parameters
<a name="API_invoicing_DeleteProcurementPortalPreference_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [ProcurementPortalPreferenceArn](#API_invoicing_DeleteProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_DeleteProcurementPortalPreference-request-ProcurementPortalPreferenceArn"></a>
The Amazon Resource Name (ARN) of the procurement portal preference to delete.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws:invoicing::[0-9]{12}:procurement-portal-preference/[-a-zA-Z0-9]+`   
Required: Yes

## Response Syntax
<a name="API_invoicing_DeleteProcurementPortalPreference_ResponseSyntax"></a>

```
{
   "ProcurementPortalPreferenceArn": "string"
}
```

## Response Elements
<a name="API_invoicing_DeleteProcurementPortalPreference_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [ProcurementPortalPreferenceArn](#API_invoicing_DeleteProcurementPortalPreference_ResponseSyntax) **   <a name="awscostmanagement-invoicing_DeleteProcurementPortalPreference-response-ProcurementPortalPreferenceArn"></a>
The Amazon Resource Name (ARN) of the deleted procurement portal preference.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws:invoicing::[0-9]{12}:procurement-portal-preference/[-a-zA-Z0-9]+` 

## Errors
<a name="API_invoicing_DeleteProcurementPortalPreference_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ServiceQuotaExceededException **   
The request was rejected because it attempted to create resources beyond the current Amazon Web Services account limits. The error message describes the limit exceeded.   
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_DeleteProcurementPortalPreference_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/DeleteProcurementPortalPreference) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/DeleteProcurementPortalPreference) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/DeleteProcurementPortalPreference) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/DeleteProcurementPortalPreference) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/DeleteProcurementPortalPreference) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/DeleteProcurementPortalPreference) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/DeleteProcurementPortalPreference) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/DeleteProcurementPortalPreference) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/DeleteProcurementPortalPreference) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/DeleteProcurementPortalPreference) 

# GetInvoicePDF
<a name="API_invoicing_GetInvoicePDF"></a>

Returns a URL to download the invoice document and supplemental documents associated with an invoice. The URLs are pre-signed and have expiration time. For special cases like Brazil, where Amazon generated invoice identifiers and government provided identifiers do not match, use the Amazon generated invoice identifier when making API requests. To grant IAM permission to use this operation, the caller needs the `invoicing:GetInvoicePDF` policy action.

## Request Syntax
<a name="API_invoicing_GetInvoicePDF_RequestSyntax"></a>

```
{
   "InvoiceId": "string"
}
```

## Request Parameters
<a name="API_invoicing_GetInvoicePDF_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [InvoiceId](#API_invoicing_GetInvoicePDF_RequestSyntax) **   <a name="awscostmanagement-invoicing_GetInvoicePDF-request-InvoiceId"></a>
 Your unique invoice ID.   
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `.*`   
Required: Yes

## Response Syntax
<a name="API_invoicing_GetInvoicePDF_ResponseSyntax"></a>

```
{
   "InvoicePDF": { 
      "DocumentUrl": "string",
      "DocumentUrlExpirationDate": number,
      "InvoiceId": "string",
      "SupplementalDocuments": [ 
         { 
            "DocumentUrl": "string",
            "DocumentUrlExpirationDate": number
         }
      ]
   }
}
```

## Response Elements
<a name="API_invoicing_GetInvoicePDF_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [InvoicePDF](#API_invoicing_GetInvoicePDF_ResponseSyntax) **   <a name="awscostmanagement-invoicing_GetInvoicePDF-response-InvoicePDF"></a>
 The invoice document and supplemental documents associated with the invoice.   
Type: [InvoicePDF](API_invoicing_InvoicePDF.md) object

## Errors
<a name="API_invoicing_GetInvoicePDF_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_GetInvoicePDF_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/GetInvoicePDF) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/GetInvoicePDF) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/GetInvoicePDF) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/GetInvoicePDF) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/GetInvoicePDF) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/GetInvoicePDF) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/GetInvoicePDF) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/GetInvoicePDF) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/GetInvoicePDF) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/GetInvoicePDF) 

# GetInvoiceUnit
<a name="API_invoicing_GetInvoiceUnit"></a>

This retrieves the invoice unit definition.

## Request Syntax
<a name="API_invoicing_GetInvoiceUnit_RequestSyntax"></a>

```
{
   "AsOf": number,
   "InvoiceUnitArn": "string"
}
```

## Request Parameters
<a name="API_invoicing_GetInvoiceUnit_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [AsOf](#API_invoicing_GetInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_GetInvoiceUnit-request-AsOf"></a>
 The state of an invoice unit at a specified time. You can see legacy invoice units that are currently deleted if the `AsOf` time is set to before it was deleted. If an `AsOf` is not provided, the default value is the current time.   
Type: Timestamp  
Required: No

 ** [InvoiceUnitArn](#API_invoicing_GetInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_GetInvoiceUnit-request-InvoiceUnitArn"></a>
 The ARN to identify an invoice unit. This information can't be modified or deleted.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws[-a-z0-9]*:[a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+`   
Required: Yes

## Response Syntax
<a name="API_invoicing_GetInvoiceUnit_ResponseSyntax"></a>

```
{
   "Description": "string",
   "InvoiceReceiver": "string",
   "InvoiceUnitArn": "string",
   "LastModified": number,
   "Name": "string",
   "Rule": { 
      "BillSourceAccounts": [ "string" ],
      "LinkedAccounts": [ "string" ]
   },
   "TaxInheritanceDisabled": boolean
}
```

## Response Elements
<a name="API_invoicing_GetInvoiceUnit_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [Description](#API_invoicing_GetInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_GetInvoiceUnit-response-Description"></a>
 The assigned description for an invoice unit.   
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 500.  
Pattern: `[\S\s]*` 

 ** [InvoiceReceiver](#API_invoicing_GetInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_GetInvoiceUnit-response-InvoiceReceiver"></a>
 The Amazon Web Services account ID chosen to be the receiver of an invoice unit. All invoices generated for that invoice unit will be sent to this account ID.   
Type: String  
Pattern: `\d{12}` 

 ** [InvoiceUnitArn](#API_invoicing_GetInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_GetInvoiceUnit-response-InvoiceUnitArn"></a>
 The ARN to identify an invoice unit. This information can't be modified or deleted.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws[-a-z0-9]*:[a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+` 

 ** [LastModified](#API_invoicing_GetInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_GetInvoiceUnit-response-LastModified"></a>
 The most recent date the invoice unit response was updated.   
Type: Timestamp

 ** [Name](#API_invoicing_GetInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_GetInvoiceUnit-response-Name"></a>
 The unique name of the invoice unit that is shown on the generated invoice.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 50.  
Pattern: `(?! )[\p{L}\p{N}\p{Z}-_]*(?<! )` 

 ** [Rule](#API_invoicing_GetInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_GetInvoiceUnit-response-Rule"></a>
 This is used to categorize the invoice unit. Values are Amazon Web Services account IDs. Currently, the only supported rule is `LINKED_ACCOUNT`.   
Type: [InvoiceUnitRule](API_invoicing_InvoiceUnitRule.md) object

 ** [TaxInheritanceDisabled](#API_invoicing_GetInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_GetInvoiceUnit-response-TaxInheritanceDisabled"></a>
 Whether the invoice unit based tax inheritance is/ should be enabled or disabled.   
Type: Boolean

## Errors
<a name="API_invoicing_GetInvoiceUnit_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_GetInvoiceUnit_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/GetInvoiceUnit) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/GetInvoiceUnit) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/GetInvoiceUnit) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/GetInvoiceUnit) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/GetInvoiceUnit) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/GetInvoiceUnit) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/GetInvoiceUnit) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/GetInvoiceUnit) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/GetInvoiceUnit) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/GetInvoiceUnit) 

# GetProcurementPortalPreference
<a name="API_invoicing_GetProcurementPortalPreference"></a>

 * **This feature API is subject to changing at any time. For more information, see the [Amazon Service Terms](https://aws.amazon.com/service-terms/) (Betas and Previews).** * 

Retrieves the details of a specific procurement portal preference configuration.

## Request Syntax
<a name="API_invoicing_GetProcurementPortalPreference_RequestSyntax"></a>

```
{
   "ProcurementPortalPreferenceArn": "string"
}
```

## Request Parameters
<a name="API_invoicing_GetProcurementPortalPreference_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [ProcurementPortalPreferenceArn](#API_invoicing_GetProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_GetProcurementPortalPreference-request-ProcurementPortalPreferenceArn"></a>
The Amazon Resource Name (ARN) of the procurement portal preference to retrieve.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws:invoicing::[0-9]{12}:procurement-portal-preference/[-a-zA-Z0-9]+`   
Required: Yes

## Response Syntax
<a name="API_invoicing_GetProcurementPortalPreference_ResponseSyntax"></a>

```
{
   "ProcurementPortalPreference": { 
      "AwsAccountId": "string",
      "BuyerDomain": "string",
      "BuyerIdentifier": "string",
      "Contacts": [ 
         { 
            "Email": "string",
            "Name": "string"
         }
      ],
      "CreateDate": number,
      "EinvoiceDeliveryEnabled": boolean,
      "EinvoiceDeliveryPreference": { 
         "ConnectionTestingMethod": "string",
         "EinvoiceDeliveryActivationDate": number,
         "EinvoiceDeliveryAttachmentTypes": [ "string" ],
         "EinvoiceDeliveryDocumentTypes": [ "string" ],
         "Protocol": "string",
         "PurchaseOrderDataSources": [ 
            { 
               "EinvoiceDeliveryDocumentType": "string",
               "PurchaseOrderDataSourceType": "string"
            }
         ]
      },
      "EinvoiceDeliveryPreferenceStatus": "string",
      "EinvoiceDeliveryPreferenceStatusReason": "string",
      "LastUpdateDate": number,
      "ProcurementPortalInstanceEndpoint": "string",
      "ProcurementPortalName": "string",
      "ProcurementPortalPreferenceArn": "string",
      "ProcurementPortalSharedSecret": "string",
      "PurchaseOrderRetrievalEnabled": boolean,
      "PurchaseOrderRetrievalEndpoint": "string",
      "PurchaseOrderRetrievalPreferenceStatus": "string",
      "PurchaseOrderRetrievalPreferenceStatusReason": "string",
      "Selector": { 
         "InvoiceUnitArns": [ "string" ],
         "SellerOfRecords": [ "string" ]
      },
      "SupplierDomain": "string",
      "SupplierIdentifier": "string",
      "TestEnvPreference": { 
         "BuyerDomain": "string",
         "BuyerIdentifier": "string",
         "ProcurementPortalInstanceEndpoint": "string",
         "ProcurementPortalSharedSecret": "string",
         "PurchaseOrderRetrievalEndpoint": "string",
         "SupplierDomain": "string",
         "SupplierIdentifier": "string"
      },
      "Version": number
   }
}
```

## Response Elements
<a name="API_invoicing_GetProcurementPortalPreference_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [ProcurementPortalPreference](#API_invoicing_GetProcurementPortalPreference_ResponseSyntax) **   <a name="awscostmanagement-invoicing_GetProcurementPortalPreference-response-ProcurementPortalPreference"></a>
The detailed configuration of the requested procurement portal preference.  
Type: [ProcurementPortalPreference](API_invoicing_ProcurementPortalPreference.md) object

## Errors
<a name="API_invoicing_GetProcurementPortalPreference_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** ConflictException **   
The request could not be completed due to a conflict with the current state of the resource. This exception occurs when a concurrent modification is detected during an update operation, or when attempting to create a resource that already exists.    
 ** resourceId **   
The identifier of the resource that caused the conflict.  
 ** resourceType **   
The type of resource that caused the conflict.
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ServiceQuotaExceededException **   
The request was rejected because it attempted to create resources beyond the current Amazon Web Services account limits. The error message describes the limit exceeded.   
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_GetProcurementPortalPreference_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/GetProcurementPortalPreference) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/GetProcurementPortalPreference) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/GetProcurementPortalPreference) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/GetProcurementPortalPreference) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/GetProcurementPortalPreference) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/GetProcurementPortalPreference) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/GetProcurementPortalPreference) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/GetProcurementPortalPreference) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/GetProcurementPortalPreference) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/GetProcurementPortalPreference) 

# ListInvoiceSummaries
<a name="API_invoicing_ListInvoiceSummaries"></a>

Retrieves your invoice details programmatically, without line item details.

## Request Syntax
<a name="API_invoicing_ListInvoiceSummaries_RequestSyntax"></a>

```
{
   "Filter": { 
      "BillingPeriod": { 
         "Month": number,
         "Year": number
      },
      "InvoicingEntity": "string",
      "TimeInterval": { 
         "EndDate": number,
         "StartDate": number
      }
   },
   "MaxResults": number,
   "NextToken": "string",
   "Selector": { 
      "ResourceType": "string",
      "Value": "string"
   }
}
```

## Request Parameters
<a name="API_invoicing_ListInvoiceSummaries_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [Filter](#API_invoicing_ListInvoiceSummaries_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceSummaries-request-Filter"></a>
Filters you can use to customize your invoice summary.  
Type: [InvoiceSummariesFilter](API_invoicing_InvoiceSummariesFilter.md) object  
Required: No

 ** [MaxResults](#API_invoicing_ListInvoiceSummaries_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceSummaries-request-MaxResults"></a>
The maximum number of invoice summaries a paginated response can contain.  
Type: Integer  
Valid Range: Minimum value of 1. Maximum value of 100.  
Required: No

 ** [NextToken](#API_invoicing_ListInvoiceSummaries_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceSummaries-request-NextToken"></a>
The token to retrieve the next set of results. Amazon provides the token when the response from a previous call has more results than the maximum page size.  
Type: String  
Length Constraints: Minimum length of 1.  
Pattern: `[\S\s]*`   
Required: No

 ** [Selector](#API_invoicing_ListInvoiceSummaries_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceSummaries-request-Selector"></a>
The option to retrieve details for a specific invoice by providing its unique ID. Alternatively, access information for all invoices linked to the account by providing an account ID.  
Type: [InvoiceSummariesSelector](API_invoicing_InvoiceSummariesSelector.md) object  
Required: Yes

## Response Syntax
<a name="API_invoicing_ListInvoiceSummaries_ResponseSyntax"></a>

```
{
   "InvoiceSummaries": [ 
      { 
         "AccountId": "string",
         "BaseCurrencyAmount": { 
            "AmountBreakdown": { 
               "Discounts": { 
                  "Breakdown": [ 
                     { 
                        "Amount": "string",
                        "Description": "string",
                        "Rate": "string"
                     }
                  ],
                  "TotalAmount": "string"
               },
               "Fees": { 
                  "Breakdown": [ 
                     { 
                        "Amount": "string",
                        "Description": "string",
                        "Rate": "string"
                     }
                  ],
                  "TotalAmount": "string"
               },
               "SubTotalAmount": "string",
               "Taxes": { 
                  "Breakdown": [ 
                     { 
                        "Amount": "string",
                        "Description": "string",
                        "Rate": "string"
                     }
                  ],
                  "TotalAmount": "string"
               }
            },
            "CurrencyCode": "string",
            "CurrencyExchangeDetails": { 
               "Rate": "string",
               "SourceCurrencyCode": "string",
               "TargetCurrencyCode": "string"
            },
            "TotalAmount": "string",
            "TotalAmountBeforeTax": "string"
         },
         "BillingPeriod": { 
            "Month": number,
            "Year": number
         },
         "DueDate": number,
         "Entity": { 
            "InvoicingEntity": "string"
         },
         "InvoiceId": "string",
         "InvoiceType": "string",
         "IssuedDate": number,
         "OriginalInvoiceId": "string",
         "PaymentCurrencyAmount": { 
            "AmountBreakdown": { 
               "Discounts": { 
                  "Breakdown": [ 
                     { 
                        "Amount": "string",
                        "Description": "string",
                        "Rate": "string"
                     }
                  ],
                  "TotalAmount": "string"
               },
               "Fees": { 
                  "Breakdown": [ 
                     { 
                        "Amount": "string",
                        "Description": "string",
                        "Rate": "string"
                     }
                  ],
                  "TotalAmount": "string"
               },
               "SubTotalAmount": "string",
               "Taxes": { 
                  "Breakdown": [ 
                     { 
                        "Amount": "string",
                        "Description": "string",
                        "Rate": "string"
                     }
                  ],
                  "TotalAmount": "string"
               }
            },
            "CurrencyCode": "string",
            "CurrencyExchangeDetails": { 
               "Rate": "string",
               "SourceCurrencyCode": "string",
               "TargetCurrencyCode": "string"
            },
            "TotalAmount": "string",
            "TotalAmountBeforeTax": "string"
         },
         "PurchaseOrderNumber": "string",
         "TaxCurrencyAmount": { 
            "AmountBreakdown": { 
               "Discounts": { 
                  "Breakdown": [ 
                     { 
                        "Amount": "string",
                        "Description": "string",
                        "Rate": "string"
                     }
                  ],
                  "TotalAmount": "string"
               },
               "Fees": { 
                  "Breakdown": [ 
                     { 
                        "Amount": "string",
                        "Description": "string",
                        "Rate": "string"
                     }
                  ],
                  "TotalAmount": "string"
               },
               "SubTotalAmount": "string",
               "Taxes": { 
                  "Breakdown": [ 
                     { 
                        "Amount": "string",
                        "Description": "string",
                        "Rate": "string"
                     }
                  ],
                  "TotalAmount": "string"
               }
            },
            "CurrencyCode": "string",
            "CurrencyExchangeDetails": { 
               "Rate": "string",
               "SourceCurrencyCode": "string",
               "TargetCurrencyCode": "string"
            },
            "TotalAmount": "string",
            "TotalAmountBeforeTax": "string"
         }
      }
   ],
   "NextToken": "string"
}
```

## Response Elements
<a name="API_invoicing_ListInvoiceSummaries_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [InvoiceSummaries](#API_invoicing_ListInvoiceSummaries_ResponseSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceSummaries-response-InvoiceSummaries"></a>
List of key (summary level) invoice details without line item details.  
Type: Array of [InvoiceSummary](API_invoicing_InvoiceSummary.md) objects

 ** [NextToken](#API_invoicing_ListInvoiceSummaries_ResponseSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceSummaries-response-NextToken"></a>
The token to retrieve the next set of results. Amazon provides the token when the response from a previous call has more results than the maximum page size.  
Type: String  
Length Constraints: Minimum length of 1.  
Pattern: `[\S\s]*` 

## Errors
<a name="API_invoicing_ListInvoiceSummaries_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_ListInvoiceSummaries_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/ListInvoiceSummaries) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/ListInvoiceSummaries) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/ListInvoiceSummaries) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/ListInvoiceSummaries) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/ListInvoiceSummaries) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/ListInvoiceSummaries) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/ListInvoiceSummaries) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/ListInvoiceSummaries) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/ListInvoiceSummaries) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/ListInvoiceSummaries) 

# ListInvoiceUnits
<a name="API_invoicing_ListInvoiceUnits"></a>

This fetches a list of all invoice unit definitions for a given account, as of the provided `AsOf` date.

## Request Syntax
<a name="API_invoicing_ListInvoiceUnits_RequestSyntax"></a>

```
{
   "AsOf": number,
   "Filters": { 
      "Accounts": [ "string" ],
      "BillSourceAccounts": [ "string" ],
      "InvoiceReceivers": [ "string" ],
      "Names": [ "string" ]
   },
   "MaxResults": number,
   "NextToken": "string"
}
```

## Request Parameters
<a name="API_invoicing_ListInvoiceUnits_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [AsOf](#API_invoicing_ListInvoiceUnits_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceUnits-request-AsOf"></a>
 The state of an invoice unit at a specified time. You can see legacy invoice units that are currently deleted if the `AsOf` time is set to before it was deleted. If an `AsOf` is not provided, the default value is the current time.   
Type: Timestamp  
Required: No

 ** [Filters](#API_invoicing_ListInvoiceUnits_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceUnits-request-Filters"></a>
 An optional input to the list API. If multiple filters are specified, the returned list will be a configuration that match all of the provided filters. Supported filter types are `InvoiceReceivers`, `Names`, and `Accounts`.   
Type: [Filters](API_invoicing_Filters.md) object  
Required: No

 ** [MaxResults](#API_invoicing_ListInvoiceUnits_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceUnits-request-MaxResults"></a>
The maximum number of invoice units that can be returned.   
Type: Integer  
Valid Range: Minimum value of 1. Maximum value of 500.  
Required: No

 ** [NextToken](#API_invoicing_ListInvoiceUnits_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceUnits-request-NextToken"></a>
The next token used to indicate where the returned list should start from.   
Type: String  
Length Constraints: Minimum length of 1.  
Pattern: `[\S\s]*`   
Required: No

## Response Syntax
<a name="API_invoicing_ListInvoiceUnits_ResponseSyntax"></a>

```
{
   "InvoiceUnits": [ 
      { 
         "Description": "string",
         "InvoiceReceiver": "string",
         "InvoiceUnitArn": "string",
         "LastModified": number,
         "Name": "string",
         "Rule": { 
            "BillSourceAccounts": [ "string" ],
            "LinkedAccounts": [ "string" ]
         },
         "TaxInheritanceDisabled": boolean
      }
   ],
   "NextToken": "string"
}
```

## Response Elements
<a name="API_invoicing_ListInvoiceUnits_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [InvoiceUnits](#API_invoicing_ListInvoiceUnits_ResponseSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceUnits-response-InvoiceUnits"></a>
 An invoice unit is a set of mutually exclusive accounts that correspond to your business entity.   
Type: Array of [InvoiceUnit](API_invoicing_InvoiceUnit.md) objects

 ** [NextToken](#API_invoicing_ListInvoiceUnits_ResponseSyntax) **   <a name="awscostmanagement-invoicing_ListInvoiceUnits-response-NextToken"></a>
The next token used to indicate where the returned list should start from.   
Type: String  
Length Constraints: Minimum length of 1.  
Pattern: `[\S\s]*` 

## Errors
<a name="API_invoicing_ListInvoiceUnits_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_ListInvoiceUnits_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/ListInvoiceUnits) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/ListInvoiceUnits) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/ListInvoiceUnits) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/ListInvoiceUnits) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/ListInvoiceUnits) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/ListInvoiceUnits) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/ListInvoiceUnits) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/ListInvoiceUnits) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/ListInvoiceUnits) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/ListInvoiceUnits) 

# ListProcurementPortalPreferences
<a name="API_invoicing_ListProcurementPortalPreferences"></a>

 * **This feature API is subject to changing at any time. For more information, see the [Amazon Service Terms](https://aws.amazon.com/service-terms/) (Betas and Previews).** * 

Retrieves a list of procurement portal preferences associated with the Amazon Web Services account.

## Request Syntax
<a name="API_invoicing_ListProcurementPortalPreferences_RequestSyntax"></a>

```
{
   "MaxResults": number,
   "NextToken": "string"
}
```

## Request Parameters
<a name="API_invoicing_ListProcurementPortalPreferences_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [MaxResults](#API_invoicing_ListProcurementPortalPreferences_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListProcurementPortalPreferences-request-MaxResults"></a>
The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.  
Type: Integer  
Valid Range: Minimum value of 1. Maximum value of 100.  
Required: No

 ** [NextToken](#API_invoicing_ListProcurementPortalPreferences_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListProcurementPortalPreferences-request-NextToken"></a>
The token for the next set of results. (You received this token from a previous call.)  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `\S+`   
Required: No

## Response Syntax
<a name="API_invoicing_ListProcurementPortalPreferences_ResponseSyntax"></a>

```
{
   "NextToken": "string",
   "ProcurementPortalPreferences": [ 
      { 
         "AwsAccountId": "string",
         "BuyerDomain": "string",
         "BuyerIdentifier": "string",
         "CreateDate": number,
         "EinvoiceDeliveryEnabled": boolean,
         "EinvoiceDeliveryPreferenceStatus": "string",
         "EinvoiceDeliveryPreferenceStatusReason": "string",
         "LastUpdateDate": number,
         "ProcurementPortalName": "string",
         "ProcurementPortalPreferenceArn": "string",
         "PurchaseOrderRetrievalEnabled": boolean,
         "PurchaseOrderRetrievalPreferenceStatus": "string",
         "PurchaseOrderRetrievalPreferenceStatusReason": "string",
         "Selector": { 
            "InvoiceUnitArns": [ "string" ],
            "SellerOfRecords": [ "string" ]
         },
         "SupplierDomain": "string",
         "SupplierIdentifier": "string",
         "Version": number
      }
   ]
}
```

## Response Elements
<a name="API_invoicing_ListProcurementPortalPreferences_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [NextToken](#API_invoicing_ListProcurementPortalPreferences_ResponseSyntax) **   <a name="awscostmanagement-invoicing_ListProcurementPortalPreferences-response-NextToken"></a>
The token to use to retrieve the next set of results, or null if there are no more results.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `\S+` 

 ** [ProcurementPortalPreferences](#API_invoicing_ListProcurementPortalPreferences_ResponseSyntax) **   <a name="awscostmanagement-invoicing_ListProcurementPortalPreferences-response-ProcurementPortalPreferences"></a>
The list of procurement portal preferences associated with the Amazon Web Services account.  
Type: Array of [ProcurementPortalPreferenceSummary](API_invoicing_ProcurementPortalPreferenceSummary.md) objects

## Errors
<a name="API_invoicing_ListProcurementPortalPreferences_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** ConflictException **   
The request could not be completed due to a conflict with the current state of the resource. This exception occurs when a concurrent modification is detected during an update operation, or when attempting to create a resource that already exists.    
 ** resourceId **   
The identifier of the resource that caused the conflict.  
 ** resourceType **   
The type of resource that caused the conflict.
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ServiceQuotaExceededException **   
The request was rejected because it attempted to create resources beyond the current Amazon Web Services account limits. The error message describes the limit exceeded.   
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_ListProcurementPortalPreferences_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/ListProcurementPortalPreferences) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/ListProcurementPortalPreferences) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/ListProcurementPortalPreferences) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/ListProcurementPortalPreferences) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/ListProcurementPortalPreferences) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/ListProcurementPortalPreferences) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/ListProcurementPortalPreferences) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/ListProcurementPortalPreferences) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/ListProcurementPortalPreferences) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/ListProcurementPortalPreferences) 

# ListTagsForResource
<a name="API_invoicing_ListTagsForResource"></a>

Lists the tags for a resource. 

## Request Syntax
<a name="API_invoicing_ListTagsForResource_RequestSyntax"></a>

```
{
   "ResourceArn": "string"
}
```

## Request Parameters
<a name="API_invoicing_ListTagsForResource_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [ResourceArn](#API_invoicing_ListTagsForResource_RequestSyntax) **   <a name="awscostmanagement-invoicing_ListTagsForResource-request-ResourceArn"></a>
The Amazon Resource Name (ARN) of tags to list.   
Type: String  
Length Constraints: Minimum length of 20. Maximum length of 2048.  
Pattern: `arn:aws[-a-z0-9]*:(invoicing)::[0-9]{12}:[-a-zA-Z0-9/:_]+`   
Required: Yes

## Response Syntax
<a name="API_invoicing_ListTagsForResource_ResponseSyntax"></a>

```
{
   "ResourceTags": [ 
      { 
         "Key": "string",
         "Value": "string"
      }
   ]
}
```

## Response Elements
<a name="API_invoicing_ListTagsForResource_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [ResourceTags](#API_invoicing_ListTagsForResource_ResponseSyntax) **   <a name="awscostmanagement-invoicing_ListTagsForResource-response-ResourceTags"></a>
 Adds a tag to a resource.   
Type: Array of [ResourceTag](API_invoicing_ResourceTag.md) objects  
Array Members: Minimum number of 0 items. Maximum number of 200 items.

## Errors
<a name="API_invoicing_ListTagsForResource_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_ListTagsForResource_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/ListTagsForResource) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/ListTagsForResource) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/ListTagsForResource) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/ListTagsForResource) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/ListTagsForResource) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/ListTagsForResource) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/ListTagsForResource) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/ListTagsForResource) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/ListTagsForResource) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/ListTagsForResource) 

# PutProcurementPortalPreference
<a name="API_invoicing_PutProcurementPortalPreference"></a>

 * **This feature API is subject to changing at any time. For more information, see the [Amazon Service Terms](https://aws.amazon.com/service-terms/) (Betas and Previews).** * 

Updates an existing procurement portal preference configuration. This operation can modify settings for e-invoice delivery and purchase order retrieval.

## Request Syntax
<a name="API_invoicing_PutProcurementPortalPreference_RequestSyntax"></a>

```
{
   "Contacts": [ 
      { 
         "Email": "string",
         "Name": "string"
      }
   ],
   "EinvoiceDeliveryEnabled": boolean,
   "EinvoiceDeliveryPreference": { 
      "ConnectionTestingMethod": "string",
      "EinvoiceDeliveryActivationDate": number,
      "EinvoiceDeliveryAttachmentTypes": [ "string" ],
      "EinvoiceDeliveryDocumentTypes": [ "string" ],
      "Protocol": "string",
      "PurchaseOrderDataSources": [ 
         { 
            "EinvoiceDeliveryDocumentType": "string",
            "PurchaseOrderDataSourceType": "string"
         }
      ]
   },
   "ProcurementPortalInstanceEndpoint": "string",
   "ProcurementPortalPreferenceArn": "string",
   "ProcurementPortalSharedSecret": "string",
   "PurchaseOrderRetrievalEnabled": boolean,
   "Selector": { 
      "InvoiceUnitArns": [ "string" ],
      "SellerOfRecords": [ "string" ]
   },
   "TestEnvPreference": { 
      "BuyerDomain": "string",
      "BuyerIdentifier": "string",
      "ProcurementPortalInstanceEndpoint": "string",
      "ProcurementPortalSharedSecret": "string",
      "SupplierDomain": "string",
      "SupplierIdentifier": "string"
   }
}
```

## Request Parameters
<a name="API_invoicing_PutProcurementPortalPreference_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [Contacts](#API_invoicing_PutProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-request-Contacts"></a>
Updated list of contact information for portal administrators and technical contacts.  
Type: Array of [Contact](API_invoicing_Contact.md) objects  
Array Members: Fixed number of 1 item.  
Required: Yes

 ** [EinvoiceDeliveryEnabled](#API_invoicing_PutProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-request-EinvoiceDeliveryEnabled"></a>
Updated flag indicating whether e-invoice delivery is enabled for this procurement portal preference.  
Type: Boolean  
Required: Yes

 ** [EinvoiceDeliveryPreference](#API_invoicing_PutProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-request-EinvoiceDeliveryPreference"></a>
Updated e-invoice delivery configuration including document types, attachment types, and customization settings for the portal.  
Type: [EinvoiceDeliveryPreference](API_invoicing_EinvoiceDeliveryPreference.md) object  
Required: No

 ** [ProcurementPortalInstanceEndpoint](#API_invoicing_PutProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-request-ProcurementPortalInstanceEndpoint"></a>
The updated endpoint URL where e-invoices will be delivered to the procurement portal. Must be a valid HTTPS URL.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `\S+`   
Required: No

 ** [ProcurementPortalPreferenceArn](#API_invoicing_PutProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-request-ProcurementPortalPreferenceArn"></a>
The Amazon Resource Name (ARN) of the procurement portal preference to update.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws:invoicing::[0-9]{12}:procurement-portal-preference/[-a-zA-Z0-9]+`   
Required: Yes

 ** [ProcurementPortalSharedSecret](#API_invoicing_PutProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-request-ProcurementPortalSharedSecret"></a>
The updated shared secret or authentication credential for the procurement portal. This value must be encrypted at rest.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `\S+`   
Required: No

 ** [PurchaseOrderRetrievalEnabled](#API_invoicing_PutProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-request-PurchaseOrderRetrievalEnabled"></a>
Updated flag indicating whether purchase order retrieval is enabled for this procurement portal preference.  
Type: Boolean  
Required: Yes

 ** [Selector](#API_invoicing_PutProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-request-Selector"></a>
Specifies criteria for selecting which invoices should be processed using a particular procurement portal preference.  
Type: [ProcurementPortalPreferenceSelector](API_invoicing_ProcurementPortalPreferenceSelector.md) object  
Required: No

 ** [TestEnvPreference](#API_invoicing_PutProcurementPortalPreference_RequestSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-request-TestEnvPreference"></a>
Updated configuration settings for the test environment of the procurement portal.  
Type: [TestEnvPreferenceInput](API_invoicing_TestEnvPreferenceInput.md) object  
Required: No

## Response Syntax
<a name="API_invoicing_PutProcurementPortalPreference_ResponseSyntax"></a>

```
{
   "ProcurementPortalPreferenceArn": "string"
}
```

## Response Elements
<a name="API_invoicing_PutProcurementPortalPreference_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [ProcurementPortalPreferenceArn](#API_invoicing_PutProcurementPortalPreference_ResponseSyntax) **   <a name="awscostmanagement-invoicing_PutProcurementPortalPreference-response-ProcurementPortalPreferenceArn"></a>
The Amazon Resource Name (ARN) of the updated procurement portal preference.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws:invoicing::[0-9]{12}:procurement-portal-preference/[-a-zA-Z0-9]+` 

## Errors
<a name="API_invoicing_PutProcurementPortalPreference_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** ConflictException **   
The request could not be completed due to a conflict with the current state of the resource. This exception occurs when a concurrent modification is detected during an update operation, or when attempting to create a resource that already exists.    
 ** resourceId **   
The identifier of the resource that caused the conflict.  
 ** resourceType **   
The type of resource that caused the conflict.
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ServiceQuotaExceededException **   
The request was rejected because it attempted to create resources beyond the current Amazon Web Services account limits. The error message describes the limit exceeded.   
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_PutProcurementPortalPreference_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/PutProcurementPortalPreference) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/PutProcurementPortalPreference) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/PutProcurementPortalPreference) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/PutProcurementPortalPreference) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/PutProcurementPortalPreference) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/PutProcurementPortalPreference) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/PutProcurementPortalPreference) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/PutProcurementPortalPreference) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/PutProcurementPortalPreference) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/PutProcurementPortalPreference) 

# TagResource
<a name="API_invoicing_TagResource"></a>

Adds a tag to a resource. 

## Request Syntax
<a name="API_invoicing_TagResource_RequestSyntax"></a>

```
{
   "ResourceArn": "string",
   "ResourceTags": [ 
      { 
         "Key": "string",
         "Value": "string"
      }
   ]
}
```

## Request Parameters
<a name="API_invoicing_TagResource_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [ResourceArn](#API_invoicing_TagResource_RequestSyntax) **   <a name="awscostmanagement-invoicing_TagResource-request-ResourceArn"></a>
The Amazon Resource Name (ARN) of the tags.   
Type: String  
Length Constraints: Minimum length of 20. Maximum length of 2048.  
Pattern: `arn:aws[-a-z0-9]*:(invoicing)::[0-9]{12}:[-a-zA-Z0-9/:_]+`   
Required: Yes

 ** [ResourceTags](#API_invoicing_TagResource_RequestSyntax) **   <a name="awscostmanagement-invoicing_TagResource-request-ResourceTags"></a>
 Adds a tag to a resource.   
Type: Array of [ResourceTag](API_invoicing_ResourceTag.md) objects  
Array Members: Minimum number of 0 items. Maximum number of 200 items.  
Required: Yes

## Response Elements
<a name="API_invoicing_TagResource_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.

## Errors
<a name="API_invoicing_TagResource_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ServiceQuotaExceededException **   
The request was rejected because it attempted to create resources beyond the current Amazon Web Services account limits. The error message describes the limit exceeded.   
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_TagResource_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/TagResource) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/TagResource) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/TagResource) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/TagResource) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/TagResource) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/TagResource) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/TagResource) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/TagResource) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/TagResource) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/TagResource) 

# UntagResource
<a name="API_invoicing_UntagResource"></a>

 Removes a tag from a resource. 

## Request Syntax
<a name="API_invoicing_UntagResource_RequestSyntax"></a>

```
{
   "ResourceArn": "string",
   "ResourceTagKeys": [ "string" ]
}
```

## Request Parameters
<a name="API_invoicing_UntagResource_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [ResourceArn](#API_invoicing_UntagResource_RequestSyntax) **   <a name="awscostmanagement-invoicing_UntagResource-request-ResourceArn"></a>
 The Amazon Resource Name (ARN) to untag.   
Type: String  
Length Constraints: Minimum length of 20. Maximum length of 2048.  
Pattern: `arn:aws[-a-z0-9]*:(invoicing)::[0-9]{12}:[-a-zA-Z0-9/:_]+`   
Required: Yes

 ** [ResourceTagKeys](#API_invoicing_UntagResource_RequestSyntax) **   <a name="awscostmanagement-invoicing_UntagResource-request-ResourceTagKeys"></a>
 Keys for the tags to be removed.   
Type: Array of strings  
Array Members: Minimum number of 0 items. Maximum number of 200 items.  
Length Constraints: Minimum length of 1. Maximum length of 128.  
Required: Yes

## Response Elements
<a name="API_invoicing_UntagResource_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.

## Errors
<a name="API_invoicing_UntagResource_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_UntagResource_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/UntagResource) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/UntagResource) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/UntagResource) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/UntagResource) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/UntagResource) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/UntagResource) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/UntagResource) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/UntagResource) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/UntagResource) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/UntagResource) 

# UpdateInvoiceUnit
<a name="API_invoicing_UpdateInvoiceUnit"></a>

You can update the invoice unit configuration at any time, and Amazon will use the latest configuration at the end of the month.

## Request Syntax
<a name="API_invoicing_UpdateInvoiceUnit_RequestSyntax"></a>

```
{
   "Description": "string",
   "InvoiceUnitArn": "string",
   "Rule": { 
      "BillSourceAccounts": [ "string" ],
      "LinkedAccounts": [ "string" ]
   },
   "TaxInheritanceDisabled": boolean
}
```

## Request Parameters
<a name="API_invoicing_UpdateInvoiceUnit_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [Description](#API_invoicing_UpdateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_UpdateInvoiceUnit-request-Description"></a>
The assigned description for an invoice unit. This information can't be modified or deleted.   
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 500.  
Pattern: `[\S\s]*`   
Required: No

 ** [InvoiceUnitArn](#API_invoicing_UpdateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_UpdateInvoiceUnit-request-InvoiceUnitArn"></a>
The ARN to identify an invoice unit. This information can't be modified or deleted.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws[-a-z0-9]*:[a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+`   
Required: Yes

 ** [Rule](#API_invoicing_UpdateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_UpdateInvoiceUnit-request-Rule"></a>
The `InvoiceUnitRule` object used to update invoice units.   
Type: [InvoiceUnitRule](API_invoicing_InvoiceUnitRule.md) object  
Required: No

 ** [TaxInheritanceDisabled](#API_invoicing_UpdateInvoiceUnit_RequestSyntax) **   <a name="awscostmanagement-invoicing_UpdateInvoiceUnit-request-TaxInheritanceDisabled"></a>
Whether the invoice unit based tax inheritance is/ should be enabled or disabled.   
Type: Boolean  
Required: No

## Response Syntax
<a name="API_invoicing_UpdateInvoiceUnit_ResponseSyntax"></a>

```
{
   "InvoiceUnitArn": "string"
}
```

## Response Elements
<a name="API_invoicing_UpdateInvoiceUnit_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [InvoiceUnitArn](#API_invoicing_UpdateInvoiceUnit_ResponseSyntax) **   <a name="awscostmanagement-invoicing_UpdateInvoiceUnit-response-InvoiceUnitArn"></a>
 The ARN to identify an invoice unit. This information can't be modified or deleted.   
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws[-a-z0-9]*:[a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+` 

## Errors
<a name="API_invoicing_UpdateInvoiceUnit_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_UpdateInvoiceUnit_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/UpdateInvoiceUnit) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/UpdateInvoiceUnit) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/UpdateInvoiceUnit) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/UpdateInvoiceUnit) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/UpdateInvoiceUnit) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/UpdateInvoiceUnit) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/UpdateInvoiceUnit) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/UpdateInvoiceUnit) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/UpdateInvoiceUnit) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/UpdateInvoiceUnit) 

# UpdateProcurementPortalPreferenceStatus
<a name="API_invoicing_UpdateProcurementPortalPreferenceStatus"></a>

 * **This feature API is subject to changing at any time. For more information, see the [Amazon Service Terms](https://aws.amazon.com/service-terms/) (Betas and Previews).** * 

Updates the status of a procurement portal preference, including the activation state of e-invoice delivery and purchase order retrieval features.

## Request Syntax
<a name="API_invoicing_UpdateProcurementPortalPreferenceStatus_RequestSyntax"></a>

```
{
   "EinvoiceDeliveryPreferenceStatus": "string",
   "EinvoiceDeliveryPreferenceStatusReason": "string",
   "ProcurementPortalPreferenceArn": "string",
   "PurchaseOrderRetrievalPreferenceStatus": "string",
   "PurchaseOrderRetrievalPreferenceStatusReason": "string"
}
```

## Request Parameters
<a name="API_invoicing_UpdateProcurementPortalPreferenceStatus_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [EinvoiceDeliveryPreferenceStatus](#API_invoicing_UpdateProcurementPortalPreferenceStatus_RequestSyntax) **   <a name="awscostmanagement-invoicing_UpdateProcurementPortalPreferenceStatus-request-EinvoiceDeliveryPreferenceStatus"></a>
The updated status of the e-invoice delivery preference.  
Type: String  
Valid Values: `PENDING_VERIFICATION | TEST_INITIALIZED | TEST_INITIALIZATION_FAILED | TEST_FAILED | ACTIVE | SUSPENDED`   
Required: No

 ** [EinvoiceDeliveryPreferenceStatusReason](#API_invoicing_UpdateProcurementPortalPreferenceStatus_RequestSyntax) **   <a name="awscostmanagement-invoicing_UpdateProcurementPortalPreferenceStatus-request-EinvoiceDeliveryPreferenceStatusReason"></a>
The reason for the e-invoice delivery preference status update, providing context for the change.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `[\s\S]*`   
Required: No

 ** [ProcurementPortalPreferenceArn](#API_invoicing_UpdateProcurementPortalPreferenceStatus_RequestSyntax) **   <a name="awscostmanagement-invoicing_UpdateProcurementPortalPreferenceStatus-request-ProcurementPortalPreferenceArn"></a>
The Amazon Resource Name (ARN) of the procurement portal preference to update.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws:invoicing::[0-9]{12}:procurement-portal-preference/[-a-zA-Z0-9]+`   
Required: Yes

 ** [PurchaseOrderRetrievalPreferenceStatus](#API_invoicing_UpdateProcurementPortalPreferenceStatus_RequestSyntax) **   <a name="awscostmanagement-invoicing_UpdateProcurementPortalPreferenceStatus-request-PurchaseOrderRetrievalPreferenceStatus"></a>
The updated status of the purchase order retrieval preference.  
Type: String  
Valid Values: `PENDING_VERIFICATION | TEST_INITIALIZED | TEST_INITIALIZATION_FAILED | TEST_FAILED | ACTIVE | SUSPENDED`   
Required: No

 ** [PurchaseOrderRetrievalPreferenceStatusReason](#API_invoicing_UpdateProcurementPortalPreferenceStatus_RequestSyntax) **   <a name="awscostmanagement-invoicing_UpdateProcurementPortalPreferenceStatus-request-PurchaseOrderRetrievalPreferenceStatusReason"></a>
The reason for the purchase order retrieval preference status update, providing context for the change.  
Type: String  
Length Constraints: Minimum length of 0. Maximum length of 1024.  
Pattern: `[\s\S]*`   
Required: No

## Response Syntax
<a name="API_invoicing_UpdateProcurementPortalPreferenceStatus_ResponseSyntax"></a>

```
{
   "ProcurementPortalPreferenceArn": "string"
}
```

## Response Elements
<a name="API_invoicing_UpdateProcurementPortalPreferenceStatus_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [ProcurementPortalPreferenceArn](#API_invoicing_UpdateProcurementPortalPreferenceStatus_ResponseSyntax) **   <a name="awscostmanagement-invoicing_UpdateProcurementPortalPreferenceStatus-response-ProcurementPortalPreferenceArn"></a>
The Amazon Resource Name (ARN) of the procurement portal preference with updated status.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 256.  
Pattern: `arn:aws:invoicing::[0-9]{12}:procurement-portal-preference/[-a-zA-Z0-9]+` 

## Errors
<a name="API_invoicing_UpdateProcurementPortalPreferenceStatus_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
You don't have sufficient access to perform this action.    
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

 ** ConflictException **   
The request could not be completed due to a conflict with the current state of the resource. This exception occurs when a concurrent modification is detected during an update operation, or when attempting to create a resource that already exists.    
 ** resourceId **   
The identifier of the resource that caused the conflict.  
 ** resourceType **   
The type of resource that caused the conflict.
HTTP Status Code: 400

 ** InternalServerException **   
The processing request failed because of an unknown error, exception, or failure.     
 ** retryAfterSeconds **   
The processing request failed because of an unknown error, exception, or failure.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource could not be found.     
 ** resourceName **   
The resource could not be found.
HTTP Status Code: 400

 ** ServiceQuotaExceededException **   
The request was rejected because it attempted to create resources beyond the current Amazon Web Services account limits. The error message describes the limit exceeded.   
HTTP Status Code: 400

 ** ThrottlingException **   
The request was denied due to request throttling.  
HTTP Status Code: 400

 ** ValidationException **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.     
 ** fieldList **   
 The input fails to satisfy the constraints specified by an Amazon Web Services service.   
 ** reason **   
You don't have sufficient access to perform this action.   
 ** resourceName **   
You don't have sufficient access to perform this action. 
HTTP Status Code: 400

## See Also
<a name="API_invoicing_UpdateProcurementPortalPreferenceStatus_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/invoicing-2024-12-01/UpdateProcurementPortalPreferenceStatus) 