Cloud connections
A cloud connection links your Ductape workspace to an external provider. Each connection has a stable tag (for example prod_aws) that you pass as cloud: '<tag>' when linking components.
See Cloud overview for the full connect → link → run flow.
Lifecycle
| Step | Method |
|---|---|
| Create | connections.create({ provider, name, scopes }) |
| Complete | connections.complete(cloudTag, input) — save provider credentials |
| Validate | connections.validate(cloudTag) — test and activate |
| Read | connections.fetch(cloudTag) / connections.list() |
| Update | connections.update(cloudTag, { display_name, description, scopes }) |
| Delete | connections.delete(cloudTag) |
Always use the connection tag in complete, validate, fetch, update, and delete — not an internal ID.
- TypeScript
await ductape.cloud.connections.create({
provider: 'aws',
name: 'prod_aws',
scopes: ['storage', 'database'],
});
await ductape.cloud.connections.complete('prod_aws', {
role_arn: 'arn:aws:iam::123456789012:role/DuctapeAccess',
});
await ductape.cloud.connections.validate('prod_aws');
Providers
| Provider | provider value | Complete input | Guide |
|---|---|---|---|
| AWS | aws | role_arn | AWS setup |
| GCP | gcp | project_id, service_account_json | GCP setup |
| Azure | azure | tenant_id, subscription_id, client_id, client_secret | Azure setup |
| MongoDB Atlas | mongodb_atlas | project_id, atlas_public_key, atlas_private_key | Atlas setup |
| Neo4j Aura | neo4j_aura | aura_client_id, aura_client_secret | Aura setup |
Workbench
| Action | Where |
|---|---|
| Create | Cloud sidebar → Add connection |
| Complete credentials | Setup tab (pending) or Settings → Credentials (active) |
| Re-validate | Connection header → Re-validate |
| Delete | Remove in the connection header |
The connection tag is fixed after creation. You can change display name and description anytime. Leave secret fields blank on credential updates to keep the stored value.
SDK parity
| Language | Complete |
|---|---|
| TypeScript | ductape.cloud.connections.complete(cloudTag, input) |
| NestJS | Inject the Ductape SDK and call ductape.cloud.connections.complete(cloudTag, input) |