

# Product page


Represents a product page.

## URI


`/v2/portalproducts/portalProductId/productpages/productPageId`

## HTTP methods


### GET


**Operation ID:** `GetProductPage`

Gets a product page of a portal product.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| portalProductId | String | True | The portal product identifier. | 
| productPageId | String | True | The portal product identifier. | 


**Query parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| resourceOwnerAccountId | String | False | The account ID of the resource owner of the portal product. | 


**Responses**  

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

### DELETE


**Operation ID:** `DeleteProductPage`

Deletes a product page of a portal product.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| portalProductId | String | True | The portal product identifier. | 
| productPageId | String | True | The portal product identifier. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 204 | None | The request has succeeded, and there is no additional content to send in the response payload body. | 
| 400 | BadRequestExceptionResponseContent | One of the parameters in the request is invalid. | 
| 403 | AccessDeniedExceptionResponseContent | 403 response | 
| 404 | NotFoundExceptionResponseContent | The resource specified in the request was not found. | 
| 429 | LimitExceededExceptionResponseContent | The client is sending more than the allowed number of requests per unit of time. | 

### PATCH


**Operation ID:** `UpdateProductPage`

Updates a product page of a portal product.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| portalProductId | String | True | The portal product identifier. | 
| productPageId | String | True | The portal product identifier. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 | UpdateProductPageResponseContent | 200 response | 
| 400 | BadRequestExceptionResponseContent | One of the parameters in the request is invalid. | 
| 403 | AccessDeniedExceptionResponseContent | 403 response | 
| 404 | NotFoundExceptionResponseContent | The resource specified in the request was not found. | 
| 429 | LimitExceededExceptionResponseContent | The client is sending more than the allowed number of requests per unit of time. | 

## Schemas


### Request bodies


#### PATCH schema
PATCH

```
{
  "displayContent": {
    "title": "string",
    "body": "string"
  }
}
```

### Response bodies


#### GetProductPageResponseContent schema
GetProductPageResponseContent

```
{
  "displayContent": {
    "title": "string",
    "body": "string"
  },
  "productPageId": "string",
  "lastModified": "string",
  "productPageArn": "string"
}
```

#### UpdateProductPageResponseContent schema
UpdateProductPageResponseContent

```
{
  "displayContent": {
    "title": "string",
    "body": "string"
  },
  "productPageId": "string",
  "lastModified": "string",
  "productPageArn": "string"
}
```

#### BadRequestExceptionResponseContent schema
BadRequestExceptionResponseContent

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

#### AccessDeniedExceptionResponseContent schema
AccessDeniedExceptionResponseContent

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

#### NotFoundExceptionResponseContent schema
NotFoundExceptionResponseContent

```
{
  "message": "string",
  "resourceType": "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. | 

### DisplayContent


The content of the product page.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| body | stringMinLength: 1MaxLength: 32768 | True | The body. | 
| title | stringMinLength: 1MaxLength: 255 | True | The title. | 

### GetProductPageResponseContent


Gets a product page.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| displayContent | [DisplayContent](#portalproducts-portalproductid-productpages-productpageid-model-displaycontent) | True | The content of the product page. | 
| lastModified | stringFormat: date-time | True | The timestamp when the product page was last modified. | 
| productPageArn | stringMinLength: 20MaxLength: 2048 | True | The ARN of the product page. | 
| productPageId | stringPattern: `^[a-z0-9]+$`MinLength: 10MaxLength: 30 | True | The product page identifier. | 

### 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. | 

### NotFoundExceptionResponseContent


The response content for not found exception.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| message | string | False | The message of the not found exception response content. | 
| resourceType | string | False | The resource type of the not found exception response content. | 

### UpdateProductPageRequestContent


Update a product page.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| displayContent | [DisplayContent](#portalproducts-portalproductid-productpages-productpageid-model-displaycontent) | False | The content of the product page. | 

### UpdateProductPageResponseContent


Updates a product page.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| displayContent | [DisplayContent](#portalproducts-portalproductid-productpages-productpageid-model-displaycontent) | False | The content of the product page. | 
| lastModified | stringFormat: date-time | True | The timestamp when the product page was last modified. | 
| productPageArn | stringMinLength: 20MaxLength: 2048 | True | The ARN of the product page. | 
| productPageId | stringPattern: `^[a-z0-9]+$`MinLength: 10MaxLength: 30 | True | The product page identifier. | 