# IONOS Hosting Services — Pipedream Connect

> Manage your IONOS Hosting Services programmatically: DNS, Domains, and SSL.

- API slug: `ionos_hosting_services` (use in MCP headers and tool keys)
- Auth: API key (Pipedream-managed)
- Categories: Infrastructure & Cloud
- Website: https://www.ionos.com
- This page (HTML): https://pipedream.com/apps/ionos-hosting-services
- Tools: 8 actions · 0 triggers

## Connect via MCP (recommended)

- Endpoint: `https://remote.mcp.pipedream.net/v3`
- Headers: `Authorization: Bearer <token>` · `x-pd-project-id` · `x-pd-environment` · `x-pd-external-user-id` · `x-pd-app-slug: ionos_hosting_services`

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_PROJECT_ID!,
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "ionos_hosting_services",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// e.g. run Create DNS Records:
const result = await mcp.callTool({
  name: "ionos_hosting_services-create-dns-records",
  arguments: {
    zoneId: "Zone ID",
    records: "Records",
  },
})
```

Docs: [MCP guide](https://pipedream.com/docs/connect/mcp/developers.md)

## SDK

```ts
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "ionos_hosting_services-create-dns-records",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    ionos_hosting_services: { authProvisionId: "apn_xxxxxxx" },
    zoneId: "Zone ID",
    records: "Records",
  },
})
```

Docs: [Managed auth guide](https://pipedream.com/docs/connect/managed-auth/quickstart.md) · [Tools guide](https://pipedream.com/docs/connect/components.md)

## Actions (8)

### `ionos_hosting_services-create-dns-records` — Create DNS Records (Write)

Create one or more DNS records in a zone. Accepts a JSON array of record objects and returns the created records (each with a new id). The name field in each record must be the fully-qualified domain name (FQDN) including the zone domain — use newman.example.com, not just newman. Run List DNS Zones…

Full schema: https://pipedream.com/apps/ionos-hosting-services/actions/create-dns-records.md

### `ionos_hosting_services-delete-dns-record` — Delete DNS Record (Write)

Permanently delete a single DNS record from a zone by its record ID. This cannot be undone. Run Get DNS Zone to find the record ID. See the documentation.

Full schema: https://pipedream.com/apps/ionos-hosting-services/actions/delete-dns-record.md

### `ionos_hosting_services-get-dns-record` — Get DNS Record (Read-only)

Get a single DNS record from a zone by its record ID. Returns the record object, for example {"id":"rec-uuid","name":"www.example.com","type":"A","content":"5.6.7.8","ttl":3600} (full fields include rootName, prio, disabled, changeDate). Run List DNS Zones to find the zone ID and Get DNS Zone to…

Full schema: https://pipedream.com/apps/ionos-hosting-services/actions/get-dns-record.md

### `ionos_hosting_services-get-dns-zone` — Get DNS Zone (Read-only)

Get a single DNS zone including its records array. This is also the only way to list a zone's DNS records (there is no dedicated list-records endpoint) - use the optional nameFilter and recordType filters to narrow the returned records, and read each record's id for use in the record-level actions…

Full schema: https://pipedream.com/apps/ionos-hosting-services/actions/get-dns-zone.md

### `ionos_hosting_services-list-dns-zones` — List DNS Zones (Read-only)

List all DNS zones for the authenticated IONOS Hosting Services account. Returns an array of zone objects, for example [{"id":"4ab3a7e2-1234-5678-abcd-ef0123456789","name":"example.com","type":"NATIVE"}]. Use the id field (not the name field) as the zone ID in other DNS actions. See the…

Full schema: https://pipedream.com/apps/ionos-hosting-services/actions/list-dns-zones.md

### `ionos_hosting_services-patch-dns-zone` — Patch DNS Zone (Write)

Partially update a DNS zone (HTTP PATCH): for each provided record, all existing records sharing the same name and type are replaced with the provided ones. Records with other name/type combinations are left untouched. For a full zone overwrite use Update DNS Zone (Full Replace) instead. Run List…

Full schema: https://pipedream.com/apps/ionos-hosting-services/actions/patch-dns-zone.md

### `ionos_hosting_services-update-dns-record` — Update DNS Record (Write)

Update an existing DNS record (HTTP PUT on a single record). Only content, ttl, prio, and disabled can be changed - the record's name and type are immutable via this endpoint (delete and recreate to change them). Run Get DNS Zone to find the record ID. See the documentation.

Full schema: https://pipedream.com/apps/ionos-hosting-services/actions/update-dns-record.md

### `ionos_hosting_services-update-dns-zone` — Update DNS Zone (Full Replace) (Write)

Replace ALL records in a DNS zone with the provided record set (HTTP PUT / full zone overwrite). Any existing record not present in the payload is permanently removed. For a partial update that only replaces records sharing the same name and type, use Patch DNS Zone instead. Run List DNS Zones to…

Full schema: https://pipedream.com/apps/ionos-hosting-services/actions/update-dns-zone.md

---

- All apps: https://pipedream.com/apps — index: https://pipedream.com/llms.txt
- Pipedream docs for agents: https://pipedream.com/docs/llms.txt
