## DigitalOcean integration DigitalOcean is a cloud infrastructure platform for deploying and scaling applications using virtual machines, managed databases, Kubernetes clusters, and object storage. Integrating DigitalOcean with Frontegg allows your application to manage droplets, volumes, databases, domains, and other cloud resources on behalf of your users through OAuth 2.0 authentication. Prerequisites - A DigitalOcean account with access to [Applications & API](https://cloud.digitalocean.com/account/api/applications) ### Connect DigitalOcean #### Step 1: Open the OAuth applications page Sign in to DigitalOcean and navigate to **API** in the left sidebar. On the **Applications & API** page, select the **OAuth Applications** tab. ![DigitalOcean Applications & API page](/assets/digitalocean-7.6470609a0ea2afef6eacf387b29347799cfe450276386c10a99de353289f04ce.1ce25488.png) #### Step 2: Register a new application Click **Register OAuth Application** in the top-right corner. ![Register OAuth Application button](/assets/digitalocean-2.bcd92107b71daedfff4575e619b9c98da49ec2ef4a759f7b1a9685f0eeb06de3.1ce25488.png) #### Step 3: Fill in the application details In the **Register a new OAuth application** dialog, fill in the following fields: | Field | Value | | --- | --- | | **Name** | A descriptive name, e.g., `Frontegg Integration` | | **Homepage URL** | The URL of your application homepage | | **Description** | A brief description of your application | | **Callback URL** | The Frontegg callback URI (see below) | In the **Callback URL** field, enter: ``` https://YOUR_MCP_GATEWAY_URL/integration-callback ``` ![Register OAuth application form](/assets/digitalocean-3.6176b96f63b7493b792762a9d7bff418635ba5c7ddcf3d233ae1a416807109f7.1ce25488.png) ![OAuth application form filled in](/assets/digitalocean-4.a2d0ee18cc274c471c5ee2937dc99ced2bf00fe06e7bae7901df5b603267e6de.1ce25488.png) Click **Register OAuth Application** to save. #### Step 4: Copy your credentials After the application is created, click the **···** menu next to your application and select **View**. ![Application dropdown menu](/assets/digitalocean-5.c2aa712d1748b665da623f49d0e16f5442b058e1ff9df46472ef0ae70ab3599f.1ce25488.png) The **OAuth Application Details** dialog shows your **Client ID** and **Client Secret**. Copy both values and store them securely. Keep your credentials secure The Client Secret is accessible from the application details at any time, but treat it as a password — never share or commit it to version control. If the secret is compromised, click **Reset client secret** to generate a new one. ![OAuth application credentials](/assets/digitalocean-6.5460a8fdc87b7dbc4c380018b7498ad7db3848142bd80968bca892a6b0367291.1ce25488.png) ### Configure the Frontegg portal Once you have the **Client ID** and **Client Secret** from the steps above, enter them in the integration configuration page of the Frontegg portal: 1. Open the **Frontegg portal** and navigate to [ENVIRONMENT] → Integrations → DigitalOcean. 2. Enter the **Client ID** and **Client Secret** in the corresponding fields. 3. Select the required **scopes**: | Scope | Description | | --- | --- | | `account:read` | Read access to account information | | `droplet:read` | Read access to droplets | | `droplet:create` | Create new droplets | | `droplet:update` | Update existing droplets | | `droplet:delete` | Delete droplets | | `droplet:admin` | Admin access to droplets | | `block_storage:read` | Read access to block storage volumes | | `block_storage:create` | Create block storage volumes | | `block_storage:delete` | Delete block storage volumes | | `snapshot:read` | Read access to snapshots | | `snapshot:delete` | Delete snapshots | | `database:read` | Read access to managed databases | | `database:create` | Create managed databases | | `database:update` | Update managed databases | | `database:delete` | Delete managed databases | | `domain:read` | Read access to domains and DNS records | | `domain:create` | Create domains and DNS records | | `domain:update` | Update domains and DNS records | | `domain:delete` | Delete domains and DNS records | | `load_balancer:read` | Read access to load balancers | | `load_balancer:create` | Create load balancers | | `load_balancer:update` | Update load balancers | | `load_balancer:delete` | Delete load balancers | | `firewall:read` | Read access to firewalls | | `firewall:create` | Create firewalls | | `firewall:update` | Update firewalls | | `firewall:delete` | Delete firewalls | | `kubernetes:read` | Read access to Kubernetes clusters | | `kubernetes:create` | Create Kubernetes clusters | | `kubernetes:update` | Update Kubernetes clusters | | `kubernetes:delete` | Delete Kubernetes clusters | | `spaces:read` | Read access to Spaces object storage | | `spaces:update` | Update Spaces object storage | | `ssh_key:read` | Read access to SSH keys | | `ssh_key:create` | Create SSH keys | | `ssh_key:update` | Update SSH keys | | `ssh_key:delete` | Delete SSH keys | 1. Click **Save**. Keep your credentials secure Never share or commit your Client Secret to version control. ### Additional resources - [DigitalOcean OAuth documentation](https://docs.digitalocean.com/reference/api/oauth/) - [DigitalOcean API reference](https://docs.digitalocean.com/reference/api/api-reference/) - [DigitalOcean Applications & API](https://cloud.digitalocean.com/account/api/applications) - [How to get your Redirect URL](/agen-for-work/connectors/redirect-url)