

# Portal products


Represents the collection of portal products.

## URI


`/v2/portalproducts`

## HTTP methods


### GET


**Operation ID:** `ListPortalProducts`

Lists portal products.


**Query parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| resourceOwner | String | False | The resource owner of the portal product. | 
| nextToken | String | False | The next page of elements from this collection. Not valid for the last element of the collection. | 
| maxResults | String | False | The maximum number of elements to be returned for this resource. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 | ListPortalProductsResponseContent | Success | 
| 400 | BadRequestExceptionResponseContent | One of the parameters in the request is invalid. | 
| 403 | AccessDeniedExceptionResponseContent | 403 response | 
| 429 | LimitExceededExceptionResponseContent | The client is sending more than the allowed number of requests per unit of time. | 

### POST


**Operation ID:** `CreatePortalProduct`

Creates a new portal product.


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 201 | CreatePortalProductResponseContent | The request has succeeded and has resulted in the creation of a resource. | 
| 400 | BadRequestExceptionResponseContent | One of the parameters in the request is invalid. | 
| 403 | AccessDeniedExceptionResponseContent | 403 response | 
| 429 | LimitExceededExceptionResponseContent | The client is sending more than the allowed number of requests per unit of time. | 

## Schemas


### Request bodies


#### POST schema
POST

```
{
  "displayName": "string",
  "description": "string",
  "tags": {
  }
}
```

### Response bodies


#### ListPortalProductsResponseContent schema
ListPortalProductsResponseContent

```
{
  "nextToken": "string",
  "items": [
    {
      "displayName": "string",
      "description": "string",
      "portalProductId": "string",
      "portalProductArn": "string",
      "lastModified": "string",
      "tags": {
      }
    }
  ]
}
```

#### CreatePortalProductResponseContent schema
CreatePortalProductResponseContent

```
{
  "displayName": "string",
  "displayOrder": {
    "productPageArns": [
      "string"
    ],
    "contents": [
      {
        "sectionName": "string",
        "productRestEndpointPageArns": [
          "string"
        ]
      }
    ],
    "overviewPageArn": "string"
  },
  "description": "string",
  "portalProductId": "string",
  "portalProductArn": "string",
  "lastModified": "string",
  "tags": {
  }
}
```

#### BadRequestExceptionResponseContent schema
BadRequestExceptionResponseContent

```
{
  "message": "string"
}
```

#### AccessDeniedExceptionResponseContent schema
AccessDeniedExceptionResponseContent

```
{
  "message": "string"
}
```

#### LimitExceededExceptionResponseContent schema
LimitExceededExceptionResponseContent

```
{
  "message": "string",
  "limitType": "string"
}
```

## Properties


### AccessDeniedExceptionResponseContent


The error message.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| message | string | False | The message. | 

### BadRequestExceptionResponseContent


The response content for bad request exception.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| message | string | False | The message of the bad request exception response content. | 

### CreatePortalProductRequestContent


Creates a portal product.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| description | stringMinLength: 0MaxLength: 1024 | False | A description of the portal product. | 
| displayName | stringMinLength: 1MaxLength: 255 | True | The name of the portal product as it appears in a published portal. | 
| tags | [Tags](#portalproducts-model-tags) | False | The collection of tags. Each tag element is associated with a given resource. | 

### CreatePortalProductResponseContent


Creates a portal product.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| description | stringMinLength: 0MaxLength: 1024 | False | A description of the portal product. | 
| displayName | stringMinLength: 1MaxLength: 255 | True | The display name for the portal product. | 
| displayOrder | [DisplayOrder](#portalproducts-model-displayorder) | False | The visual ordering of the product pages and product REST endpoint pages in a published portal. | 
| lastModified | stringFormat: date-time | True | The timestamp when the portal product was last modified. | 
| portalProductArn | stringMinLength: 20MaxLength: 2048 | True | The ARN of the portal product. | 
| portalProductId | stringPattern: `^[a-z0-9]+$`MinLength: 10MaxLength: 30 | True | The portal product identifier. | 
| tags | [Tags](#portalproducts-model-tags) | False | The collection of tags. Each tag element is associated with a given resource. | 

### DisplayOrder


The display order.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| contents | Array of type [Section](#portalproducts-model-section) | False | Represents a list of sections which include section name and list of product REST endpoints for a product. | 
| overviewPageArn | stringMinLength: 20MaxLength: 2048 | False | The ARN of the overview page. | 
| productPageArns | Array of type stringMinLength: 20MaxLength: 2048 | False | The product page ARNs. | 

### LimitExceededExceptionResponseContent


The response content for limit exceeded exception.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| limitType | string | False | The limit type of the limit exceeded exception response content. | 
| message | string | False | The message of the limit exceeded exception response content. | 

### ListPortalProductsResponseContent


Lists portal products.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| items | Array of type [PortalProductSummary](#portalproducts-model-portalproductsummary) | False | The elements from this collection. | 
| nextToken | stringMinLength: 1MaxLength: 2048 | False | The next page of elements from this collection. Not valid for the last element of the collection. | 

### PortalProductSummary


Represents a portal product.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| description | stringMinLength: 0MaxLength: 1024 | True | The description. | 
| displayName | stringMinLength: 1MaxLength: 255 | True | The display name of a portal product. | 
| lastModified | stringFormat: date-time | True | The timestamp when the portal product was last modified. | 
| portalProductArn | stringMinLength: 20MaxLength: 2048 | True | The ARN of a portal product. | 
| portalProductId | stringPattern: `^[a-z0-9]+$`MinLength: 10MaxLength: 30 | True | The portal product identifier. | 
| tags | [Tags](#portalproducts-model-tags) | False | The collection of tags. Each tag element is associated with a given resource. | 

### Section


Contains the section name and list of product REST endpoints for a product.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| productRestEndpointPageArns | Array of type stringMinLength: 20MaxLength: 2048 | True | The ARNs of the product REST endpoint pages in a portal product. | 
| sectionName | string | True | The section name. | 

### Tags


Represents a collection of tags associated with the resource.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| `*` | string | False |  | 

## See also


For more information about using this API in one of the language-specific AWS SDKs and references, see the following:

### ListPortalProducts

+ [AWS Command Line Interface V2](/goto/cli2/apigatewayv2-2018-11-29/ListPortalProducts)
+ [AWS SDK for .NET V4](/goto/DotNetSDKV4/apigatewayv2-2018-11-29/ListPortalProducts)
+ [AWS SDK for C\$1\$1](/goto/SdkForCpp/apigatewayv2-2018-11-29/ListPortalProducts)
+ [AWS SDK for Go v2](/goto/SdkForGoV2/apigatewayv2-2018-11-29/ListPortalProducts)
+ [AWS SDK for Java V2](/goto/SdkForJavaV2/apigatewayv2-2018-11-29/ListPortalProducts)
+ [AWS SDK for JavaScript V3](/goto/SdkForJavaScriptV3/apigatewayv2-2018-11-29/ListPortalProducts)
+ [AWS SDK for Kotlin](/goto/SdkForKotlin/apigatewayv2-2018-11-29/ListPortalProducts)
+ [AWS SDK for PHP V3](/goto/SdkForPHPV3/apigatewayv2-2018-11-29/ListPortalProducts)
+ [AWS SDK for Python](/goto/boto3/apigatewayv2-2018-11-29/ListPortalProducts)
+ [AWS SDK for Ruby V3](/goto/SdkForRubyV3/apigatewayv2-2018-11-29/ListPortalProducts)

### CreatePortalProduct

+ [AWS Command Line Interface V2](/goto/cli2/apigatewayv2-2018-11-29/CreatePortalProduct)
+ [AWS SDK for .NET V4](/goto/DotNetSDKV4/apigatewayv2-2018-11-29/CreatePortalProduct)
+ [AWS SDK for C\$1\$1](/goto/SdkForCpp/apigatewayv2-2018-11-29/CreatePortalProduct)
+ [AWS SDK for Go v2](/goto/SdkForGoV2/apigatewayv2-2018-11-29/CreatePortalProduct)
+ [AWS SDK for Java V2](/goto/SdkForJavaV2/apigatewayv2-2018-11-29/CreatePortalProduct)
+ [AWS SDK for JavaScript V3](/goto/SdkForJavaScriptV3/apigatewayv2-2018-11-29/CreatePortalProduct)
+ [AWS SDK for Kotlin](/goto/SdkForKotlin/apigatewayv2-2018-11-29/CreatePortalProduct)
+ [AWS SDK for PHP V3](/goto/SdkForPHPV3/apigatewayv2-2018-11-29/CreatePortalProduct)
+ [AWS SDK for Python](/goto/boto3/apigatewayv2-2018-11-29/CreatePortalProduct)
+ [AWS SDK for Ruby V3](/goto/SdkForRubyV3/apigatewayv2-2018-11-29/CreatePortalProduct)