# Doppler

Doppler secrets: projects, configs, secrets, service tokens, integrations. Exposes **41 actions** covering the API surface an agent needs - read and write.

## What it can do

| Method | What it does |
| --- | --- |
| `doppler_workplace_get` | Get authenticated workplace info - GET /workplace. |
| `doppler_workplace_users_list` | List workplace users - GET /workplace/users. |
| `doppler_workplace_users_invite` | Invite a user to the workplace - POST /workplace/users/invite. |
| `doppler_projects_list` | List projects - GET /projects. |
| `doppler_project_get` | Get one project - GET /projects/&#123;project&#125;. |
| `doppler_project_create` | Create a project - POST /projects. |
| `doppler_project_update` | Update a project - PATCH /projects/&#123;project&#125;. |
| `doppler_project_delete` | Delete a project - DELETE /projects/&#123;project&#125;. |
| `doppler_configs_list` | List configs in a project - GET /configs. |
| `doppler_config_get` | Get one config - GET /configs/&#123;config&#125;. |
| `doppler_config_create` | Create a config - POST /configs. |
| `doppler_config_update` | Update a config - PATCH /configs/&#123;config&#125;. |
| `doppler_config_delete` | Delete a config - DELETE /configs/&#123;config&#125;. |
| `doppler_config_clone` | Clone a config - POST /configs/&#123;config&#125;/clone. |
| `doppler_config_lock` | Lock a config - POST /configs/&#123;config&#125;/lock. |
| `doppler_config_unlock` | Unlock a config - POST /configs/&#123;config&#125;/unlock. |
| `doppler_secrets_list` | List secrets in a config - GET /secrets. |
| `doppler_secret_get` | Get one secret value - GET /secrets/&#123;secret&#125;. |
| `doppler_secret_update` | Update a secret value - POST /secrets/&#123;secret&#125;. |
| `doppler_secret_delete` | Delete a secret - DELETE /secrets/&#123;secret&#125;. |
| `doppler_secrets_download` | Download secrets in a specific format - GET /secrets/download. |
| `doppler_environments_list` | List environments in a project - GET /environments. |
| `doppler_environment_get` | Get one environment - GET /environments/&#123;environment&#125;. |
| `doppler_environment_create` | Create an environment - POST /environments. |
| `doppler_environment_delete` | Delete an environment - DELETE /environments/&#123;environment&#125;. |
| `doppler_service_tokens_list` | List service tokens in a config - GET /service-tokens. |
| `doppler_service_token_get` | Get one service token - GET /service-tokens/&#123;token_id&#125;. |
| `doppler_service_token_create` | Create a service token - POST /service-tokens. |
| `doppler_service_token_update` | Update a service token - PATCH /service-tokens/&#123;token_id&#125;. |
| `doppler_service_token_delete` | Delete a service token - DELETE /service-tokens/&#123;token_id&#125;. |
| `doppler_service_token_rotate` | Rotate a service token - POST /service-tokens/&#123;token_id&#125;/rotate. |
| `doppler_integrations_list` | List integrations - GET /integrations. |
| `doppler_integration_get` | Get one integration - GET /integrations/&#123;integration_id&#125;. |
| `doppler_syncs_list` | List syncs for a config - GET /syncs. |
| `doppler_sync_get` | Get one sync - GET /syncs/&#123;sync_id&#125;. |
| `doppler_sync_create` | Create a sync - POST /syncs. |
| `doppler_sync_delete` | Delete a sync - DELETE /syncs/&#123;sync_id&#125;. |
| `doppler_trusted_ips_list` | List trusted IPs - GET /trusted-ips. |
| `doppler_trusted_ip_create` | Add a trusted IP - POST /trusted-ips. |
| `doppler_trusted_ip_delete` | Remove a trusted IP - DELETE /trusted-ips/&#123;ip_address&#125;. |
| `doppler_audit_logs_list` | List audit logs - GET /audit-logs. |

## How to get credentials

This connector uses an **API key / token**. Create one in the provider
dashboard, then paste it into FlyMyAI:

- **`DOPPLER_API_TOKEN`** - Doppler Dashboard - Tokens (or Service tokens). (https://dashboard.doppler.com/)

## Fields to fill in FlyMyAI

| FlyMyAI field | Where it comes from |
| --- | --- |
| `DOPPLER_API_TOKEN` | Doppler Dashboard - Tokens (or Service tokens). |

## Troubleshooting

- **`401 Unauthorized` / `403 Forbidden`** - the token is wrong, expired, or missing a required scope; regenerate it.
- **`429 Too Many Requests`** - provider rate limit; retry after a short backoff.
- **Unexpected `4xx` on writes** - double-check required fields; the agent confirms before write actions.

## Links

- [Doppler API documentation](https://docs.doppler.com/reference)
