# Web Cloud › Managed WordPress API

> Part of the OVHcloud developer hub. Index of every page and section: https://developers.eu.ovhcloud.com/llms.txt
> The Web Cloud product's sections: https://developers.eu.ovhcloud.com/reference/web-cloud/llms.txt
> Everything in one file: https://developers.eu.ovhcloud.com/llms-full.txt

> 11 operations of the OVHcloud API. Calls carry `authorization: Bearer $OVH_TOKEN`; the EU host is shown, Canada and the United States answer on api.ca.ovhcloud.com and api.us.ovhcloud.com.

Page: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/

OpenAPI v1: https://api.eu.ovhcloud.com/1.0/__schemas/developer-hub-navigation/web-cloud/managed-wordpress.json?format=openapi3
OpenAPI v2: https://api.eu.ovhcloud.com/v2/__schemas/developer-hub-navigation/web-cloud/managed-wordpress.json?format=openapi3

## Operations

- `GET /managedCMS/resource` — List services
- `GET /managedCMS/reference/availableCMS` — List available CMS
- `GET /managedCMS/reference/availableLanguages` — List available languages
- `GET /managedCMS/reference/supportedPHPVersions` — List supported PHP versions
- `GET /managedCMS/resource/{serviceId}` — Get a service
- `POST /managedCMS/resource/{serviceId}/flushCDN` — Flush the CDN of all websites
- `PUT /managedCMS/resource/{serviceId}` — Update a service
- `GET /managedCMS/customerApproval` — List customer approvals
- `GET /managedCMS/customerApproval/{customerApprovalId}` — Get a customer approval
- `POST /managedCMS/resource/{serviceId}/dashboard/applicationPassword` — Create an application password on a dashboard of the service
- `POST /managedCMS/customerApproval` — Register a customer approval

## List services

`GET /v2/managedCMS/resource`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#get-managedcms-resource

**Status:** Alpha version  
**IAM actions:** `managedCMS:apiovh:get`

Returns the Managed CMS services of the account.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `X-Pagination-Cursor` | header | string |  | Pagination cursor |
| `X-Pagination-Size` | header | integer |  | Pagination size |
| `iamTags` | query | object |  | Filter resources on IAM tags |

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | managedCMS.ServiceWithIAM[] | successful operation |

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `checksum` | string | read-only | Computed hash used to control concurrent modification requests. Here, it represents the current target specification value. |
| `currentState` | managedCMS.ServiceCurrentState | read-only | Current state of the service |
| `currentState.createdAt` | string (date-time) | read-only | Date of creation of the service |
| `currentState.dashboards` | managedCMS.ServiceDashboards | read-only | URLs of the service's dashboards |
| `currentState.dashboards.wordpress` | string | read-only | URL of the dashboard allowing to manage WordPress websites |
| `currentState.plan` | string | read-only | Plan of the subscription |
| `currentState.quotas` | managedCMS.ServiceQuotas | read-only | Information about the service's quotas |
| `currentState.quotas.disk` | managedCMS.ServiceDiskQuota | read-only | Information about the service's disk quota |
| `currentState.quotas.visits` | managedCMS.ServiceVisitsQuota | read-only | Information about the service's visits quota |
| `currentState.quotas.websites` | managedCMS.ServiceWebsitesQuota | read-only | Information about the service's websites quota |
| `currentTasks` | common.CurrentTask[] | read-only | Ongoing asynchronous tasks related to the service |
| `currentTasks[].errors` | common.TaskError[] | read-only | Errors that occurred on the task |
| `currentTasks[].errors[].message` | string | read-only | Error description |
| `currentTasks[].id` | string (uuid) | read-only | Identifier of the current task |
| `currentTasks[].link` | string | read-only | Link to the task details |
| `currentTasks[].status` | common.CurrentTaskStatusEnum | read-only | Current global status of the current task — one of `ERROR`, `PENDING`, `RUNNING`, `SCHEDULED`, `WAITING_USER_INPUT` |
| `currentTasks[].type` | string | read-only | Type of the current task |
| `iam` | iam.ResourceMetadata | read-only | IAM resource metadata |
| `iam.displayName` | string | read-only | Resource display name |
| `iam.id` | string (uuid) | read-only | Unique identifier of the resource |
| `iam.state` | iam.ResourceMetadata.StateEnum | read-only | Resource state — one of `EXPIRED`, `IN_CREATION`, `OK`, `SUSPENDED` |
| `iam.tags` | object | read-only | Resource tags. Tags that were internally computed are prefixed with ovh: |
| `iam.urn` | string | read-only | Unique resource name used in policies |
| `id` | string (uuid) | read-only | Unique identifier of the service |
| `resourceStatus` | common.ResourceStatusEnum | read-only | Service readiness in the system — one of `CREATING`, `CREATION_PLANNED`, `DELETING`, `ERROR`, `OUT_OF_SYNC`, `READY`, `SUSPENDED`, `UNKNOWN`, `UPDATING` |

```json
[
  {
    "checksum": "string",
    "currentState": {
      "createdAt": "2024-01-01T12:00:00Z",
      "dashboards": {
        "wordpress": "string"
      },
      "plan": "string",
      "quotas": {
        "disk": {
          "additionalQuotaBytes": 0,
          "planQuotaBytes": 0,
          "totalQuotaBytes": 0,
          "totalUsageBytes": 0
        },
        "visits": {
          "boosts": [
            {
              "createdAt": null,
              "currentAmount": null,
              "expiresAt": null,
              "initialAmount": null
            }
          ],
          "planQuota": 0,
          "totalAdditionalQuota": 0,
          "totalQuota": 0,
          "totalUsage": 0
        },
        "websites": {
          "additionalQuota": 0,
          "planQuota": 0,
          "totalQuota": 0,
          "totalUsage": 0
        }
      }
    },
    "currentTasks": [
      {
        "errors": [
          {
            "message": "string"
          }
        ],
        "id": "00000000-0000-0000-0000-000000000000",
        "link": "string",
        "status": "ERROR",
        "type": "string"
      }
    ],
    "iam": {
      "displayName": "string",
      "id": "00000000-0000-0000-0000-000000000000",
      "state": "EXPIRED",
      "tags": {
        "key": "string"
      },
      "urn": "string"
    },
    "id": "00000000-0000-0000-0000-000000000000",
    "resourceStatus": "CREATING"
  }
]
```

### Example

```bash
curl -X GET \
  "https://api.eu.ovhcloud.com/v2/managedCMS/resource" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN"
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

result = client.get("/v2/managedCMS/resource")

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

$result = $ovh->get("/v2/managedCMS/resource");

print_r($result);
?>
```

## List available CMS

`GET /v2/managedCMS/reference/availableCMS`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#get-managedcms-reference-availablecms

**Status:** Alpha version

Returns the content management systems a website can be created with.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `X-Pagination-Cursor` | header | string |  | Pagination cursor |
| `X-Pagination-Size` | header | integer |  | Pagination size |

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | managedCMS.CMSEnum[] | successful operation |

```json
[
  "WORDPRESS"
]
```

### Example

```bash
curl -X GET \
  "https://api.eu.ovhcloud.com/v2/managedCMS/reference/availableCMS" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN"
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

result = client.get("/v2/managedCMS/reference/availableCMS")

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

$result = $ovh->get("/v2/managedCMS/reference/availableCMS");

print_r($result);
?>
```

## List available languages

`GET /v2/managedCMS/reference/availableLanguages`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#get-managedcms-reference-availablelanguages

**Status:** Alpha version

Returns the languages a website can be configured with at creation, with their display name. Filter them by CMS.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `X-Pagination-Cursor` | header | string |  | Pagination cursor |
| `X-Pagination-Size` | header | integer |  | Pagination size |
| `cms` | query | managedCMS.CMSEnum | yes | For which content management system — one of `WORDPRESS` |

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | managedCMS.Language[] | successful operation |

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `code` | managedCMS.LanguageEnum | read-only | Code to send when setting the language of a CMS — one of `de_DE`, `en_GB`, `en_US`, `es_ES`, `fr_CA`, `fr_FR`, `it_IT`, `pl_PL`, `pt_PT` |
| `name` | string | read-only | Name of the language as displayed in the interfaces |

```json
[
  {
    "code": "de_DE",
    "name": "string"
  }
]
```

### Example

```bash
curl -X GET \
  "https://api.eu.ovhcloud.com/v2/managedCMS/reference/availableLanguages" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN"
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

result = client.get("/v2/managedCMS/reference/availableLanguages")

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

$result = $ovh->get("/v2/managedCMS/reference/availableLanguages");

print_r($result);
?>
```

## List supported PHP versions

`GET /v2/managedCMS/reference/supportedPHPVersions`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#get-managedcms-reference-supportedphpversions

**Status:** Alpha version

Returns the PHP versions a website can use. Filter them by CMS.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `X-Pagination-Cursor` | header | string |  | Pagination cursor |
| `X-Pagination-Size` | header | integer |  | Pagination size |
| `cms` | query | managedCMS.CMSEnum | yes | For which content management system — one of `WORDPRESS` |

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | string[] | successful operation |

```json
[
  "string"
]
```

### Example

```bash
curl -X GET \
  "https://api.eu.ovhcloud.com/v2/managedCMS/reference/supportedPHPVersions" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN"
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

result = client.get("/v2/managedCMS/reference/supportedPHPVersions")

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

$result = $ovh->get("/v2/managedCMS/reference/supportedPHPVersions");

print_r($result);
?>
```

## Get a service

`GET /v2/managedCMS/resource/{serviceId}`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#get-managedcms-resource-serviceid

**Status:** Alpha version  
**IAM actions:** `managedCMS:apiovh:get`

Returns the plan, dashboard URLs and disk, visits and websites quotas of the service, with its running tasks.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `serviceId` | path | string (uuid) | yes | Service ID |

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | managedCMS.ServiceWithIAM | successful operation |

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `checksum` | string | read-only | Computed hash used to control concurrent modification requests. Here, it represents the current target specification value. |
| `currentState` | managedCMS.ServiceCurrentState | read-only | Current state of the service |
| `currentState.createdAt` | string (date-time) | read-only | Date of creation of the service |
| `currentState.dashboards` | managedCMS.ServiceDashboards | read-only | URLs of the service's dashboards |
| `currentState.dashboards.wordpress` | string | read-only | URL of the dashboard allowing to manage WordPress websites |
| `currentState.plan` | string | read-only | Plan of the subscription |
| `currentState.quotas` | managedCMS.ServiceQuotas | read-only | Information about the service's quotas |
| `currentState.quotas.disk` | managedCMS.ServiceDiskQuota | read-only | Information about the service's disk quota |
| `currentState.quotas.visits` | managedCMS.ServiceVisitsQuota | read-only | Information about the service's visits quota |
| `currentState.quotas.websites` | managedCMS.ServiceWebsitesQuota | read-only | Information about the service's websites quota |
| `currentTasks` | common.CurrentTask[] | read-only | Ongoing asynchronous tasks related to the service |
| `currentTasks[].errors` | common.TaskError[] | read-only | Errors that occurred on the task |
| `currentTasks[].errors[].message` | string | read-only | Error description |
| `currentTasks[].id` | string (uuid) | read-only | Identifier of the current task |
| `currentTasks[].link` | string | read-only | Link to the task details |
| `currentTasks[].status` | common.CurrentTaskStatusEnum | read-only | Current global status of the current task — one of `ERROR`, `PENDING`, `RUNNING`, `SCHEDULED`, `WAITING_USER_INPUT` |
| `currentTasks[].type` | string | read-only | Type of the current task |
| `iam` | iam.ResourceMetadata | read-only | IAM resource metadata |
| `iam.displayName` | string | read-only | Resource display name |
| `iam.id` | string (uuid) | read-only | Unique identifier of the resource |
| `iam.state` | iam.ResourceMetadata.StateEnum | read-only | Resource state — one of `EXPIRED`, `IN_CREATION`, `OK`, `SUSPENDED` |
| `iam.tags` | object | read-only | Resource tags. Tags that were internally computed are prefixed with ovh: |
| `iam.urn` | string | read-only | Unique resource name used in policies |
| `id` | string (uuid) | read-only | Unique identifier of the service |
| `resourceStatus` | common.ResourceStatusEnum | read-only | Service readiness in the system — one of `CREATING`, `CREATION_PLANNED`, `DELETING`, `ERROR`, `OUT_OF_SYNC`, `READY`, `SUSPENDED`, `UNKNOWN`, `UPDATING` |

```json
{
  "checksum": "string",
  "currentState": {
    "createdAt": "2024-01-01T12:00:00Z",
    "dashboards": {
      "wordpress": "string"
    },
    "plan": "string",
    "quotas": {
      "disk": {
        "additionalQuotaBytes": 0,
        "planQuotaBytes": 0,
        "totalQuotaBytes": 0,
        "totalUsageBytes": 0
      },
      "visits": {
        "boosts": [
          {
            "createdAt": "2024-01-01T12:00:00Z",
            "currentAmount": 0,
            "expiresAt": "2024-01-01T12:00:00Z",
            "initialAmount": 0
          }
        ],
        "planQuota": 0,
        "totalAdditionalQuota": 0,
        "totalQuota": 0,
        "totalUsage": 0
      },
      "websites": {
        "additionalQuota": 0,
        "planQuota": 0,
        "totalQuota": 0,
        "totalUsage": 0
      }
    }
  },
  "currentTasks": [
    {
      "errors": [
        {
          "message": "string"
        }
      ],
      "id": "00000000-0000-0000-0000-000000000000",
      "link": "string",
      "status": "ERROR",
      "type": "string"
    }
  ],
  "iam": {
    "displayName": "string",
    "id": "00000000-0000-0000-0000-000000000000",
    "state": "EXPIRED",
    "tags": {
      "key": "string"
    },
    "urn": "string"
  },
  "id": "00000000-0000-0000-0000-000000000000",
  "resourceStatus": "CREATING"
}
```

### Example

```bash
curl -X GET \
  "https://api.eu.ovhcloud.com/v2/managedCMS/resource/{serviceId}" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN"
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

result = client.get("/v2/managedCMS/resource/{serviceId}")

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

$result = $ovh->get("/v2/managedCMS/resource/{serviceId}");

print_r($result);
?>
```

## Flush the CDN of all websites

`POST /v2/managedCMS/resource/{serviceId}/flushCDN`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#post-managedcms-resource-serviceid-flushcdn

**Status:** Alpha version  
**IAM actions:** `managedCMS:apiovh:cdn/flush`

Flushes the CDN cache of all the websites of the service and returns the task. Fails if a task is already running on the service.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `serviceId` | path | string (uuid) | yes | Service ID |

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | common.CurrentTask | successful operation |
| 400 | object | Error 400 response |
| 409 | object | Error 409 response |

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `errors` | common.TaskError[] | read-only | Errors that occurred on the task |
| `errors[].message` | string | read-only | Error description |
| `id` | string (uuid) | read-only | Identifier of the current task |
| `link` | string | read-only | Link to the task details |
| `status` | common.CurrentTaskStatusEnum | read-only | Current global status of the current task — one of `ERROR`, `PENDING`, `RUNNING`, `SCHEDULED`, `WAITING_USER_INPUT` |
| `type` | string | read-only | Type of the current task |

```json
{
  "errors": [
    {
      "message": "string"
    }
  ],
  "id": "00000000-0000-0000-0000-000000000000",
  "link": "string",
  "status": "ERROR",
  "type": "string"
}
```

### Example

```bash
curl -X POST \
  "https://api.eu.ovhcloud.com/v2/managedCMS/resource/{serviceId}/flushCDN" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN"
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

result = client.post("/v2/managedCMS/resource/{serviceId}/flushCDN")

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

$result = $ovh->post("/v2/managedCMS/resource/{serviceId}/flushCDN");

print_r($result);
?>
```

## Update a service

`PUT /v2/managedCMS/resource/{serviceId}`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#put-managedcms-resource-serviceid

**Status:** Alpha version  
**IAM actions:** `managedCMS:apiovh:edit`

Updates the service. Set flushCDNDate to a new date to flush the CDN of all its websites.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `serviceId` | path | string (uuid) | yes | Service ID |

### Request body (required)

Type: `managedCMS.ServiceEditionBody`

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `targetSpec` | managedCMS.ServiceEditionTargetSpec |  | Target specification to edit a service |
| `targetSpec.flushCDNDate` | string (date-time) |  | Modify this to trigger a flush of CDN of all websites attached to the service |

```json
{
  "targetSpec": {
    "flushCDNDate": "2024-01-01T12:00:00Z"
  }
}
```

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | managedCMS.Service | successful operation |
| 400 | object | Error 400 response |
| 409 | object | Error 409 response |

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `checksum` | string | read-only | Computed hash used to control concurrent modification requests. Here, it represents the current target specification value. |
| `currentState` | managedCMS.ServiceCurrentState | read-only | Current state of the service |
| `currentState.createdAt` | string (date-time) | read-only | Date of creation of the service |
| `currentState.dashboards` | managedCMS.ServiceDashboards | read-only | URLs of the service's dashboards |
| `currentState.dashboards.wordpress` | string | read-only | URL of the dashboard allowing to manage WordPress websites |
| `currentState.plan` | string | read-only | Plan of the subscription |
| `currentState.quotas` | managedCMS.ServiceQuotas | read-only | Information about the service's quotas |
| `currentState.quotas.disk` | managedCMS.ServiceDiskQuota | read-only | Information about the service's disk quota |
| `currentState.quotas.visits` | managedCMS.ServiceVisitsQuota | read-only | Information about the service's visits quota |
| `currentState.quotas.websites` | managedCMS.ServiceWebsitesQuota | read-only | Information about the service's websites quota |
| `currentTasks` | common.CurrentTask[] | read-only | Ongoing asynchronous tasks related to the service |
| `currentTasks[].errors` | common.TaskError[] | read-only | Errors that occurred on the task |
| `currentTasks[].errors[].message` | string | read-only | Error description |
| `currentTasks[].id` | string (uuid) | read-only | Identifier of the current task |
| `currentTasks[].link` | string | read-only | Link to the task details |
| `currentTasks[].status` | common.CurrentTaskStatusEnum | read-only | Current global status of the current task — one of `ERROR`, `PENDING`, `RUNNING`, `SCHEDULED`, `WAITING_USER_INPUT` |
| `currentTasks[].type` | string | read-only | Type of the current task |
| `id` | string (uuid) | read-only | Unique identifier of the service |
| `resourceStatus` | common.ResourceStatusEnum | read-only | Service readiness in the system — one of `CREATING`, `CREATION_PLANNED`, `DELETING`, `ERROR`, `OUT_OF_SYNC`, `READY`, `SUSPENDED`, `UNKNOWN`, `UPDATING` |

```json
{
  "checksum": "string",
  "currentState": {
    "createdAt": "2024-01-01T12:00:00Z",
    "dashboards": {
      "wordpress": "string"
    },
    "plan": "string",
    "quotas": {
      "disk": {
        "additionalQuotaBytes": 0,
        "planQuotaBytes": 0,
        "totalQuotaBytes": 0,
        "totalUsageBytes": 0
      },
      "visits": {
        "boosts": [
          {
            "createdAt": "2024-01-01T12:00:00Z",
            "currentAmount": 0,
            "expiresAt": "2024-01-01T12:00:00Z",
            "initialAmount": 0
          }
        ],
        "planQuota": 0,
        "totalAdditionalQuota": 0,
        "totalQuota": 0,
        "totalUsage": 0
      },
      "websites": {
        "additionalQuota": 0,
        "planQuota": 0,
        "totalQuota": 0,
        "totalUsage": 0
      }
    }
  },
  "currentTasks": [
    {
      "errors": [
        {
          "message": "string"
        }
      ],
      "id": "00000000-0000-0000-0000-000000000000",
      "link": "string",
      "status": "ERROR",
      "type": "string"
    }
  ],
  "id": "00000000-0000-0000-0000-000000000000",
  "resourceStatus": "CREATING"
}
```

### Example

```bash
curl -X PUT \
  "https://api.eu.ovhcloud.com/v2/managedCMS/resource/{serviceId}" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN" \
  -H "content-type: application/json" \
  -d '{ }'
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

# Request body type: managedCMS.ServiceEditionBody
result = client.put("/v2/managedCMS/resource/{serviceId}",
	targetSpec = None, # Target specification to edit a service (type: managedCMS.ServiceEditionTargetSpec)
)

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

// Request body type: managedCMS.ServiceEditionBody
$result = $ovh->put("/v2/managedCMS/resource/{serviceId}", array(
	targetSpec => null, // Target specification to edit a service (type: managedCMS.ServiceEditionTargetSpec)
));

print_r($result);
?>
```

## List customer approvals

`GET /v2/managedCMS/customerApproval`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#get-managedcms-customerapproval

**Status:** Alpha version  
**IAM actions:** `account:apiovh:managedCMS/customerApproval/get`

Returns the customer approvals of the account. Filter them by approval code, resource type or resource ID.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `X-Pagination-Cursor` | header | string |  | Pagination cursor |
| `X-Pagination-Size` | header | integer |  | Pagination size |
| `approvalCode` | query | managedCMS.CustomerApprovalCodeEnum |  | Code identifying the operation the customer approves — one of `TECH_ACCESS_DISCLAIMER` |
| `resourceId` | query | string |  | Identifier of the resource the approval targets |
| `resourceType` | query | managedCMS.CustomerApprovalResourceTypeEnum |  | Type of the resource the approval targets — one of `RESOURCE` |

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | managedCMS.CustomerApproval[] | successful operation |

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `approvalCode` | managedCMS.CustomerApprovalCodeEnum | read-only | Code identifying the operation the customer approves — one of `TECH_ACCESS_DISCLAIMER` |
| `approved` | boolean | read-only | Whether the customer approved the operation |
| `createdAt` | string (date-time) | read-only | Date when the customer approval was registered |
| `id` | string (uuid) | read-only | Unique identifier of the customer approval |
| `resourceId` | string | read-only | Identifier of the resource the approval targets |
| `resourceType` | managedCMS.CustomerApprovalResourceTypeEnum | read-only | Type of the resource the approval targets — one of `RESOURCE` |

```json
[
  {
    "approvalCode": "TECH_ACCESS_DISCLAIMER",
    "approved": true,
    "createdAt": "2024-01-01T12:00:00Z",
    "id": "00000000-0000-0000-0000-000000000000",
    "resourceId": "string",
    "resourceType": "RESOURCE"
  }
]
```

### Example

```bash
curl -X GET \
  "https://api.eu.ovhcloud.com/v2/managedCMS/customerApproval" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN"
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

result = client.get("/v2/managedCMS/customerApproval")

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

$result = $ovh->get("/v2/managedCMS/customerApproval");

print_r($result);
?>
```

## Get a customer approval

`GET /v2/managedCMS/customerApproval/{customerApprovalId}`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#get-managedcms-customerapproval-customerapprovalid

**Status:** Alpha version  
**IAM actions:** `account:apiovh:managedCMS/customerApproval/get`

Returns the approved operation, the target resource, the decision and the registration date.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `customerApprovalId` | path | string (uuid) | yes | Customer approval ID |

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | managedCMS.CustomerApproval | successful operation |

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `approvalCode` | managedCMS.CustomerApprovalCodeEnum | read-only | Code identifying the operation the customer approves — one of `TECH_ACCESS_DISCLAIMER` |
| `approved` | boolean | read-only | Whether the customer approved the operation |
| `createdAt` | string (date-time) | read-only | Date when the customer approval was registered |
| `id` | string (uuid) | read-only | Unique identifier of the customer approval |
| `resourceId` | string | read-only | Identifier of the resource the approval targets |
| `resourceType` | managedCMS.CustomerApprovalResourceTypeEnum | read-only | Type of the resource the approval targets — one of `RESOURCE` |

```json
{
  "approvalCode": "TECH_ACCESS_DISCLAIMER",
  "approved": true,
  "createdAt": "2024-01-01T12:00:00Z",
  "id": "00000000-0000-0000-0000-000000000000",
  "resourceId": "string",
  "resourceType": "RESOURCE"
}
```

### Example

```bash
curl -X GET \
  "https://api.eu.ovhcloud.com/v2/managedCMS/customerApproval/{customerApprovalId}" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN"
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

result = client.get("/v2/managedCMS/customerApproval/{customerApprovalId}")

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

$result = $ovh->get("/v2/managedCMS/customerApproval/{customerApprovalId}");

print_r($result);
?>
```

## Create an application password on a dashboard of the service

`POST /v2/managedCMS/resource/{serviceId}/dashboard/applicationPassword`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#post-managedcms-resource-serviceid-dashboard-applicationpassword

**Status:** Beta version  
**IAM actions:** `managedCMS:apiovh:dashboard/applicationPassword/create`

Each call creates a new application password on the existing administrator user. The previous ones stay valid. They can be revoked from the CMS administration.

### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `serviceId` | path | string (uuid) | yes | Service ID |

### Request body (required)

Type: `managedCMS.DashboardApplicationPasswordCreation`

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `cms` | managedCMS.CMSEnum | yes | CMS of the dashboard — one of `WORDPRESS` |

```json
{
  "cms": "WORDPRESS"
}
```

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | managedCMS.ApplicationPassword | successful operation |
| 400 | object | Error 400 response |
| 404 | object | Error 404 response |

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `login` | string | read-only | Login of the user the application password belongs to |
| `password` | string (password) | read-only | Application password to authenticate as `login` on the CMS API, returned only in this response |

```json
{
  "login": "string",
  "password": "string"
}
```

### Example

```bash
curl -X POST \
  "https://api.eu.ovhcloud.com/v2/managedCMS/resource/{serviceId}/dashboard/applicationPassword" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN" \
  -H "content-type: application/json" \
  -d '{ }'
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

# Request body type: managedCMS.DashboardApplicationPasswordCreation
result = client.post("/v2/managedCMS/resource/{serviceId}/dashboard/applicationPassword",
	cms = None, # CMS of the dashboard (type: managedCMS.CMSEnum)
)

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

// Request body type: managedCMS.DashboardApplicationPasswordCreation
$result = $ovh->post("/v2/managedCMS/resource/{serviceId}/dashboard/applicationPassword", array(
	cms => null, // CMS of the dashboard (type: managedCMS.CMSEnum)
));

print_r($result);
?>
```

## Register a customer approval

`POST /v2/managedCMS/customerApproval`

Link: https://developers.eu.ovhcloud.com/reference/web-cloud/managed-wordpress/#post-managedcms-customerapproval

**Status:** Alpha version  
**IAM actions:** `account:apiovh:managedCMS/customerApproval/create`

Registers whether the customer approves an operation on a resource.

### Request body (required)

Type: `managedCMS.CustomerApprovalPostPayload`

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `approvalCode` | managedCMS.CustomerApprovalCodeEnum | yes | Code identifying the operation the customer approves — one of `TECH_ACCESS_DISCLAIMER` |
| `approved` | boolean | yes | Whether the customer approves the operation |
| `resourceId` | string | yes | Identifier of the resource the approval targets |
| `resourceType` | managedCMS.CustomerApprovalResourceTypeEnum | yes | Type of the resource the approval targets — one of `RESOURCE` |

```json
{
  "approvalCode": "TECH_ACCESS_DISCLAIMER",
  "approved": true,
  "resourceId": "string",
  "resourceType": "RESOURCE"
}
```

### Responses

| Status | Type | Description |
| --- | --- | --- |
| 200 | managedCMS.CustomerApproval | successful operation |

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `approvalCode` | managedCMS.CustomerApprovalCodeEnum | read-only | Code identifying the operation the customer approves — one of `TECH_ACCESS_DISCLAIMER` |
| `approved` | boolean | read-only | Whether the customer approved the operation |
| `createdAt` | string (date-time) | read-only | Date when the customer approval was registered |
| `id` | string (uuid) | read-only | Unique identifier of the customer approval |
| `resourceId` | string | read-only | Identifier of the resource the approval targets |
| `resourceType` | managedCMS.CustomerApprovalResourceTypeEnum | read-only | Type of the resource the approval targets — one of `RESOURCE` |

```json
{
  "approvalCode": "TECH_ACCESS_DISCLAIMER",
  "approved": true,
  "createdAt": "2024-01-01T12:00:00Z",
  "id": "00000000-0000-0000-0000-000000000000",
  "resourceId": "string",
  "resourceType": "RESOURCE"
}
```

### Example

```bash
curl -X POST \
  "https://api.eu.ovhcloud.com/v2/managedCMS/customerApproval" \
  -H "accept: application/json" \
  -H "authorization: Bearer $OVH_TOKEN" \
  -H "content-type: application/json" \
  -d '{ }'
```

```python
'''
First, install the latest release of Python wrapper: $ pip install ovh
'''
import json
import ovh

# Instantiate an OVH Client.
# You can generate new credentials with full access to your account on
# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
client = ovh.Client(
	endpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
	application_key='xxxxxxxxxx',    # Application Key
	application_secret='xxxxxxxxxx', # Application Secret
	consumer_key='xxxxxxxxxx',       # Consumer Key
)

# Request body type: managedCMS.CustomerApprovalPostPayload
result = client.post("/v2/managedCMS/customerApproval",
	approvalCode = None, # Code identifying the operation the customer approves (type: managedCMS.CustomerApprovalCodeEnum)
	approved = None, # Whether the customer approves the operation (type: boolean)
	resourceId = None, # Identifier of the resource the approval targets (type: string)
	resourceType = None, # Type of the resource the approval targets (type: managedCMS.CustomerApprovalResourceTypeEnum)
)

# Pretty print
print(json.dumps(result, indent=4))
```

```php
<?php
/**
 * First, download the latest release of PHP wrapper on github
 * And include this script into the folder with extracted files
 */
require __DIR__ . '/vendor/autoload.php';
use \Ovh\Api;

/**
 * Instantiate an OVH Client.
 * You can generate new credentials with full access to your account on
 * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)
 */
$ovh = new Api('xxxxxxxxxx',  // Application Key
               'xxxxxxxxxx',  // Application Secret
               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)
               'xxxxxxxxxx'); // Consumer Key

// Request body type: managedCMS.CustomerApprovalPostPayload
$result = $ovh->post("/v2/managedCMS/customerApproval", array(
	approvalCode => null, // Code identifying the operation the customer approves (type: managedCMS.CustomerApprovalCodeEnum)
	approved => null, // Whether the customer approves the operation (type: boolean)
	resourceId => null, // Identifier of the resource the approval targets (type: string)
	resourceType => null, // Type of the resource the approval targets (type: managedCMS.CustomerApprovalResourceTypeEnum)
));

print_r($result);
?>
```
