# manage_php_extensions

> List, enable or disable PHP extensions for a hosting account (CloudLinux PHP Selector — account-wide, not per domain).

- Tier: W
- Required scope: read:hosting
- Annotations: idempotentHint
- Docs: https://api.inleed.com/tools/manage-php-extensions

## Description

List, enable or disable PHP extensions for a hosting account (CloudLinux PHP Selector — account-wide, not per domain). `action=list` returns every extension as `{name, state}` (`enabled`, `disabled` or `build-in`; descriptions are omitted on purpose). `action=set` takes `extensions` as a `{name: "enabled"|"disabled"}` map and changes only the named ones; `action=reset` restores the node's default set. Built-in extensions are always on and cannot be toggled.

## Input schema

- `input` — string (required). A domain, email address, website URL, numeric service id, or hosting-account username the customer actually owns. Resolved to the owning account automatically; the resolved target is echoed back in the response.
- `action` — enum (required). list all extensions with states, set to enable/disable the ones named in extensions, or reset to restore the node defaults. set and reset require write:hosting. One of list, set, reset.
- `extensions` — object. For set: a map of extension name to "enabled" or "disabled", e.g. {"imagick": "enabled"}.
- `version` — string. Optional selector version to target (e.g. 8.2); defaults to the account's selected version.

## Example call

```json
{
  "name": "manage_php_extensions",
  "arguments": {
    "input": "example.se",
    "action": "list"
  }
}
```

