Docs

Managers

GET
/v1/managers

Retrieve all managers.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100
search?string

Search managers by name

Lengthlength <= 256
limit?integer

Maximum number of managers to return

Range1 <= value <= 100

Response Body

application/json

application/json

curl -X GET "https://example.com/v1/managers"
[  {    "id": "mgr_enxscjrqiiu2lrc672hwwuc5",    "name": "string",    "targets": [      "aws"    ],    "cloud": "aws",    "region": "string",    "setupStatus": "pending",    "url": "http://example.com",    "managementConfigs": {      "aws": {        "managingRoleArn": "string",        "platform": "aws"      },      "gcp": {        "serviceAccountEmail": "string",        "platform": "gcp"      },      "azure": {        "managingTenantId": "string",        "oidcIssuer": "string",        "oidcSubject": "string",        "platform": "azure"      },      "kubernetes": {        "platform": "kubernetes"      }    },    "isSystem": true,    "workspaceId": "string",    "status": "healthy",    "version": "string",    "metrics": {      "activeDeployments": 0,      "pendingDeployments": 0,      "memoryUsageMb": 0,      "cpuUsagePercent": 0    },    "lastHeartbeatAt": "2019-08-24T14:15:22Z",    "logsDatabaseId": "string",    "managedDeploymentCount": 0,    "defaultProjectCount": 0,    "createdAt": "2019-08-24T14:15:22Z"  }]
POST
/v1/managers

Create a new manager.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "cloud": "aws",    "region": "string"  }'
{  "managerId": "mgr_enxscjrqiiu2lrc672hwwuc5",  "setupStatus": "pending",  "setupToken": "string",  "setupTokenId": "string",  "deploymentLink": "string",  "setupConfig": {    "metadata": {      "property1": null,      "property2": null    },    "policy": {      "allowedPlatforms": [        "aws"      ],      "allowedKubernetesBasePlatforms": [        "aws"      ],      "allowedKubernetesClusterSources": [        "create"      ],      "allowedSetupMethods": [        "cloudformation"      ],      "allowReleasePinning": true,      "stackSettings": {        "defaults": {          "compute": {            "pools": {              "property1": {                "failure_domains": {                  "selectedFailureDomains": [                    "string"                  ],                  "spread": 0                },                "machine": "string",                "machines": 0,                "mode": "fixed"              },              "property2": {                "failure_domains": {                  "selectedFailureDomains": [                    "string"                  ],                  "spread": 0                },                "machine": "string",                "machines": 0,                "mode": "fixed"              }            }          },          "deploymentModel": "push",          "domains": {            "customDomains": {              "property1": {                "certificate": {                  "aws": {                    "certificateArn": "string"                  },                  "azure": {                    "keyVaultCertificateId": "string",                    "keyVaultResourceId": "string"                  },                  "gcp": {                    "certificateName": "string"                  },                  "kubernetes": {                    "tlsSecretRef": {                      "namespace": "string",                      "secretName": "string"                    }                  }                },                "domain": "string"              },              "property2": {                "certificate": {                  "aws": {                    "certificateArn": "string"                  },                  "azure": {                    "keyVaultCertificateId": "string",                    "keyVaultResourceId": "string"                  },                  "gcp": {                    "certificateName": "string"                  },                  "kubernetes": {                    "tlsSecretRef": {                      "namespace": "string",                      "secretName": "string"                    }                  }                },                "domain": "string"              }            },            "publicEndpointTarget": {              "mode": "machineAddresses"            }          },          "externalBindings": {},          "heartbeats": "off",          "kubernetes": {            "cluster": {              "cloud": {                "accountId": "string",                "clusterId": "string",                "clusterName": "string",                "projectId": "string",                "region": "string",                "resourceGroup": "string",                "subscriptionId": "string"              },              "namespace": "string",              "ownership": "managed"            },            "exposure": {              "mode": "disabled"            }          },          "network": {            "type": "use-default"          },          "telemetry": "off",          "updates": "auto"        },        "allowedDeploymentModels": [          "push"        ],        "allowedNetworkModes": [          "none"        ],        "allowedUpdatesModes": [          "auto"        ],        "allowedTelemetryModes": [          "auto"        ],        "allowedHeartbeatsModes": [          "on"        ],        "allowExternalBindings": true,        "allowCustomRegistry": true      }    },    "inputValues": {},    "items": [      {        "item": "deployment",        "source": {          "type": "project-release",          "releaseChannel": "string",          "releaseId": "rel_WbhQgksrawSKIpEN0NAssHX9",          "resourceId": "string"        },        "required": true,        "configuration": {          "allowedProviders": [            "aws-bedrock"          ],          "providerAllowlist": [            "aws-bedrock"          ],          "modelRequirements": [            {              "publicModelId": "string",              "clientApis": [                "openai-chat"              ],              "required": true            }          ]        }      }    ],    "publicSubdomain": "string",    "environmentVariables": [      {        "name": "string",        "type": "plain",        "targetResources": [          "string"        ]      }    ]  },  "setup": {    "method": "cloudformation",    "deploymentPortalUrl": "string",    "launchUrl": "string",    "templateUrl": "string",    "stackName": "string",    "region": "string",    "stackSettings": {      "compute": {        "pools": {          "property1": {            "failure_domains": {              "selectedFailureDomains": [                "string"              ],              "spread": 0            },            "machine": "string",            "machines": 0,            "mode": "fixed"          },          "property2": {            "failure_domains": {              "selectedFailureDomains": [                "string"              ],              "spread": 0            },            "machine": "string",            "machines": 0,            "mode": "fixed"          }        }      },      "deploymentModel": "push",      "domains": {        "customDomains": {          "property1": {            "certificate": {              "aws": {                "certificateArn": "string"              },              "azure": {                "keyVaultCertificateId": "string",                "keyVaultResourceId": "string"              },              "gcp": {                "certificateName": "string"              },              "kubernetes": {                "tlsSecretRef": {                  "namespace": "string",                  "secretName": "string"                }              }            },            "domain": "string"          },          "property2": {            "certificate": {              "aws": {                "certificateArn": "string"              },              "azure": {                "keyVaultCertificateId": "string",                "keyVaultResourceId": "string"              },              "gcp": {                "certificateName": "string"              },              "kubernetes": {                "tlsSecretRef": {                  "namespace": "string",                  "secretName": "string"                }              }            },            "domain": "string"          }        },        "publicEndpointTarget": {          "mode": "machineAddresses"        }      },      "externalBindings": {},      "heartbeats": "off",      "kubernetes": {        "cluster": {          "cloud": {            "accountId": "string",            "clusterId": "string",            "clusterName": "string",            "projectId": "string",            "region": "string",            "resourceGroup": "string",            "subscriptionId": "string"          },          "namespace": "string",          "ownership": "managed"        },        "exposure": {          "mode": "disabled"        }      },      "network": {        "type": "use-default"      },      "telemetry": "off",      "updates": "auto"    }  }}
POST
/v1/managers/{id}/setup-token

Revoke previous private-manager setup tokens and issue a fresh setup token/config.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/setup-token"
{  "managerId": "mgr_enxscjrqiiu2lrc672hwwuc5",  "setupStatus": "pending",  "setupToken": "string",  "setupTokenId": "string",  "deploymentLink": "string",  "setupConfig": {    "metadata": {      "property1": null,      "property2": null    },    "policy": {      "allowedPlatforms": [        "aws"      ],      "allowedKubernetesBasePlatforms": [        "aws"      ],      "allowedKubernetesClusterSources": [        "create"      ],      "allowedSetupMethods": [        "cloudformation"      ],      "allowReleasePinning": true,      "stackSettings": {        "defaults": {          "compute": {            "pools": {              "property1": {                "failure_domains": {                  "selectedFailureDomains": [                    "string"                  ],                  "spread": 0                },                "machine": "string",                "machines": 0,                "mode": "fixed"              },              "property2": {                "failure_domains": {                  "selectedFailureDomains": [                    "string"                  ],                  "spread": 0                },                "machine": "string",                "machines": 0,                "mode": "fixed"              }            }          },          "deploymentModel": "push",          "domains": {            "customDomains": {              "property1": {                "certificate": {                  "aws": {                    "certificateArn": "string"                  },                  "azure": {                    "keyVaultCertificateId": "string",                    "keyVaultResourceId": "string"                  },                  "gcp": {                    "certificateName": "string"                  },                  "kubernetes": {                    "tlsSecretRef": {                      "namespace": "string",                      "secretName": "string"                    }                  }                },                "domain": "string"              },              "property2": {                "certificate": {                  "aws": {                    "certificateArn": "string"                  },                  "azure": {                    "keyVaultCertificateId": "string",                    "keyVaultResourceId": "string"                  },                  "gcp": {                    "certificateName": "string"                  },                  "kubernetes": {                    "tlsSecretRef": {                      "namespace": "string",                      "secretName": "string"                    }                  }                },                "domain": "string"              }            },            "publicEndpointTarget": {              "mode": "machineAddresses"            }          },          "externalBindings": {},          "heartbeats": "off",          "kubernetes": {            "cluster": {              "cloud": {                "accountId": "string",                "clusterId": "string",                "clusterName": "string",                "projectId": "string",                "region": "string",                "resourceGroup": "string",                "subscriptionId": "string"              },              "namespace": "string",              "ownership": "managed"            },            "exposure": {              "mode": "disabled"            }          },          "network": {            "type": "use-default"          },          "telemetry": "off",          "updates": "auto"        },        "allowedDeploymentModels": [          "push"        ],        "allowedNetworkModes": [          "none"        ],        "allowedUpdatesModes": [          "auto"        ],        "allowedTelemetryModes": [          "auto"        ],        "allowedHeartbeatsModes": [          "on"        ],        "allowExternalBindings": true,        "allowCustomRegistry": true      }    },    "inputValues": {},    "items": [      {        "item": "deployment",        "source": {          "type": "project-release",          "releaseChannel": "string",          "releaseId": "rel_WbhQgksrawSKIpEN0NAssHX9",          "resourceId": "string"        },        "required": true,        "configuration": {          "allowedProviders": [            "aws-bedrock"          ],          "providerAllowlist": [            "aws-bedrock"          ],          "modelRequirements": [            {              "publicModelId": "string",              "clientApis": [                "openai-chat"              ],              "required": true            }          ]        }      }    ],    "publicSubdomain": "string",    "environmentVariables": [      {        "name": "string",        "type": "plain",        "targetResources": [          "string"        ]      }    ]  },  "setup": {    "method": "cloudformation",    "deploymentPortalUrl": "string",    "launchUrl": "string",    "templateUrl": "string",    "stackName": "string",    "region": "string",    "stackSettings": {      "compute": {        "pools": {          "property1": {            "failure_domains": {              "selectedFailureDomains": [                "string"              ],              "spread": 0            },            "machine": "string",            "machines": 0,            "mode": "fixed"          },          "property2": {            "failure_domains": {              "selectedFailureDomains": [                "string"              ],              "spread": 0            },            "machine": "string",            "machines": 0,            "mode": "fixed"          }        }      },      "deploymentModel": "push",      "domains": {        "customDomains": {          "property1": {            "certificate": {              "aws": {                "certificateArn": "string"              },              "azure": {                "keyVaultCertificateId": "string",                "keyVaultResourceId": "string"              },              "gcp": {                "certificateName": "string"              },              "kubernetes": {                "tlsSecretRef": {                  "namespace": "string",                  "secretName": "string"                }              }            },            "domain": "string"          },          "property2": {            "certificate": {              "aws": {                "certificateArn": "string"              },              "azure": {                "keyVaultCertificateId": "string",                "keyVaultResourceId": "string"              },              "gcp": {                "certificateName": "string"              },              "kubernetes": {                "tlsSecretRef": {                  "namespace": "string",                  "secretName": "string"                }              }            },            "domain": "string"          }        },        "publicEndpointTarget": {          "mode": "machineAddresses"        }      },      "externalBindings": {},      "heartbeats": "off",      "kubernetes": {        "cluster": {          "cloud": {            "accountId": "string",            "clusterId": "string",            "clusterName": "string",            "projectId": "string",            "region": "string",            "resourceGroup": "string",            "subscriptionId": "string"          },          "namespace": "string",          "ownership": "managed"        },        "exposure": {          "mode": "disabled"        }      },      "network": {        "type": "use-default"      },      "telemetry": "off",      "updates": "auto"    }  }}
POST
/v1/managers/{id}/retry

Retry private-manager setup. Returns a fresh setup action before the internal deployment exists, or requests retry for the internal deployment after it exists.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/retry"
{  "managerId": "mgr_enxscjrqiiu2lrc672hwwuc5",  "setupStatus": "pending",  "setupToken": "string",  "setupTokenId": "string",  "deploymentLink": "string",  "setupConfig": {    "metadata": {      "property1": null,      "property2": null    },    "policy": {      "allowedPlatforms": [        "aws"      ],      "allowedKubernetesBasePlatforms": [        "aws"      ],      "allowedKubernetesClusterSources": [        "create"      ],      "allowedSetupMethods": [        "cloudformation"      ],      "allowReleasePinning": true,      "stackSettings": {        "defaults": {          "compute": {            "pools": {              "property1": {                "failure_domains": {                  "selectedFailureDomains": [                    "string"                  ],                  "spread": 0                },                "machine": "string",                "machines": 0,                "mode": "fixed"              },              "property2": {                "failure_domains": {                  "selectedFailureDomains": [                    "string"                  ],                  "spread": 0                },                "machine": "string",                "machines": 0,                "mode": "fixed"              }            }          },          "deploymentModel": "push",          "domains": {            "customDomains": {              "property1": {                "certificate": {                  "aws": {                    "certificateArn": "string"                  },                  "azure": {                    "keyVaultCertificateId": "string",                    "keyVaultResourceId": "string"                  },                  "gcp": {                    "certificateName": "string"                  },                  "kubernetes": {                    "tlsSecretRef": {                      "namespace": "string",                      "secretName": "string"                    }                  }                },                "domain": "string"              },              "property2": {                "certificate": {                  "aws": {                    "certificateArn": "string"                  },                  "azure": {                    "keyVaultCertificateId": "string",                    "keyVaultResourceId": "string"                  },                  "gcp": {                    "certificateName": "string"                  },                  "kubernetes": {                    "tlsSecretRef": {                      "namespace": "string",                      "secretName": "string"                    }                  }                },                "domain": "string"              }            },            "publicEndpointTarget": {              "mode": "machineAddresses"            }          },          "externalBindings": {},          "heartbeats": "off",          "kubernetes": {            "cluster": {              "cloud": {                "accountId": "string",                "clusterId": "string",                "clusterName": "string",                "projectId": "string",                "region": "string",                "resourceGroup": "string",                "subscriptionId": "string"              },              "namespace": "string",              "ownership": "managed"            },            "exposure": {              "mode": "disabled"            }          },          "network": {            "type": "use-default"          },          "telemetry": "off",          "updates": "auto"        },        "allowedDeploymentModels": [          "push"        ],        "allowedNetworkModes": [          "none"        ],        "allowedUpdatesModes": [          "auto"        ],        "allowedTelemetryModes": [          "auto"        ],        "allowedHeartbeatsModes": [          "on"        ],        "allowExternalBindings": true,        "allowCustomRegistry": true      }    },    "inputValues": {},    "items": [      {        "item": "deployment",        "source": {          "type": "project-release",          "releaseChannel": "string",          "releaseId": "rel_WbhQgksrawSKIpEN0NAssHX9",          "resourceId": "string"        },        "required": true,        "configuration": {          "allowedProviders": [            "aws-bedrock"          ],          "providerAllowlist": [            "aws-bedrock"          ],          "modelRequirements": [            {              "publicModelId": "string",              "clientApis": [                "openai-chat"              ],              "required": true            }          ]        }      }    ],    "publicSubdomain": "string",    "environmentVariables": [      {        "name": "string",        "type": "plain",        "targetResources": [          "string"        ]      }    ]  },  "setup": {    "method": "cloudformation",    "deploymentPortalUrl": "string",    "launchUrl": "string",    "templateUrl": "string",    "stackName": "string",    "region": "string",    "stackSettings": {      "compute": {        "pools": {          "property1": {            "failure_domains": {              "selectedFailureDomains": [                "string"              ],              "spread": 0            },            "machine": "string",            "machines": 0,            "mode": "fixed"          },          "property2": {            "failure_domains": {              "selectedFailureDomains": [                "string"              ],              "spread": 0            },            "machine": "string",            "machines": 0,            "mode": "fixed"          }        }      },      "deploymentModel": "push",      "domains": {        "customDomains": {          "property1": {            "certificate": {              "aws": {                "certificateArn": "string"              },              "azure": {                "keyVaultCertificateId": "string",                "keyVaultResourceId": "string"              },              "gcp": {                "certificateName": "string"              },              "kubernetes": {                "tlsSecretRef": {                  "namespace": "string",                  "secretName": "string"                }              }            },            "domain": "string"          },          "property2": {            "certificate": {              "aws": {                "certificateArn": "string"              },              "azure": {                "keyVaultCertificateId": "string",                "keyVaultResourceId": "string"              },              "gcp": {                "certificateName": "string"              },              "kubernetes": {                "tlsSecretRef": {                  "namespace": "string",                  "secretName": "string"                }              }            },            "domain": "string"          }        },        "publicEndpointTarget": {          "mode": "machineAddresses"        }      },      "externalBindings": {},      "heartbeats": "off",      "kubernetes": {        "cluster": {          "cloud": {            "accountId": "string",            "clusterId": "string",            "clusterName": "string",            "projectId": "string",            "region": "string",            "resourceGroup": "string",            "subscriptionId": "string"          },          "namespace": "string",          "ownership": "managed"        },        "exposure": {          "mode": "disabled"        }      },      "network": {        "type": "use-default"      },      "telemetry": "off",      "updates": "auto"    }  },  "mode": "setup"}
POST
/v1/managers/{id}/cancel-setup

Cancel pending private-manager setup, revoke setup/runtime tokens, and remove the undeployed manager record.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/cancel-setup"
{  "message": "string"}
GET
/v1/managers/{id}

Retrieve a manager by ID.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5"
{  "id": "mgr_enxscjrqiiu2lrc672hwwuc5",  "name": "string",  "targets": [    "aws"  ],  "cloud": "aws",  "region": "string",  "setupStatus": "pending",  "url": "http://example.com",  "managementConfigs": {    "aws": {      "managingRoleArn": "string",      "platform": "aws"    },    "gcp": {      "serviceAccountEmail": "string",      "platform": "gcp"    },    "azure": {      "managingTenantId": "string",      "oidcIssuer": "string",      "oidcSubject": "string",      "platform": "azure"    },    "kubernetes": {      "platform": "kubernetes"    }  },  "isSystem": true,  "workspaceId": "string",  "status": "healthy",  "version": "string",  "metrics": {    "activeDeployments": 0,    "pendingDeployments": 0,    "memoryUsageMb": 0,    "cpuUsagePercent": 0  },  "lastHeartbeatAt": "2019-08-24T14:15:22Z",  "logsDatabaseId": "string",  "managedDeploymentCount": 0,  "defaultProjectCount": 0,  "createdAt": "2019-08-24T14:15:22Z"}
DELETE
/v1/managers/{id}

Delete a manager by ID.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5"
{  "message": "string"}
GET
/v1/managers/{id}/domain-binding

Get the custom domain binding for a private manager.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/domain-binding"
{  "managerDomainBinding": {    "id": "dend_1bb6gdvm1bs74acqkjstcgv",    "workspaceId": "ws_It13CUaGEhLLAB87simX0",    "domainId": "dom_469m0agk8luj4s16sakmmpdd",    "kind": "deployment_portal",    "owner": {      "type": "workspace",      "id": "string"    },    "hostname": "string",    "status": "waiting_for_domain",    "provider": "string",    "providerState": {      "property1": null,      "property2": null    },    "managedDnsRecords": [      {        "name": "string",        "type": "string",        "value": "string",        "ttl": 1      }    ],    "error": {      "code": "string",      "context": null,      "hint": "string",      "httpStatusCode": 100,      "internal": true,      "message": "string",      "retryable": false,      "source": null    },    "lockedAt": "2019-08-24T14:15:22Z",    "lockedBy": "string",    "retryAttempts": 0,    "nextStepAfter": "2019-08-24T14:15:22Z",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }}
PUT
/v1/managers/{id}/domain-binding

Create, update, or remove the custom domain binding for a private manager.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X PUT "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/domain-binding" \  -H "Content-Type: application/json" \  -d '{}'
{  "managerDomainBinding": {    "id": "dend_1bb6gdvm1bs74acqkjstcgv",    "workspaceId": "ws_It13CUaGEhLLAB87simX0",    "domainId": "dom_469m0agk8luj4s16sakmmpdd",    "kind": "deployment_portal",    "owner": {      "type": "workspace",      "id": "string"    },    "hostname": "string",    "status": "waiting_for_domain",    "provider": "string",    "providerState": {      "property1": null,      "property2": null    },    "managedDnsRecords": [      {        "name": "string",        "type": "string",        "value": "string",        "ttl": 1      }    ],    "error": {      "code": "string",      "context": null,      "hint": "string",      "httpStatusCode": 100,      "internal": true,      "message": "string",      "retryable": false,      "source": null    },    "lockedAt": "2019-08-24T14:15:22Z",    "lockedBy": "string",    "retryAttempts": 0,    "nextStepAfter": "2019-08-24T14:15:22Z",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z"  }}
GET
/v1/managers/{id}/management-config

Get the management configuration for a manager.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100
platform*string

Represents the target cloud platform.

Value in

  • "aws"
  • "gcp"
  • "azure"
  • "kubernetes"
  • "machines"
  • "local"
  • "test"

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/management-config?platform=aws"
{  "managingRoleArn": "string",  "platform": "aws"}
POST
/v1/managers/{id}/provision

Enqueue provisioning for a manager by ID.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/provision"
{  "message": "string"}
POST
/v1/managers/{id}/update

Update a manager to a specific release ID or active release.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request schema for updating a manager to a new release

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/update" \  -H "Content-Type: application/json" \  -d '{}'
{  "message": "string"}
GET
/v1/managers/{id}/events

Retrieve all events of a manager.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/managers/string/events"
{  "items": [    {      "id": "event_MtSA24M3pWuAkQYxgZxuRI",      "deploymentId": "dep_0c29fq4a2yjb7kx3smwdgxlc",      "releaseId": "rel_WbhQgksrawSKIpEN0NAssHX9",      "debugSessionId": "dbg_HOXmkmT9UPYlsnxqSNlEGoXL",      "data": {        "type": "LoadingConfiguration"      },      "state": {        "failed": {          "error": {            "code": "string",            "context": null,            "hint": "string",            "httpStatusCode": 100,            "internal": true,            "message": "string",            "retryable": false,            "source": null          }        }      },      "projectId": "prj_mcytp6z3j91f7tn5ryqsfwtr",      "createdAt": "2019-08-24T14:15:22Z",      "workspaceId": "ws_It13CUaGEhLLAB87simX0"    }  ]}
POST
/v1/managers/{id}/token

Generate a short-lived JWT for direct browser → manager communication. Used for fetching command payloads and querying logs without routing sensitive data through the platform API.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/token" \  -H "Content-Type: application/json" \  -d '{    "project": "string"  }'
{  "accessToken": "string",  "expiresIn": 0,  "tokenType": "Bearer",  "managerUrl": "string",  "databaseId": "string",  "controlPlaneUrl": "string"}
POST
/v1/managers/{id}/binding-token

Generate a short-lived deployment-scoped token for resolving opted-in remote bindings through the currently assigned manager.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/binding-token" \  -H "Content-Type: application/json" \  -d '{    "deploymentId": "dep_0c29fq4a2yjb7kx3smwdgxlc"  }'
{  "accessToken": "string",  "expiresIn": 0,  "tokenType": "Bearer",  "managerUrl": "string"}
POST
/v1/managers/{id}/gcp-oauth-provider/resolve

Resolve decrypted project-level Google Cloud OAuth provider settings for a manager-side deployment bootstrap.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/gcp-oauth-provider/resolve" \  -H "Content-Type: application/json" \  -d '{    "deploymentGroupToken": "string"  }'
{  "mode": "alien-managed"}
POST
/v1/managers/{id}/heartbeat

Report Manager health status and metrics.

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/heartbeat" \  -H "Content-Type: application/json" \  -d '{    "status": "healthy",    "url": "http://example.com",    "managementConfigs": {}  }'
{  "acknowledged": true,  "timestamp": "string"}
GET
/v1/managers/{id}/deployment

Get deployment details for a private manager (internal deployment platform, status, resources).

AuthorizationBearer <token>

API key for authentication, must be provided as a Bearer token. Generate an API key at https://alien.dev/api-keys

In: header

Path Parameters

id*string

Unique identifier for a manager.

Matchmgr_[0-9a-z]{28}$

Query Parameters

workspace?string

Workspace name. Required for user/session/OAuth requests. Optional for API keys because API keys are workspace-scoped; if provided with an API key, it must match the key's workspace.

Match^(?!ws[-_])[a-z0-9](-?[a-z0-9])*$
Length4 <= length <= 100

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/managers/mgr_enxscjrqiiu2lrc672hwwuc5/deployment"
{  "platform": "string",  "status": "pending",  "deploymentId": "string",  "currentReleaseId": "rel_WbhQgksrawSKIpEN0NAssHX9",  "desiredReleaseId": "rel_WbhQgksrawSKIpEN0NAssHX9",  "error": null,  "resources": {    "property1": {      "type": "string",      "status": "string",      "outputs": {        "property1": null,        "property2": null      }    },    "property2": {      "type": "string",      "status": "string",      "outputs": {        "property1": null,        "property2": null      }    }  },  "environmentInfo": null}