# Obtain user purchase details - DescribeWafUserTransactionInfo

## Overview

Obtain detailed information about user purchases, including resource ID, version type, expiration time, payment method, and purchase price.






## Definition

### Public Parameters

| Parameter Name | Type | Description Information | Required |
|:---|:---|:---|:---|
| **Action**     | string  | Corresponding API command name, the current API is `DescribeWafUserTransactionInfo`.                      | **Yes** |
| **PublicKey**  | string  | The user's public key can be obtained from [Console](https://console.dezai.com/uaccount/api_manage)                                             | **Yes** |
| **Signature**  | string  | User signature generated based on public key and API command, see [Signature Algorithm](/docs/api/summary/signature.md)  | **Yes** |

### Request Parameters

| Parameter Name | Type | Description Information | Required |
|:---|:---|:---|:---|
| **ProjectId** | string | Project ID. If not filled in, the default project is used, sub-accounts must be filled in. Please refer to the [GetProjectList interface](/docs/api/summary/get_project_list). |No|

### Response Field

| Field Name | Type | Description Information | Required |
|:---|:---|:---|:---|
| **RetCode** | int | Return status code. If it is 0, it means successful return. If it is not 0, it means failure. |**Yes**|
| **Action** | string | Operation command name. |**Yes**|
| **Message** | string | Returns an error message, providing detailed description when `RetCode` is non-zero. |No|
| **TransactionInfo** | [*TransactionInfo*](#transactioninfo) | Detailed information about the user's purchase of services, refer to TransactionInfo |**Yes**|

#### Data Model


#### TransactionInfo

| Field Name | Type | Description Information | Required |
|:---|:---|:---|:---|
| **ResourceId** | string | Resource ID |No|
| **Editon** | string | Version Type |No|
| **ExpireTime** | string | Service Expiration Time |No|
| **ChargeType** | string | Payment Type |No|
| **TransactionId** | int | Unique Index of Resources |No|
| **TransactionNo** | string | Resource Order Number |No|
| **HasWaf** | boolean | Have you purchased WAF? |No|
| **Expired** | string | Whether it has expired, if this field exists, it means it has expired. |No|
| **WorkZone** | string | Main Workspace |No|
| **WorkRegions** | string | Deployment area, when WorkZone is ULB, display as ULB id (list) |No|
| **Serving** | string | Is the service in effect? |No|
| **Servers** | object | When WorkZone is set to ULB, display the corresponding domain name list on ULB. |No|
| **LogStorage** | int | Enable log extension package? |No|

## Example

### Request Example
    
```
https://api.dezai.com/?Action=DescribeWafUserTransactionInfo
&ProjectId=org-xxx
```

### Response Example
    
```json
{
  "Action": "DescribeWafUserTransactionInfoResponse",
  "RetCode": 0,
  "TransactionInfo": {
    "ChargeType": "Month",
    "CreateTime": "2017-04-10 13:30:05",
    "Editon": "Professional",
    "ExpireTime": "2020-06-03 00:00:00",
    "Expired": "",
    "HasWaf": true,
    "LogStorage": 0,
    "ResourceId": "usecure_uewaf-lbjszn",
    "Serving": "Y",
    "TransactionId": 31,
    "TransactionNo": "20170410050160160645159",
    "WorkRegions": "cn-gd,cn-sh,hk,cn-bj,tw-tp,us-ca,kr-seoul,jpn-tky",
    "WorkZone": "mainland"
  }
}
```





