# BunnyCDN API Documentation

This is the complete API documentation for connecting to the BunnyCDN API using MindCloud's Universal API.

MindCloud offers one normalized API to access 3,400+ apps from a single place. It centralizes authentication and normalizes app APIs so they are easier and more consistent to use.

## Quickstart

1. A **MindCloud account** — sign in or create an account at [MindCloud](https://app.mindcloud.co).
2. A **MindCloud API Key** — create one in [API Keys](https://app.mindcloud.co/user/api-keys). Keep it on your server.
3. At least one **BunnyCDN connection** — create or choose one in [Connections](https://app.mindcloud.co/credentials). Note its `connectionId`.

```text
POST https://connect.mindcloud.co/v2/universal/apps/bunnyCDN/actions/{actionSlug}/run
```

## BunnyCDN actions

- POST `add-custom-certificate` Add Custom Certificate
- POST `add-custom-hostname` Add Custom Hostname
- POST `add-dns-record` Add DNS Record
- POST `add-dns-zone` Add DNS Zone
- POST `add-live-thumbnail` Add Live Thumbnail
- POST `add-live-watermark` Add Live Watermark
- PUT `add-or-update-edge-rule` Add Or Update Edge Rule
- POST `add-pull-zone` Add Pull Zone
- POST `add-pull-zone-allowed-referer` Add Pull Zone Allowed Referer
- POST `add-pull-zone-blocked-ip` Add Pull Zone Blocked IP
- POST `add-pull-zone-blocked-referer` Add Pull Zone Blocked Referer
- POST `add-storage-zone` Add Storage Zone
- POST `add-video-library` Add Video Library
- POST `add-video-library-allowed-referer` Add Video Library Allowed Referer
- POST `add-video-library-blocked-referer` Add Video Library Blocked Referer
- POST `add-video-library-watermark` Add Video Library Watermark
- PUT `change-hostname-private-key-type` Change Hostname Private Key Type
- POST `check-dns-zone-availability` Check DNS Zone Availability
- POST `check-pull-zone-availability` Check Pull Zone Availability
- POST `check-storage-zone-availability` Check Storage Zone Availability
- POST `close-account` Close Account
- DELETE `delete-dns-record` Delete DNS Record
- DELETE `delete-dns-zone` Delete DNS Zone
- DELETE `delete-edge-rule` Delete Edge Rule
- DELETE `delete-live-thumbnail` Delete Live Thumbnail
- DELETE `delete-live-watermark` Delete Live Watermark
- DELETE `delete-pull-zone` Delete Pull Zone
- DELETE `delete-storage-zone` Delete Storage Zone
- DELETE `delete-video-library` Delete Video Library
- DELETE `delete-video-library-watermark` Delete Video Library Watermark
- DELETE `disable-dnssec` Disable DNSSEC
- GET `download-payment-request-invoice-pdf` Download Payment Request Invoice PDF
- PUT `enable-dnssec` Enable DNSSEC
- GET `export-dns-zone` Export DNS Zone
- GET `get-affiliate-details` Get Affiliate Details
- GET `get-billing-details` Get Billing Details
- GET `get-billing-summary` Get Billing Summary
- GET `get-billing-summary-document` Get Billing Summary Document
- GET `get-country-list` Get Country List
- GET `get-dns-query-statistics` Get DNS Query Statistics
- GET `get-dns-record-scan-result` Get DNS Record Scan Result
- GET `get-dns-zone` Get DNS Zone
- GET `get-optimizer-statistics` Get Optimizer Statistics
- GET `get-origin-shield-queue-statistics` Get Origin Shield Queue Statistics
- GET `get-pending-payment-requests` Get Pending Payment Requests
- GET `get-pull-zone` Get Pull Zone
- GET `get-region-list` Get Region List
- GET `get-safe-hop-statistics` Get SafeHop Statistics
- GET `get-statistics` Get Statistics
- GET `get-storage-zone` Get Storage Zone
- GET `get-storage-zone-statistics` Get Storage Zone Statistics
- GET `get-user-audit-log` Get User Audit Log
- GET `get-video-library` Get Video Library
- GET `get-video-library-drm-statistics` Get Video Library DRM Statistics
- GET `get-video-library-languages` Get Video Library Languages
- GET `get-video-library-transcribing-statistics` Get Video Library Transcribing Statistics
- GET `global-search` Global Search
- POST `import-dns-records` Import DNS Records
- POST `issue-wildcard-certificate` Issue Wildcard Certificate
- GET `list-api-keys` List API Keys
- GET `list-dns-zones` List DNS Zones
- GET `list-pull-zones` List Pull Zones
- GET `list-storage-zones` List Storage Zones
- GET `list-video-libraries` List Video Libraries
- GET `load-free-certificate` Load Free Certificate
- POST `purge-cache` Purge Cache
- POST `purge-url` Purge URL
- DELETE `remove-certificate` Remove Certificate
- DELETE `remove-custom-hostname` Remove Custom Hostname
- PUT `remove-pull-zone-allowed-referer` Remove Pull Zone Allowed Referer
- PUT `remove-pull-zone-blocked-ip` Remove Pull Zone Blocked IP
- PUT `remove-pull-zone-blocked-referer` Remove Pull Zone Blocked Referer
- PUT `remove-video-library-allowed-referer` Remove Video Library Allowed Referer
- PUT `remove-video-library-blocked-referer` Remove Video Library Blocked Referer
- PUT `reset-storage-zone-password` Reset Storage Zone Password
- PUT `reset-storage-zone-read-only-password` Reset Storage Zone Read Only Password
- PUT `reset-token-key` Reset Token Key
- PUT `reset-video-library-api-key` Reset Video Library API Key
- PUT `reset-video-library-read-only-api-key` Reset Video Library Read Only API Key
- PUT `set-edge-rule-enabled` Set Edge Rule Enabled
- PUT `set-force-ssl` Set Force SSL
- POST `trigger-dns-record-scan` Trigger DNS Record Scan
- PUT `update-dns-record` Update DNS Record
- PUT `update-dns-zone` Update DNS Zone
- PUT `update-pull-zone` Update Pull Zone
- PUT `update-storage-zone` Update Storage Zone
- PUT `update-video-library` Update Video Library
