{"openapi":"3.0.0","info":{"description":"Cerebrium API connector - serverless GPU infrastructure for real-time AI (voice agents, video models, LLMs, custom ML). REST control-plane API on rest.cerebrium.ai (Projects, Apps, Builds, Containers, Runs, Secrets, Billing, Domains, Volumes, Files, Service Accounts). Bearer service-account-token auth.","version":"v2"},"servers":[{"description":"Cerebrium API connector - serverless GPU infrastructure for real-time AI (voice agents, video models, LLMs, custom ML). REST control-plane API on rest.cerebrium.ai (Projects, Apps, Builds, Containers, Runs, Secrets, Billing, Domains, Volumes, Files, Service Accounts). Bearer service-account-token auth.","url":"https://api.apirails.com/cerebrium"}],"paths":{"/v2/build-service/status":{"get":{"tags":["Builds"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/health-check.md","api_endpoint":"https://rest.cerebrium.ai/v2/build-service/status"},"summary":"Health Check","description":"Check if the build service is operational.","security":[{"bearerAuth":[]}]}},"/v2/projects":{"get":{"tags":["Projects"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/projects/list-projects.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects"},"summary":"List Projects","description":"Retrieve a list of projects.","security":[{"bearerAuth":[]}]},"post":{"tags":["Projects"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/projects/create-project.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects"},"summary":"Create Project","description":"Create a new project.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"name":{"type":"string","description":"The name of the project. Must be between 2 and 50 characters.","required":true}}},"example":{"name":""}}}}}},"/v2/projects/{project_id}":{"delete":{"tags":["Projects"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/projects/delete-project.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}"},"summary":"Delete Project","description":"Remove a specific project.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}},"get":{"tags":["Projects"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/projects/get-project.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}"},"summary":"Get Project","description":"Retrieve details of a specific project by its ID.","security":[{"bearerAuth":[]}]},"patch":{"tags":["Projects"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/projects/modify-project.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}"},"summary":"Modify Project","description":"Update the configuration or metadata of a specific project.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"alertAmountDollars":{"type":"number","description":"Monthly spend amount in US dollars at which a usage alert is sent.","required":true},"name":{"type":"string","description":"The name of the project.","required":true},"runtimeVersion":{"type":"string","description":"The cortex-worker version to pin the project's app builds to, from the availableRuntimeVersions of the get-project response. Send an empty string to unpin and track the default; omit to leave the pin unchanged. The floating \"latest\" tag is still accepted for projects already pinned to it, but is no longer offered."}}},"example":{"alertAmountDollars":"","name":"","runtimeVersion":""}}}}}},"/v2/projects/{project_id}/api-keys":{"get":{"tags":["API Keys"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/api-keys/list-api-keys.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/api-keys"},"summary":"List API Keys","description":"List all API keys for a project.","security":[{"bearerAuth":[]}]},"post":{"tags":["API Keys"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"description","in":"query","description":"Description of the API key (max 255 characters).","required":false,"schema":{"type":"string","example":""}},{"name":"expiresAt","in":"query","description":"Expiration date in YYYY-MM-DD format. Must be in the future. If omitted, the key never expires.","required":false,"schema":{"type":"string","example":""}},{"name":"name","in":"query","description":"Name of the API key (max 50 characters). Defaults to 'API Key'.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/api-keys/create-api-key.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/api-keys"},"summary":"Create API Key","description":"Create a new API key for a project.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v2/projects/{project_id}/api-keys/{api_key_id}":{"delete":{"tags":["API Keys"],"parameters":[{"name":"api_key_id","in":"path","description":"api key id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/api-keys/delete-api-key.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/api-keys/{api_key_id}"},"summary":"Delete API Key","description":"Delete an API key and permanently deny its token. Inference requests using the key start failing within a few seconds. This cannot be undone: the key is not recoverable and the token stays denied. The caller must be an owner on the project. Service account keys are rejected here — delete the service account instead.\n","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v2/projects/{project_id}/apps":{"get":{"tags":["Apps"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"includeEphemeral","in":"query","description":"Include ephemeral apps created by one-off runs. Set to true to include them.","required":false,"schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/list-apps.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps"},"summary":"List Apps","description":"Retrieve a list of apps for a specific project.","security":[{"bearerAuth":[]}]},"post":{"tags":["Apps"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/create-app.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps"},"summary":"Create App","description":"Create a new app for a specific project using manual upload.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"baseImage":{"type":"string","description":"Base Docker image for the app. Default: debian:bookworm-slim."},"cerebrium_toml":{"type":"string","description":"Verbatim contents of the cerebrium.toml configuration file."},"cliVersion":{"type":"string","description":"Version of the client initiating the deployment.","required":true},"compute":{"type":"array","description":"Compute type(s) for the app, in priority order. A single value or a list of up to 5. Valid values: ADA_L4, ADA_L40, AMPERE_A10, AMPERE_A100_40GB, AMPERE_A100_80GB, HOPPER_H100, HOPPER_H200, BLACKWELL_B200, BLACKWELL_RTX6000, CPU, INF2, TRN1, TURING_T4. Default: CPU.","items":{"type":"string"}},"computeTier":{"type":"string","description":"Compute tier for the app. Valid values: interruptible, protected."},"containerRuntime":{"type":"string","description":"Container runtime version. Valid values: v1, v2."},"cooldownPeriodSeconds":{"type":"number","description":"Cooldown period in seconds before an idle replica scales down. Range: 0-3600. Default: 10."},"cpu":{"type":"number","description":"Number of CPU cores to allocate. Range: 0.25-192. Default: 2."},"deploymentInitializationTimeout":{"type":"number","description":"Maximum time in seconds to wait for a deployment to initialize. Range: 60-7200 for global builds, 60-830 for most region-pinned builds. Default: 600."},"disableAuth":{"type":"boolean","description":"Disable authentication on the app endpoint. Default: true.","enum":[true,false]},"dockerAuth":{"type":"string","description":"Credentials for pulling the base image from a private Docker registry."},"dockerfilePath":{"type":"string","description":"Path to a Dockerfile to build the app from."},"entrypoint":{"type":"array","description":"Command to start a custom runtime app, as a list of strings.","items":{"type":"string"}},"evaluationIntervalSeconds":{"type":"number","description":"Interval in seconds between autoscaling evaluations. Range: 6-300. Default: 30."},"gpuCount":{"type":"number","description":"Number of GPUs to allocate. Range: 0-16. Default: 0."},"healthcheckEndpoint":{"type":"string","description":"HTTP endpoint used to check that a custom runtime app is healthy."},"loadBalancingAlgorithm":{"type":"string","description":"Load balancing algorithm. Valid values: round-robin, first-available, min-connections, random-choice-2. Default: round-robin."},"logLevel":{"type":"string","description":"Log level for the deployment. Valid values: INFO, DEBUG, INTERNAL, ERROR. Default: INFO."},"maxReplicaCount":{"type":"number","description":"Maximum number of replicas. Range: 1-2000. Default: 1."},"memory":{"type":"number","description":"Memory allocation in GB. Range: 0.05-1984. Default: 4."},"minReplicaCount":{"type":"number","description":"Minimum number of replicas. Range: 0-2000. Default: 0."},"name":{"type":"string","description":"The name of the app. 3-30 lowercase alphanumeric characters and dashes.","required":true},"partialUpload":{"type":"boolean","description":"Whether the upload contains only files changed since the previous deployment.","enum":[true,false]},"port":{"type":"number","description":"Port the app listens on. Range: 0-65535. Default: 8000."},"provider":{"type":"string","description":"Cloud provider to deploy to. Valid values: aws, crusoe, nebius. Defaults to an automatically selected provider."},"pythonVersion":{"type":"string","description":"Python version to use. Default: 3.11."},"readycheckEndpoint":{"type":"string","description":"HTTP endpoint used to check that a custom runtime app is ready to receive traffic."},"region":{"type":"string","description":"Region to deploy to. Defaults to an automatically selected region."},"replicaConcurrency":{"type":"number","description":"Maximum concurrent requests per replica. Defaults to 100 for CPU apps and 1 for GPU apps."},"responseGracePeriodSeconds":{"type":"number","description":"Grace period in seconds for in-flight requests when a replica stops. Range: 16-43200. Default: 900."},"rollOutDurationSeconds":{"type":"number","description":"Duration in seconds over which to roll out a new version. Range: 0-21600."},"runtime":{"type":"string","description":"App runtime. Valid values: cortex, custom. Default: cortex."},"scalingBuffer":{"type":"number","description":"Number of extra replicas to keep available beyond current demand. Must be >= 0."},"scalingMetric":{"type":"string","description":"Metric used for autoscaling. Valid values: cpu_utilization, memory_utilization, requests_per_second, concurrency_utilization. Default: concurrency_utilization."},"scalingTarget":{"type":"number","description":"Target value for the scaling metric. Must be > 0. Default: 100."},"useUv":{"type":"boolean","description":"Use uv for Python package installation.","enum":[true,false]}}},"example":{"baseImage":"","cerebrium_toml":"","cliVersion":"","compute":[],"computeTier":"","containerRuntime":"","cooldownPeriodSeconds":"","cpu":"","deploymentInitializationTimeout":"","disableAuth":"","dockerAuth":"","dockerfilePath":"","entrypoint":[],"evaluationIntervalSeconds":"","gpuCount":"","healthcheckEndpoint":"","loadBalancingAlgorithm":"","logLevel":"","maxReplicaCount":"","memory":"","minReplicaCount":"","name":"","partialUpload":"","port":"","provider":"","pythonVersion":"","readycheckEndpoint":"","region":"","replicaConcurrency":"","responseGracePeriodSeconds":"","rollOutDurationSeconds":"","runtime":"","scalingBuffer":"","scalingMetric":"","scalingTarget":"","useUv":""}}}}}},"/v2/projects/{project_id}/apps/github":{"post":{"tags":["Apps"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/create-github-app.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/github"},"summary":"Create GitHub App","description":"Create a new app linked to a GitHub repository for automatic deployments.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"baseImage":{"type":"string","description":"Base Docker image for the app. Default: debian:bookworm-slim."},"cerebrium_toml":{"type":"string","description":"Verbatim contents of the cerebrium.toml configuration file."},"cliVersion":{"type":"string","description":"Version of the client initiating the deployment.","required":true},"compute":{"type":"array","description":"Compute type(s) for the app, in priority order. A single value or a list of up to 5. Valid values: ADA_L4, ADA_L40, AMPERE_A10, AMPERE_A100_40GB, AMPERE_A100_80GB, HOPPER_H100, HOPPER_H200, BLACKWELL_B200, BLACKWELL_RTX6000, CPU, INF2, TRN1, TURING_T4. Default: CPU.","items":{"type":"string"}},"computeTier":{"type":"string","description":"Compute tier for the app. Valid values: interruptible, protected."},"containerRuntime":{"type":"string","description":"Container runtime version. Valid values: v1, v2."},"cooldownPeriodSeconds":{"type":"number","description":"Cooldown period in seconds before an idle replica scales down. Range: 0-3600. Default: 10."},"cpu":{"type":"number","description":"Number of CPU cores to allocate. Range: 0.25-192. Default: 2."},"deploymentInitializationTimeout":{"type":"number","description":"Maximum time in seconds to wait for a deployment to initialize. Range: 60-7200 for global builds, 60-830 for most region-pinned builds. Default: 600."},"disableAuth":{"type":"boolean","description":"Disable authentication on the app endpoint. Default: false.","enum":[true,false]},"dockerAuth":{"type":"string","description":"Credentials for pulling the base image from a private Docker registry."},"dockerfilePath":{"type":"string","description":"Path to a Dockerfile to build the app from."},"entrypoint":{"type":"array","description":"Command to start a custom runtime app, as a list of strings.","items":{"type":"string"}},"evaluationIntervalSeconds":{"type":"number","description":"Interval in seconds between autoscaling evaluations. Range: 6-300."},"githubAutoDeploy":{"type":"boolean","description":"Automatically deploy new commits pushed to the configured branch.","enum":[true,false]},"githubBranch":{"type":"string","description":"Git branch to deploy. Default: main."},"githubPath":{"type":"string","description":"Path within the repository containing the app."},"githubRepo":{"type":"string","description":"GitHub repository to deploy from, in owner/repo format.","required":true},"gpuCount":{"type":"number","description":"Number of GPUs to allocate. Range: 0-16. Default: 0."},"healthcheckEndpoint":{"type":"string","description":"HTTP endpoint used to check that a custom runtime app is healthy."},"loadBalancingAlgorithm":{"type":"string","description":"Load balancing algorithm. Valid values: round-robin, first-available, min-connections, random-choice-2."},"logLevel":{"type":"string","description":"Log level for the deployment. Valid values: INFO, DEBUG, INTERNAL, ERROR. Default: INFO."},"maxReplicaCount":{"type":"number","description":"Maximum number of replicas. Range: 1-2000. Default: 1."},"memory":{"type":"number","description":"Memory allocation in GB. Range: 0.05-1984. Default: 4."},"minReplicaCount":{"type":"number","description":"Minimum number of replicas. Range: 0-2000. Default: 0."},"name":{"type":"string","description":"The name of the app. 3-30 lowercase alphanumeric characters and dashes.","required":true},"partialUpload":{"type":"boolean","description":"Whether the upload contains only files changed since the previous deployment.","enum":[true,false]},"port":{"type":"number","description":"Port the app listens on. Range: 0-65535. Default: 8000."},"provider":{"type":"string","description":"Cloud provider to deploy to. Valid values: aws, crusoe, nebius. Defaults to an automatically selected provider."},"pythonVersion":{"type":"string","description":"Python version to use. Default: 3.10."},"readycheckEndpoint":{"type":"string","description":"HTTP endpoint used to check that a custom runtime app is ready to receive traffic."},"region":{"type":"string","description":"Region to deploy to. Defaults to an automatically selected region."},"replicaConcurrency":{"type":"number","description":"Maximum concurrent requests per replica. Defaults to 100 for CPU apps and 1 for GPU apps."},"responseGracePeriodSeconds":{"type":"number","description":"Grace period in seconds for in-flight requests when a replica stops. Range: 16-43200. Default: 900."},"rollOutDurationSeconds":{"type":"number","description":"Duration in seconds over which to roll out a new version. Range: 0-21600."},"runtime":{"type":"string","description":"App runtime. Valid values: cortex, custom. Default: cortex."},"scalingBuffer":{"type":"number","description":"Number of extra replicas to keep available beyond current demand. Must be >= 0."},"scalingMetric":{"type":"string","description":"Metric used for autoscaling. Valid values: cpu_utilization, memory_utilization, requests_per_second, concurrency_utilization. Default: concurrency_utilization."},"scalingTarget":{"type":"number","description":"Target value for the scaling metric. Must be > 0. Default: 100."},"useUv":{"type":"boolean","description":"Use uv for Python package installation.","enum":[true,false]}}},"example":{"baseImage":"","cerebrium_toml":"","cliVersion":"","compute":[],"computeTier":"","containerRuntime":"","cooldownPeriodSeconds":"","cpu":"","deploymentInitializationTimeout":"","disableAuth":"","dockerAuth":"","dockerfilePath":"","entrypoint":[],"evaluationIntervalSeconds":"","githubAutoDeploy":"","githubBranch":"","githubPath":"","githubRepo":"","gpuCount":"","healthcheckEndpoint":"","loadBalancingAlgorithm":"","logLevel":"","maxReplicaCount":"","memory":"","minReplicaCount":"","name":"","partialUpload":"","port":"","provider":"","pythonVersion":"","readycheckEndpoint":"","region":"","replicaConcurrency":"","responseGracePeriodSeconds":"","rollOutDurationSeconds":"","runtime":"","scalingBuffer":"","scalingMetric":"","scalingTarget":"","useUv":""}}}}}},"/v2/projects/{project_id}/apps/{app_id}":{"delete":{"tags":["Apps"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/delete-app.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}"},"summary":"Delete App","description":"Remove a specific app from a project.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}},"get":{"tags":["Apps"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/get-app.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}"},"summary":"Get App","description":"Retrieve details for a specific app in a project.","security":[{"bearerAuth":[]}]},"patch":{"tags":["Apps"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/modify-app.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}"},"summary":"Modify App","description":"Update the configuration or metadata of a specific app.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"cerebrium_toml":{"type":"string","description":"Verbatim contents of the cerebrium.toml configuration file."},"compute":{"type":"array","description":"Compute type(s) for the app, in priority order. A single value or a list of up to 5. Valid values: ADA_L4, ADA_L40, AMPERE_A10, AMPERE_A100_40GB, AMPERE_A100_80GB, HOPPER_H100, HOPPER_H200, BLACKWELL_B200, BLACKWELL_RTX6000, CPU, INF2, TRN1, TURING_T4.","items":{"type":"string"}},"computeTier":{"type":"string","description":"Compute tier for the app. Valid values: interruptible, protected."},"containerRuntime":{"type":"string","description":"Container runtime version. Valid values: v1, v2."},"cooldownPeriodSeconds":{"type":"number","description":"Cooldown period in seconds before an idle replica scales down. Range: 1-3600."},"cpu":{"type":"string","description":"Number of CPU cores to allocate, as a string value."},"deploymentInitializationTimeout":{"type":"number","description":"Maximum time in seconds to wait for a deployment to initialize. Range: 60-7200 for global builds, 60-830 for most region-pinned builds."},"disableAuth":{"type":"boolean","description":"Disable authentication on the app endpoint.","enum":[true,false]},"entrypoint":{"type":"array","description":"Command to start a custom runtime app, as a list of strings.","items":{"type":"string"}},"evaluationIntervalSeconds":{"type":"number","description":"Interval in seconds between autoscaling evaluations. Range: 6-300."},"gpuCount":{"type":"number","description":"Number of GPUs allocated. Range: 0-8."},"healthcheckEndpoint":{"type":"string","description":"HTTP endpoint used to check that a custom runtime app is healthy."},"loadBalancingAlgorithm":{"type":"string","description":"Load balancing algorithm. Valid values: round-robin, first-available, min-connections, random-choice-2."},"maxReplicaCount":{"type":"number","description":"Maximum number of replicas. Range: 1-2000."},"memory":{"type":"string","description":"Memory allocation in GB, as a string value."},"minReplicaCount":{"type":"number","description":"Minimum number of replicas. Range: 0-2000."},"port":{"type":"number","description":"Port the app listens on. Range: 0-65535."},"readycheckEndpoint":{"type":"string","description":"HTTP endpoint used to check that a custom runtime app is ready to receive traffic."},"replicaConcurrency":{"type":"number","description":"Maximum concurrent requests per replica. Range: 1-1000000."},"responseGracePeriodSeconds":{"type":"number","description":"Grace period in seconds for in-flight requests when a replica stops. Range: 16-43200."},"rollOutDurationSeconds":{"type":"number","description":"Duration in seconds over which to roll out a new version. Range: 1-21600."},"runtime":{"type":"string","description":"App runtime. Valid values: cortex, custom."},"scalingBuffer":{"type":"number","description":"Number of extra replicas to keep available beyond current demand. Must be >= 0."},"scalingMetric":{"type":"string","description":"Metric used for autoscaling. Valid values: cpu_utilization, memory_utilization, requests_per_second, concurrency_utilization."},"scalingTarget":{"type":"number","description":"Target value for the scaling metric. Must be > 0."}}},"example":{"cerebrium_toml":"","compute":[],"computeTier":"","containerRuntime":"","cooldownPeriodSeconds":"","cpu":"","deploymentInitializationTimeout":"","disableAuth":"","entrypoint":[],"evaluationIntervalSeconds":"","gpuCount":"","healthcheckEndpoint":"","loadBalancingAlgorithm":"","maxReplicaCount":"","memory":"","minReplicaCount":"","port":"","readycheckEndpoint":"","replicaConcurrency":"","responseGracePeriodSeconds":"","rollOutDurationSeconds":"","runtime":"","scalingBuffer":"","scalingMetric":"","scalingTarget":""}}}}}},"/v2/projects/{project_id}/apps/{app_id}/active-revision":{"get":{"tags":["Apps"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/get-active-revision.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/active-revision"},"summary":"Get Active Revision","description":"Retrieve the active revision for a specific app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/builds":{"get":{"tags":["Builds"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"Maximum number of builds to return.","required":false,"schema":{"type":"number","example":""}},{"name":"offset","in":"query","description":"Only return builds created before this timestamp. Use the createdAt of the last build in the previous page to paginate.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/list-builds.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/builds"},"summary":"List Builds","description":"Retrieve a list of builds for a specific app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}":{"delete":{"tags":["Builds"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"build_id","in":"path","description":"build id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/cancel-build.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}"},"summary":"Cancel Build","description":"Cancel an ongoing build for an app.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}},"get":{"tags":["Builds"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"build_id","in":"path","description":"build id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/get-build.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}"},"summary":"Get Build","description":"Retrieve details for a specific build.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/download":{"get":{"tags":["Builds"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"build_id","in":"path","description":"build id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"filename","in":"query","description":"Path of a specific file within the build archive. When set, the response includes the byte range of that file so it can be fetched with a range request.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/download-build.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/download"},"summary":"Download Build","description":"Download the build ZIP file for a specific build.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/image/files":{"get":{"tags":["Builds"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"build_id","in":"path","description":"build id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"path","in":"query","description":"Path inside the image to list. Defaults to the image root.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/list-image-files.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/image/files"},"summary":"List Image Files","description":"Browse files inside a built container image at a specified path.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/logs":{"get":{"tags":["Builds"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"build_id","in":"path","description":"build id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/list-build-logs.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/logs"},"summary":"List Build Logs","description":"Retrieve logs for a specific build of an app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/rebuild":{"post":{"tags":["Builds"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"build_id","in":"path","description":"build id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"redeploy_only","in":"query","description":"Set to true to redeploy the existing built image without rebuilding.","required":false,"schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/rebuild.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/rebuild"},"summary":"Rebuild","description":"Trigger a new build using the same source as an existing build.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/zip-contents":{"get":{"tags":["Builds"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"build_id","in":"path","description":"build id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/get-build-zip-contents.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/builds/{build_id}/zip-contents"},"summary":"Get Build Zip Contents","description":"List the files contained in a build's uploaded ZIP archive.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/containers":{"get":{"tags":["Containers"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/containers/list-recent-containers.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/containers"},"summary":"List Recent Containers","description":"Retrieve a list of recent containers for a specific app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/containers/{container_id}":{"delete":{"tags":["Containers"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"container_id","in":"path","description":"container id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"force","in":"query","description":"Set to true to force stop the container immediately, without a grace period.","required":false,"schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/containers/stop-container.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/containers/{container_id}"},"summary":"Stop Container","description":"Stop a specific container.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}},"get":{"tags":["Containers"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"container_id","in":"path","description":"container id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/containers/get-container.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/containers/{container_id}"},"summary":"Get Container","description":"Retrieve details for a specific container.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/cost":{"get":{"tags":["Apps"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"month","in":"query","description":"Billing month to retrieve costs for. Valid values: current, previous. Default: current.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/get-app-cost.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/cost"},"summary":"Get App Cost","description":"Retrieve cost breakdown for a specific app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/dashboard-metrics":{"get":{"tags":["Apps"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"end","in":"query","description":"End of an arbitrary period, RFC3339. Takes precedence over month, and must be sent with start.","required":false,"schema":{"type":"string","example":""}},{"name":"interval","in":"query","description":"Bucket size to group the series by: minute, hour, day (default) or month. Each caps how long a period you can ask for — 6 hours for minute, 7 days for hour, 180 days for day and month — and a longer one is rejected with a 400. Because a billing month is longer than the minute and hour caps, those intervals must be paired with start and end rather than month.","required":false,"schema":{"type":"string","example":""}},{"name":"month","in":"query","description":"Report on a whole billing month, in UTC. One of current or previous; defaults to current. Ignored when start and end are supplied. A billing month is longer than the minute and hour intervals allow, so those require start and end.","required":false,"schema":{"type":"string","example":""}},{"name":"start","in":"query","description":"Start of an arbitrary period, RFC3339. Takes precedence over month, and must be sent with end. Cannot be more than 180 days ago.","required":false,"schema":{"type":"string","example":""}},{"name":"tz","in":"query","description":"IANA timezone the buckets fall in, e.g. America/New_York. Defaults to UTC. Month and day buckets start at midnight in this zone, and minute and hour buckets on its minute or hour — which is not the UTC hour in zones offset by 30 or 45 minutes, such as Asia/Kolkata.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/get-an-apps-request-and-cost-breakdown-over-time.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/dashboard-metrics"},"summary":"Get an app's request and cost breakdown over time","description":"How much traffic an app served and what it cost to run, over a chosen period. Requests are counted per time bucket and split by response status (2xx/4xx/5xx, normal and error WebSocket closes, and anything else); cost is split across GPU, CPU and memory. Every bucket in the period is returned, zero-filled where there was no activity, so the series can be charted without gap handling.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/logs":{"get":{"tags":["Apps"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"afterDate","in":"query","description":"Retrieve logs after a specific date, in RFC3339 format.","required":false,"schema":{"type":"string","example":""}},{"name":"beforeDate","in":"query","description":"Retrieve logs before a specific date, in RFC3339 format.","required":false,"schema":{"type":"string","example":""}},{"name":"container","in":"query","description":"Retrieve logs for a specific container.","required":false,"schema":{"type":"string","example":""}},{"name":"direction","in":"query","description":"Set to forward to page forward in time. Defaults to backward.","required":false,"schema":{"type":"string","example":""}},{"name":"nextToken","in":"query","description":"Pagination token from a previous response.","required":false,"schema":{"type":"string","example":""}},{"name":"pageSize","in":"query","description":"Number of log lines to return per page. Maximum: 1000. Default: 200.","required":false,"schema":{"type":"number","example":""}},{"name":"runId","in":"query","description":"Retrieve logs for a specific run.","required":false,"schema":{"type":"string","example":""}},{"name":"search","in":"query","description":"Only return log lines containing this search term.","required":false,"schema":{"type":"string","example":""}},{"name":"stream","in":"query","description":"Filter by output stream. Valid values: stdout, stderr.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/get-app-logs.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/logs"},"summary":"Get App Logs","description":"Retrieve logs for a specific app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/metrics/response-time":{"get":{"tags":["Metrics"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"container_id","in":"query","description":"Filter metrics to a specific container","required":false,"schema":{"type":"string","example":""}},{"name":"end","in":"query","description":"End of the time range as an RFC 3339 timestamp (must not be before start)","required":true,"schema":{"type":"string","example":""}},{"name":"resolution","in":"query","description":"Data resolution ('medium' or 'high' for more data points; defaults to standard)","required":false,"schema":{"type":"string","example":""}},{"name":"start","in":"query","description":"Start of the time range as an RFC 3339 timestamp","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/metrics/get-response-time-metrics.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/metrics/response-time"},"summary":"Get Response Time Metrics","description":"Retrieve end-to-end response time percentiles for an app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/metrics/run-execution-time":{"get":{"tags":["Metrics"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"container_id","in":"query","description":"Filter metrics to a specific container","required":false,"schema":{"type":"string","example":""}},{"name":"end","in":"query","description":"End of the time range as an RFC 3339 timestamp (must not be before start)","required":true,"schema":{"type":"string","example":""}},{"name":"resolution","in":"query","description":"Data resolution ('medium' or 'high' for more data points; defaults to standard)","required":false,"schema":{"type":"string","example":""}},{"name":"start","in":"query","description":"Start of the time range as an RFC 3339 timestamp","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/metrics/get-execution-time-metrics.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/metrics/run-execution-time"},"summary":"Get Execution Time Metrics","description":"Retrieve run execution time percentiles for an app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/metrics/startup-time":{"get":{"tags":["Metrics"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"container_id","in":"query","description":"Filter metrics to a specific container","required":false,"schema":{"type":"string","example":""}},{"name":"end","in":"query","description":"End of the time range as an RFC 3339 timestamp (must not be before start)","required":true,"schema":{"type":"string","example":""}},{"name":"resolution","in":"query","description":"Data resolution ('medium' or 'high' for more data points; defaults to standard)","required":false,"schema":{"type":"string","example":""}},{"name":"start","in":"query","description":"Start of the time range as an RFC 3339 timestamp","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/metrics/get-startup-time-metrics.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/metrics/startup-time"},"summary":"Get Startup Time Metrics","description":"Retrieve cold start and container startup time metrics for an app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/resource-metrics":{"get":{"tags":["Apps"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"container_id","in":"query","description":"Return metrics for a specific container instead of the whole app.","required":false,"schema":{"type":"string","example":""}},{"name":"end","in":"query","description":"End of the time range, in RFC3339 format. Defaults to the current time.","required":false,"schema":{"type":"string","example":""}},{"name":"resolution","in":"query","description":"Granularity of the returned data points. Valid values: medium, high. Defaults to standard granularity.","required":false,"schema":{"type":"string","example":""}},{"name":"start","in":"query","description":"Start of the time range, in RFC3339 format.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/get-app-resource-metrics.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/resource-metrics"},"summary":"Get App Resource Metrics","description":"Retrieve CPU, memory, and GPU utilization metrics for an app over a time period.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/runs":{"get":{"tags":["Runs"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"afterDate","in":"query","description":"Only return runs created after this timestamp, in RFC3339 format.","required":false,"schema":{"type":"string","example":""}},{"name":"asyncOnly","in":"query","description":"Set to true to only return asynchronous runs.","required":false,"schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}},{"name":"beforeDate","in":"query","description":"Only return runs created before this timestamp, in RFC3339 format.","required":false,"schema":{"type":"string","example":""}},{"name":"containerId","in":"query","description":"Filter runs by the container that executed them.","required":false,"schema":{"type":"string","example":""}},{"name":"includeEphemeral","in":"query","description":"Include runs from ephemeral apps. Set to true to include them.","required":false,"schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}},{"name":"maxQueueTimeMs","in":"query","description":"Only return runs queued for at most this many milliseconds.","required":false,"schema":{"type":"number","example":""}},{"name":"maxResponseTimeMs","in":"query","description":"Only return runs with a response time of at most this many milliseconds.","required":false,"schema":{"type":"number","example":""}},{"name":"minContainerQueueTimeMs","in":"query","description":"Only return runs that waited at least this many milliseconds for a container.","required":false,"schema":{"type":"number","example":""}},{"name":"minQueueTimeMs","in":"query","description":"Only return runs queued for at least this many milliseconds.","required":false,"schema":{"type":"number","example":""}},{"name":"minResponseTimeMs","in":"query","description":"Only return runs with a response time of at least this many milliseconds.","required":false,"schema":{"type":"number","example":""}},{"name":"nextToken","in":"query","description":"Pagination token from a previous response.","required":false,"schema":{"type":"string","example":""}},{"name":"region","in":"query","description":"Filter runs by region.","required":false,"schema":{"type":"string","example":""}},{"name":"runId","in":"query","description":"Retrieve a specific run by its ID.","required":false,"schema":{"type":"string","example":""}},{"name":"status","in":"query","description":"Filter runs by status.","required":false,"schema":{"type":"string","example":""}},{"name":"statusCode","in":"query","description":"Filter runs by HTTP status code. Digits pin their position and the first 'x' frees the rest, so 201 is exactly 201, 20 is 200-209 and 4xx is 400-499.","required":false,"schema":{"type":"string","example":""}},{"name":"websocketOnly","in":"query","description":"Set to true to only return websocket runs.","required":false,"schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/runs/list-runs.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/runs"},"summary":"List Runs","description":"Retrieve a list of runs for a specific app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/runs/charts":{"get":{"tags":["Runs"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"aggregate","in":"query","description":"Set to true to return aggregated counts instead of individual runs. Time ranges longer than 24 hours are aggregated automatically.","required":false,"schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}},{"name":"endDate","in":"query","description":"End of the time range, in RFC3339 format.","required":true,"schema":{"type":"string","example":""}},{"name":"groupBy","in":"query","description":"Time bucket for aggregated results. Valid values: minute, hour, day.","required":false,"schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"Maximum number of individual runs to return when not aggregating. Must be > 0. Default: 100.","required":false,"schema":{"type":"number","example":""}},{"name":"maxResponseTimeMs","in":"query","description":"Only include runs with a response time of at most this many milliseconds.","required":false,"schema":{"type":"number","example":""}},{"name":"maxStartupTimeMs","in":"query","description":"Only include runs with a startup time of at most this many milliseconds.","required":false,"schema":{"type":"number","example":""}},{"name":"minResponseTimeMs","in":"query","description":"Only include runs with a response time of at least this many milliseconds.","required":false,"schema":{"type":"number","example":""}},{"name":"minStartupTimeMs","in":"query","description":"Only include runs with a startup time of at least this many milliseconds.","required":false,"schema":{"type":"number","example":""}},{"name":"offset","in":"query","description":"Number of runs to skip when not aggregating. Must be >= 0. Default: 0.","required":false,"schema":{"type":"number","example":""}},{"name":"startDate","in":"query","description":"Start of the time range, in RFC3339 format.","required":true,"schema":{"type":"string","example":""}},{"name":"status","in":"query","description":"Filter runs by status. Valid values: pending, proxyQueued, containerQueued, processing, success, failure, cancelled.","required":false,"schema":{"type":"string","example":""}},{"name":"statusCode","in":"query","description":"Filter runs by HTTP status code.","required":false,"schema":{"type":"number","example":""}},{"name":"tz","in":"query","description":"IANA timezone used for time bucketing (e.g. America/New_York). Default: UTC.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/runs/get-runs-chart-data.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/runs/charts"},"summary":"Get Runs Chart Data","description":"Retrieve aggregated run data optimized for charting over long time ranges.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/runs/queueDepth":{"get":{"tags":["Runs"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/runs/count-queued-runs.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/runs/queueDepth"},"summary":"Count Queued Runs","description":"Retrieve the number of queued runs for a specific app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/runs/{run_id}":{"delete":{"tags":["Runs"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"run_id","in":"path","description":"run id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/runs/cancel-run.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/runs/{run_id}"},"summary":"Cancel Run","description":"Cancel an ongoing run for an app.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}},"get":{"tags":["Runs"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"run_id","in":"path","description":"run id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/runs/get-run.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/runs/{run_id}"},"summary":"Get Run","description":"Retrieve details for a specific run of an app.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/apps/{app_id}/secrets":{"get":{"tags":["Secrets"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/secrets/list-app-secrets.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/secrets"},"summary":"List App Secrets","description":"Retrieve a list of secrets for a specific app.","security":[{"bearerAuth":[]}]},"patch":{"tags":["Secrets"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/secrets/update-app-secrets.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/apps/{app_id}/secrets"},"summary":"Update App Secrets","description":"Modify secrets for a specific app. The request body is a JSON object mapping secret names to string values.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v2/projects/{project_id}/billing/coupons/apply":{"post":{"tags":["Billing"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/billing/apply-coupon.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/billing/coupons/apply"},"summary":"Apply Coupon","description":"Apply a promotional coupon code to the project's billing account.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"coupon_code":{"type":"string","description":"The promotional coupon code to apply","required":true}}},"example":{"coupon_code":""}}}}}},"/v2/projects/{project_id}/billing/graph":{"get":{"tags":["Billing"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"exclude_app_ids","in":"query","description":"Comma-separated list of app IDs to exclude (optional filter)","required":false,"schema":{"type":"string","example":""}},{"name":"granularity","in":"query","description":"Time granularity for data points (currently only 'day' is supported)","required":false,"schema":{"type":"string","example":""}},{"name":"group_others","in":"query","description":"Whether to group remaining apps into 'Others' (true/false)","required":false,"schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}},{"name":"include_app_ids","in":"query","description":"Comma-separated list of app IDs to include (optional filter)","required":false,"schema":{"type":"string","example":""}},{"name":"month","in":"query","description":"Month to query in YYYY-MM format, or 'current'/'previous' aliases","required":false,"schema":{"type":"string","example":""}},{"name":"top_n","in":"query","description":"Number of top apps to return (default 10)","required":false,"schema":{"type":"number","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/billing/get-billing-graph.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/billing/graph"},"summary":"Get Billing Graph","description":"Retrieve daily billing cost data per app as time series for charting.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/cost":{"get":{"tags":["Projects"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"month","in":"query","description":"Month to retrieve costs for, in YYYY-MM format. Defaults to the current month.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/projects/get-project-cost.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/cost"},"summary":"Get Project Cost","description":"Retrieve current billing period cost breakdown for a project.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/domains":{"get":{"tags":["Custom Domains"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/custom-domains/list-custom-domains.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/domains"},"summary":"List Custom Domains","description":"Retrieve a list of custom domains for a specific project.","security":[{"bearerAuth":[]}]},"post":{"tags":["Custom Domains"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/custom-domains/create-custom-domain.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/domains"},"summary":"Create Custom Domain","description":"Create a new custom domain for a project with DNS validation records.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"domain":{"type":"string","description":"The domain name to add (e.g., api.example.com)","required":true},"domainType":{"type":"string","description":"Type of domain. Valid values: apex, subdomain. Wildcard domains are not currently supported.","required":true},"region":{"type":"string","description":"The region the domain should route to (e.g., us-east-1). Must match the region where the target app is deployed.","required":true}}},"example":{"domain":"","domainType":"","region":""}}}}}},"/v2/projects/{project_id}/domains/{domain_id}":{"delete":{"tags":["Custom Domains"],"parameters":[{"name":"domain_id","in":"path","description":"domain id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/custom-domains/delete-custom-domain.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/domains/{domain_id}"},"summary":"Delete Custom Domain","description":"Remove a custom domain from a project. Domain must be unassigned from all apps first.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}},"get":{"tags":["Custom Domains"],"parameters":[{"name":"domain_id","in":"path","description":"domain id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/custom-domains/get-custom-domain.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/domains/{domain_id}"},"summary":"Get Custom Domain","description":"Retrieve details for a specific custom domain.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/domains/{domain_id}/assign":{"delete":{"tags":["Custom Domains"],"parameters":[{"name":"domain_id","in":"path","description":"domain id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/custom-domains/unassign-domain-from-app.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/domains/{domain_id}/assign"},"summary":"Unassign Domain from App","description":"Remove the assignment between a domain and an app.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}},"post":{"tags":["Custom Domains"],"parameters":[{"name":"domain_id","in":"path","description":"domain id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/custom-domains/assign-domain-to-app.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/domains/{domain_id}/assign"},"summary":"Assign Domain to App","description":"Assign a validated custom domain to a specific app.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"appId":{"type":"string","description":"The ID of the app to assign the domain to.","required":true}}},"example":{"appId":""}}}}}},"/v2/projects/{project_id}/domains/{domain_id}/validate":{"post":{"tags":["Custom Domains"],"parameters":[{"name":"domain_id","in":"path","description":"domain id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/custom-domains/validate-custom-domain.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/domains/{domain_id}/validate"},"summary":"Validate Custom Domain","description":"Manually trigger DNS validation for a custom domain. Useful for retrying failed validations after DNS configuration changes.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v2/projects/{project_id}/invoices":{"get":{"tags":["Subscriptions"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/subscriptions/list-invoices.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/invoices"},"summary":"List Invoices","description":"Retrieve billing invoices for a project.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/payment-methods":{"get":{"tags":["Subscriptions"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/subscriptions/list-payment-methods.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/payment-methods"},"summary":"List Payment Methods","description":"Retrieve saved payment methods for a project.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/payment-methods/{payment_method_id}":{"delete":{"tags":["Subscriptions"],"parameters":[{"name":"payment_method_id","in":"path","description":"payment method id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/subscriptions/remove-payment-method.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/payment-methods/{payment_method_id}"},"summary":"Remove Payment Method","description":"Delete a saved payment method from a project.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v2/projects/{project_id}/payment-url":{"get":{"tags":["Subscriptions"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/subscriptions/get-payment-url.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/payment-url"},"summary":"Get Payment URL","description":"Generate a Stripe checkout URL for adding a payment method.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/secrets":{"get":{"tags":["Secrets"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/secrets/list-secrets.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/secrets"},"summary":"List Secrets","description":"Retrieve a list of secrets for a specific project.","security":[{"bearerAuth":[]}]},"patch":{"tags":["Secrets"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/secrets/update-secrets.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/secrets"},"summary":"Update Secrets","description":"Modify secrets for a specific project. The request body is a JSON object mapping secret names to string values.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v2/projects/{project_id}/service-accounts":{"get":{"tags":["Service Accounts"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/service-accounts/list-service-accounts.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/service-accounts"},"summary":"List Service Accounts","description":"List all service accounts for a project.","security":[{"bearerAuth":[]}]},"post":{"tags":["Service Accounts"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/service-accounts/create-service-account.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/service-accounts"},"summary":"Create Service Account","description":"Create a new service account for a project.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"description":{"type":"string","description":"Description of the service account (max 500 characters)."},"expiresIn":{"type":"number","description":"Lifetime of the initial token in seconds (max 31536000, i.e. one year). Use 0 for a token that never expires.","required":true},"grants":{"type":"array","description":"List of project IDs the service account is granted access to (1-50 entries).","required":true,"items":{"type":"string"}},"name":{"type":"string","description":"Name of the service account (1-100 characters).","required":true}}},"example":{"description":"","expiresIn":"","grants":[],"name":""}}}}}},"/v2/projects/{project_id}/service-accounts/{service_account_id}":{"delete":{"tags":["Service Accounts"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"service_account_id","in":"path","description":"service account id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/service-accounts/delete-service-account.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/service-accounts/{service_account_id}"},"summary":"Delete Service Account","description":"Delete a service account.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}},"patch":{"tags":["Service Accounts"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"service_account_id","in":"path","description":"service account id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/service-accounts/update-service-account.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/service-accounts/{service_account_id}"},"summary":"Update Service Account","description":"Update service account grants.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"grants":{"type":"array","description":"Full list of project IDs the service account is granted access to (at least one entry). Replaces the existing grants.","required":true,"items":{"type":"string"}}}},"example":{"grants":[]}}}}}},"/v2/projects/{project_id}/service-accounts/{service_account_id}/keys":{"get":{"tags":["Service Accounts"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"service_account_id","in":"path","description":"service account id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/service-accounts/list-service-account-keys.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/service-accounts/{service_account_id}/keys"},"summary":"List Service Account Keys","description":"List all tokens for a service account.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/subscription":{"get":{"tags":["Subscriptions"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/subscriptions/get-subscription.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/subscription"},"summary":"Get Subscription","description":"Retrieve the current subscription plan and status for a project.","security":[{"bearerAuth":[]}]},"patch":{"tags":["Subscriptions"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/subscriptions/change-plan.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/subscription"},"summary":"Change Plan","description":"Upgrade or downgrade the subscription plan for a project.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"planCode":{"type":"string","description":"The plan to switch the project to. Valid values: hobby, standard, enterprise.","required":true}}},"example":{"planCode":""}}}}}},"/v2/projects/{project_id}/users":{"delete":{"tags":["Users"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/users/remove-user.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/users"},"summary":"Remove User","description":"Remove a user from a project. Only project owners may remove users, and the last owner cannot be removed.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"emailAddress":{"type":"string","description":"The email address of the user to remove.","required":true}}},"example":{"emailAddress":""}}}}},"get":{"tags":["Users"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/users/list-users.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/users"},"summary":"List Users","description":"Retrieve all users with access to a project.","security":[{"bearerAuth":[]}]},"post":{"tags":["Users"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/users/invite-user.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/users"},"summary":"Invite User","description":"Invite a user to join a project. Only project owners may invite users.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"emailAddress":{"type":"string","description":"The email address of the user to invite.","required":true},"role":{"type":"string","description":"Role to grant the invited user. Valid values: member, billing.","required":true}}},"example":{"emailAddress":"","role":""}}}}}},"/v2/projects/{project_id}/volumes":{"get":{"tags":["Volumes"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/volumes/list-volumes.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/volumes"},"summary":"List Volumes","description":"Retrieve a list of volumes for a specific project.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/volumes/alerts":{"get":{"tags":["Volumes"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/volumes/get-volume-alerts.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/volumes/alerts"},"summary":"Get Volume Alerts","description":"Retrieve the storage alert thresholds configured for the project.","security":[{"bearerAuth":[]}]},"put":{"tags":["Volumes"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/volumes/update-volume-alerts.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/volumes/alerts"},"summary":"Update Volume Alerts","description":"Replace the storage alert thresholds for the project. The project owner is emailed when a volume's used space crosses a configured threshold.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"thresholds":{"type":"array","description":"Percentages at which to email the project owner. Any of: 80, 90, 95. An empty list disables alerts.","required":true,"items":{"type":"string"}}}},"example":{"thresholds":[]}}}}}},"/v2/projects/{project_id}/volumes/{volume_id}/cp/complete":{"post":{"tags":["Files"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"volume_id","in":"path","description":"volume id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/files/complete-file-upload.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/volumes/{volume_id}/cp/complete"},"summary":"Complete File Upload","description":"Finalize the file upload process to a specific volume. Intended for internal use - rather use the `cerebrium cp` command.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"file_path":{"type":"string","description":"The destination path of the uploaded file.","required":true},"parts":{"type":"array","description":"The uploaded parts of the file. Each item is an object with part_number (integer) and etag (string).","required":true,"items":{"type":"string"}},"region":{"type":"string","description":"Region of the volume. Default: us-east-1."},"upload_id":{"type":"string","description":"The unique identifier for the upload, returned when the upload was initialized.","required":true}}},"example":{"file_path":"","parts":[],"region":"","upload_id":""}}}}}},"/v2/projects/{project_id}/volumes/{volume_id}/cp/initialize":{"post":{"tags":["Files"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"volume_id","in":"path","description":"volume id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/files/initialize-file-upload.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/volumes/{volume_id}/cp/initialize"},"summary":"Initialize File Upload","description":"Begin the file upload process to a specific volume. Intended for internal use - rather use the `cerebrium cp` command.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"file_path":{"type":"string","description":"The destination path for the file.","required":true},"part_count":{"type":"number","description":"The number of parts the file will be uploaded in. Must be >= 0.","required":true},"region":{"type":"string","description":"Region of the volume. Default: us-east-1."}}},"example":{"file_path":"","part_count":"","region":""}}}}}},"/v2/projects/{project_id}/volumes/{volume_id}/download":{"get":{"tags":["Files"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"volume_id","in":"path","description":"volume id","required":true,"schema":{"type":"string","example":""}},{"name":"file_path","in":"query","description":"Path of the file to download.","required":true,"schema":{"type":"string","example":""}},{"name":"region","in":"query","description":"Region of the volume. Default: us-east-1.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/files/download-file.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/volumes/{volume_id}/download"},"summary":"Download File","description":"Download a file from a specific volume.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/volumes/{volume_id}/ls":{"get":{"tags":["Files"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"volume_id","in":"path","description":"volume id","required":true,"schema":{"type":"string","example":""}},{"name":"dir","in":"query","description":"Directory path to list. Defaults to the volume root.","required":false,"schema":{"type":"string","example":""}},{"name":"region","in":"query","description":"Region of the volume. Default: us-east-1.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/files/list-files.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/volumes/{volume_id}/ls"},"summary":"List Files","description":"Retrieve a list of files in a specified volume. Intended for internal use - rather use the `cerebrium ls` command.","security":[{"bearerAuth":[]}]}},"/v2/projects/{project_id}/volumes/{volume_id}/resize":{"patch":{"tags":["Volumes"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"volume_id","in":"path","description":"volume id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/volumes/resize-volume.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/volumes/{volume_id}/resize"},"summary":"Resize Volume","description":"Modify the size of a specific volume.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"newSizeGb":{"type":"number","description":"New size of the volume in GB. Minimum 50. Sizes above 1024 require a protected project.","required":true}}},"example":{"newSizeGb":""}}}}}},"/v2/projects/{project_id}/volumes/{volume_id}/rm":{"delete":{"tags":["Files"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"volume_id","in":"path","description":"volume id","required":true,"schema":{"type":"string","example":""}},{"name":"file_path","in":"query","description":"Path of the file or directory to delete.","required":true,"schema":{"type":"string","example":""}},{"name":"region","in":"query","description":"Region of the volume. Default: us-east-1.","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/files/delete-file.md","api_endpoint":"https://rest.cerebrium.ai/v2/projects/{project_id}/volumes/{volume_id}/rm"},"summary":"Delete File","description":"Remove a file from a specific volume. Intended for internal use - rather use the `cerebrium rm` command.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v3/projects/{project_id}/apps/{app_id}/base-image":{"post":{"tags":["Builds"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"region","in":"query","description":"Region the base image is built for. Defaults to the app's deployed region","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/builds/create-base-image-hash.md","api_endpoint":"https://rest.cerebrium.ai/v3/projects/{project_id}/apps/{app_id}/base-image"},"summary":"Create Base Image Hash","description":"Generate a SHA256 hash from dependency lists to determine if a base image rebuild is needed.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"baseImageUri":{"type":"string","description":"Base image URI to include in hash"},"dependencies":{"type":"object","description":"Dependency lists as objects mapping package name to version, under the keys pip, conda and apt","required":true},"preBuildCommands":{"type":"array","description":"Base64 encoded pre-build commands","items":{"type":"string"}},"shellCommands":{"type":"array","description":"Base64 encoded shell commands","items":{"type":"string"}}}},"example":{"baseImageUri":"","dependencies":{},"preBuildCommands":[],"shellCommands":[]}}}}}},"/v3/projects/{project_id}/apps/{app_id}/containers/active":{"get":{"tags":["Containers"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/containers/list-active-containers.md","api_endpoint":"https://rest.cerebrium.ai/v3/projects/{project_id}/apps/{app_id}/containers/active"},"summary":"List Active Containers","description":"Retrieve all active containers, including those in terminating state.","security":[{"bearerAuth":[]}]}},"/v3/projects/{project_id}/apps/{app_id}/containers/cpu-mem":{"get":{"tags":["Containers"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/containers/list-container-resource-usage.md","api_endpoint":"https://rest.cerebrium.ai/v3/projects/{project_id}/apps/{app_id}/containers/cpu-mem"},"summary":"List Container Resource Usage","description":"Retrieve current CPU and memory usage per container with totals.","security":[{"bearerAuth":[]}]}},"/v3/projects/{project_id}/apps/{app_id}/containers/search":{"get":{"tags":["Containers"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"Number of containers to return (max 100, default 25)","required":false,"schema":{"type":"number","example":""}},{"name":"page","in":"query","description":"Page number for pagination (default 1)","required":false,"schema":{"type":"number","example":""}},{"name":"search","in":"query","description":"Search term to filter containers by container ID","required":false,"schema":{"type":"string","example":""}},{"name":"status","in":"query","description":"Filter containers by status/state (case-insensitive, e.g., running, RUNNING, Running all work)","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/containers/search-containers.md","api_endpoint":"https://rest.cerebrium.ai/v3/projects/{project_id}/apps/{app_id}/containers/search"},"summary":"Search Containers","description":"Search containers by ID or status with pagination.","security":[{"bearerAuth":[]}]}},"/v3/projects/{project_id}/apps/{app_id}/containers/status":{"get":{"tags":["Containers"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/containers/list-container-readiness.md","api_endpoint":"https://rest.cerebrium.ai/v3/projects/{project_id}/apps/{app_id}/containers/status"},"summary":"List Container Readiness","description":"Retrieve the ready/not-ready status of each container.","security":[{"bearerAuth":[]}]}},"/v3/projects/{project_id}/apps/{app_id}/containers/{container_id}/events":{"get":{"tags":["Containers"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"container_id","in":"path","description":"container id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"Number of events per page (default 50, max 200)","required":false,"schema":{"type":"number","example":""}},{"name":"page","in":"query","description":"Page number for pagination (default 1)","required":false,"schema":{"type":"number","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/containers/get-container-events.md","api_endpoint":"https://rest.cerebrium.ai/v3/projects/{project_id}/apps/{app_id}/containers/{container_id}/events"},"summary":"Get Container Events","description":"Retrieve lifecycle events for a container such as eviction, OOM, spot interruption, and checkpoint save or restore.","security":[{"bearerAuth":[]}]}},"/v3/projects/{project_id}/apps/{app_id}/create-run-app":{"post":{"tags":["Apps"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"region","in":"query","description":"Region to create the app in. Defaults to the existing app's region, or the platform default for new apps","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/apps/create-run-app.md","api_endpoint":"https://rest.cerebrium.ai/v3/projects/{project_id}/apps/{app_id}/create-run-app"},"summary":"Create Run App","description":"Create an app if it does not already exist, used by the CLI before running code.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v3/projects/{project_id}/apps/{app_id}/queue-depth":{"get":{"tags":["Containers"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/containers/get-queue-depth.md","api_endpoint":"https://rest.cerebrium.ai/v3/projects/{project_id}/apps/{app_id}/queue-depth"},"summary":"Get Queue Depth","description":"Get real-time queue depth counts (proxyQueued, containerQueued, processing) for an app","security":[{"bearerAuth":[]}]}},"/v3/projects/{project_id}/apps/{app_id}/run":{"post":{"tags":["Cerebrium Run"],"parameters":[{"name":"app_id","in":"path","description":"app id","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"appName","in":"query","description":"Name of the app to run against","required":true,"schema":{"type":"string","example":""}},{"name":"computeType","in":"query","description":"Compute type to run on. One of ADA_L4, ADA_L40, AMPERE_A10, AMPERE_A100_40GB, AMPERE_A100_80GB, HOPPER_H100, CPU, INF2, TRN1, TURING_T4. Defaults to CPU","required":false,"schema":{"type":"string","example":""}},{"name":"cpu","in":"query","description":"Number of CPU cores (0.1-12). Defaults to 2","required":false,"schema":{"type":"number","example":""}},{"name":"filename","in":"query","description":"Path of the Python file to execute. Must have a .py extension","required":true,"schema":{"type":"string","example":""}},{"name":"functionName","in":"query","description":"Name of the function to call within the file","required":false,"schema":{"type":"string","example":""}},{"name":"gpuCount","in":"query","description":"Number of GPUs (0-8). Defaults to 0","required":false,"schema":{"type":"number","example":""}},{"name":"imageDigest","in":"query","description":"Base image digest to run on, as returned by the base-image endpoint. Defaults to the standard Python base image","required":false,"schema":{"type":"string","example":""}},{"name":"memoryGb","in":"query","description":"Memory in GB (0.5-64). Defaults to 2","required":false,"schema":{"type":"number","example":""}},{"name":"region","in":"query","description":"Region to run in. Defaults to the app's deployed region","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/cerebrium-run/run-app.md","api_endpoint":"https://rest.cerebrium.ai/v3/projects/{project_id}/apps/{app_id}/run"},"summary":"Run App","description":"Execute code on a deployed app.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"data":{"type":"string","description":"Multipart form field containing a JSON string of arguments passed to the function"},"file":{"type":"string","description":"Multipart form field containing a tar archive of the code files to run","required":true}}},"example":{"data":"","file":""}}}}}},"/v4/projects/{project_id}/integrations":{"get":{"tags":["Integrations"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/integrations/list-integrations.md","api_endpoint":"https://rest.cerebrium.ai/v4/projects/{project_id}/integrations"},"summary":"List Integrations","description":"List all integrations for a project.","security":[{"bearerAuth":[]}]}},"/v4/projects/{project_id}/integrations/github":{"delete":{"tags":["Integrations"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/integrations/remove-github-integration.md","api_endpoint":"https://rest.cerebrium.ai/v4/projects/{project_id}/integrations/github"},"summary":"Remove GitHub Integration","description":"Remove the GitHub integration from a project.","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v4/projects/{project_id}/integrations/github/install-url":{"get":{"tags":["Integrations"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/integrations/get-github-install-url.md","api_endpoint":"https://rest.cerebrium.ai/v4/projects/{project_id}/integrations/github/install-url"},"summary":"Get GitHub Install URL","description":"Generate a GitHub App installation URL for a project.","security":[{"bearerAuth":[]}]}},"/v4/projects/{project_id}/integrations/github/repos":{"get":{"tags":["Integrations"],"parameters":[{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/integrations/list-github-repos.md","api_endpoint":"https://rest.cerebrium.ai/v4/projects/{project_id}/integrations/github/repos"},"summary":"List GitHub Repos","description":"List accessible GitHub repositories for the project's GitHub integration.","security":[{"bearerAuth":[]}]}},"/v4/projects/{project_id}/integrations/github/repos/{owner}/{repo}":{"get":{"tags":["Integrations"],"parameters":[{"name":"owner","in":"path","description":"owner","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"repo","in":"path","description":"repo","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/integrations/get-repo-metadata.md","api_endpoint":"https://rest.cerebrium.ai/v4/projects/{project_id}/integrations/github/repos/{owner}/{repo}"},"summary":"Get Repo Metadata","description":"Retrieve metadata for a GitHub repository.","security":[{"bearerAuth":[]}]}},"/v4/projects/{project_id}/integrations/github/repos/{owner}/{repo}/branches":{"get":{"tags":["Integrations"],"parameters":[{"name":"owner","in":"path","description":"owner","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"repo","in":"path","description":"repo","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/integrations/list-github-branches.md","api_endpoint":"https://rest.cerebrium.ai/v4/projects/{project_id}/integrations/github/repos/{owner}/{repo}/branches"},"summary":"List GitHub Branches","description":"List branches for a GitHub repository.","security":[{"bearerAuth":[]}]}},"/v4/projects/{project_id}/integrations/github/repos/{owner}/{repo}/toml":{"get":{"tags":["Integrations"],"parameters":[{"name":"owner","in":"path","description":"owner","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"repo","in":"path","description":"repo","required":true,"schema":{"type":"string","example":""}},{"name":"path","in":"query","description":"Directory path within the repository containing cerebrium.toml (defaults to the repository root)","required":false,"schema":{"type":"string","example":""}},{"name":"branch","in":"query","description":"Branch to read the configuration from (either branch or commit is required)","required":false,"schema":{"type":"string","example":""}},{"name":"commit","in":"query","description":"Commit SHA to read the configuration from; takes precedence over branch (either branch or commit is required)","required":false,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/integrations/get-toml-config.md","api_endpoint":"https://rest.cerebrium.ai/v4/projects/{project_id}/integrations/github/repos/{owner}/{repo}/toml"},"summary":"Get TOML Config","description":"Parse and retrieve the cerebrium.toml configuration from a GitHub repository.","security":[{"bearerAuth":[]}]}},"/v4/projects/{project_id}/integrations/github/repos/{owner}/{repo}/tree":{"get":{"tags":["Integrations"],"parameters":[{"name":"owner","in":"path","description":"owner","required":true,"schema":{"type":"string","example":""}},{"name":"project_id","in":"path","description":"project id","required":true,"schema":{"type":"string","example":""}},{"name":"repo","in":"path","description":"repo","required":true,"schema":{"type":"string","example":""}},{"name":"path","in":"query","description":"Directory path within the repository (defaults to the repository root)","required":false,"schema":{"type":"string","example":""}},{"name":"ref","in":"query","description":"Branch name or commit SHA to retrieve the file tree for","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://cerebrium.ai/docs/api-reference/integrations/get-repo-file-tree.md","api_endpoint":"https://rest.cerebrium.ai/v4/projects/{project_id}/integrations/github/repos/{owner}/{repo}/tree"},"summary":"Get Repo File Tree","description":"Retrieve the file tree for a GitHub repository.","security":[{"bearerAuth":[]}]}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}}},"security":[{"bearerAuth":[]}]}