{"components":{"schemas":{"AlertingRule":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/AlertingRule.json","format":"uri","readOnly":true,"type":"string"},"appId":{"type":"string"},"id":{"type":"string"},"lastFiredAt":{"format":"date-time","nullable":true,"type":"string"},"minIntervalSecs":{"format":"int32","nullable":true,"type":"integer"},"receivingAppId":{"type":"string"},"ruleMetadata":{},"ruleType":{"enum":["WorkflowFailure","SlowQueue","UnresponsiveApplication"],"type":"string"}},"required":["id","appId","receivingAppId","ruleType","ruleMetadata","minIntervalSecs","lastFiredAt"],"type":"object"},"Application":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/Application.json","format":"uri","readOnly":true,"type":"string"},"dbosCloud":{"type":"boolean"},"executorTimeoutSecs":{"format":"int64","type":"integer"},"gcRowsThreshold":{"format":"int64","nullable":true,"type":"integer"},"gcTimeThresholdMs":{"format":"int64","nullable":true,"type":"integer"},"globalTimeoutMs":{"format":"int64","nullable":true,"type":"integer"},"id":{"type":"string"},"language":{"nullable":true,"type":"string"},"name":{"type":"string"},"orgId":{"type":"string"},"privateMode":{"type":"boolean"},"status":{"enum":["AVAILABLE","UNAVAILABLE"],"type":"string"},"workflowMetricsEnabled":{"description":"Whether conductor collects workflow metrics for the console charts from this application's database. While off, the workflow metrics endpoints report collection_disabled.","type":"boolean"}},"required":["id","name","orgId","status","language","gcTimeThresholdMs","gcRowsThreshold","globalTimeoutMs","executorTimeoutSecs","privateMode","dbosCloud","workflowMetricsEnabled"],"type":"object"},"ApplicationVersion":{"additionalProperties":false,"properties":{"createdAt":{"format":"date-time","type":"string"},"versionId":{"type":"string"},"versionName":{"type":"string"},"versionTimestamp":{"format":"date-time","type":"string"}},"required":["versionId","versionName","versionTimestamp","createdAt"],"type":"object"},"AuditLogEntry":{"additionalProperties":false,"properties":{"details":{"additionalProperties":{},"nullable":true,"type":"object"},"emitTime":{"format":"date-time","type":"string"},"id":{"type":"string"},"operation":{"type":"string"},"sourceIp":{"type":"string"},"status":{"enum":["success","failure"],"type":"string"},"subject":{"$ref":"#/components/schemas/AuditSubject"},"target":{"$ref":"#/components/schemas/AuditTarget"}},"required":["id","emitTime","operation","status","subject","sourceIp","details"],"type":"object"},"AuditSubject":{"additionalProperties":false,"properties":{"display":{"type":"string"},"id":{"type":"string"},"type":{"enum":["user","api_key"],"type":"string"}},"required":["type","id","display"],"type":"object"},"AuditTarget":{"additionalProperties":false,"properties":{"id":{"type":"string"},"type":{"enum":["application","token","role","user","organization","workflow","schedule","alerting_rule","domain_claim"],"type":"string"}},"required":["type","id"],"type":"object"},"AutoscalePolicy":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/AutoscalePolicy.json","format":"uri","readOnly":true,"type":"string"},"queue":{"description":"The queue whose utilization drives the desired executor count. Must exist and have worker_concurrency set.","type":"string"},"rollout":{"$ref":"#/components/schemas/RolloutPolicy","description":"Rollout preferences for non-latest application versions. Omitted means old versions are sized to their own backlog."}},"required":["queue"],"type":"object"},"BackfillInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/BackfillInputBody.json","format":"uri","readOnly":true,"type":"string"},"endTime":{"format":"date-time","type":"string"},"startTime":{"format":"date-time","type":"string"}},"required":["startTime","endTime"],"type":"object"},"BackfillOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/BackfillOutputBody.json","format":"uri","readOnly":true,"type":"string"},"workflowIds":{"items":{"type":"string"},"type":"array"}},"required":["workflowIds"],"type":"object"},"BulkCancelInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/BulkCancelInputBody.json","format":"uri","readOnly":true,"type":"string"},"cancelChildren":{"type":"boolean"},"shardKeys":{"description":"One shard key per workflow ID, in the same order. Required when the application's system database is sharded.","items":{"type":"string"},"type":"array"},"workflowIds":{"items":{"type":"string"},"type":"array"}},"required":["workflowIds"],"type":"object"},"BulkDeleteInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/BulkDeleteInputBody.json","format":"uri","readOnly":true,"type":"string"},"deleteChildren":{"type":"boolean"},"shardKeys":{"description":"One shard key per workflow ID, in the same order. Required when the application's system database is sharded.","items":{"type":"string"},"type":"array"},"workflowIds":{"items":{"type":"string"},"type":"array"}},"required":["workflowIds"],"type":"object"},"BulkForkFromFailureBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/BulkForkFromFailureBody.json","format":"uri","readOnly":true,"type":"string"},"appVersion":{"type":"string"},"fromLastFailure":{"description":"Restart each workflow from its own last failed step. Mutually exclusive with fromLastStep, fromStep, and fromStepName.","type":"boolean"},"fromLastStep":{"description":"Restart each workflow from its own last completed step. Mutually exclusive with fromLastFailure, fromStep, and fromStepName.","type":"boolean"},"fromStep":{"description":"Restart every workflow from this explicit step index. Mutually exclusive with fromLastFailure, fromLastStep, and fromStepName.","format":"int32","type":"integer"},"fromStepName":{"description":"Restart every workflow from the last occurrence of this named step. Mutually exclusive with fromLastFailure, fromLastStep, and fromStep.","type":"string"},"queueName":{"type":"string"},"queuePartitionKey":{"type":"string"},"workflowIds":{"items":{"type":"string"},"type":"array"}},"required":["workflowIds"],"type":"object"},"BulkForkFromFailureOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/BulkForkFromFailureOutputBody.json","format":"uri","readOnly":true,"type":"string"},"workflowIds":{"items":{"type":"string"},"type":"array"}},"required":["workflowIds"],"type":"object"},"BulkResumeInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/BulkResumeInputBody.json","format":"uri","readOnly":true,"type":"string"},"queueName":{"type":"string"},"shardKeys":{"description":"One shard key per workflow ID, in the same order. Required when the application's system database is sharded.","items":{"type":"string"},"type":"array"},"workflowIds":{"items":{"type":"string"},"type":"array"}},"required":["workflowIds"],"type":"object"},"CancelWorkflowInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/CancelWorkflowInputBody.json","format":"uri","readOnly":true,"type":"string"},"cancelChildren":{"type":"boolean"},"shardKey":{"description":"The workflow's shard key. Required when the application's system database is sharded.","type":"string"}},"type":"object"},"CreateAlertInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/CreateAlertInputBody.json","format":"uri","readOnly":true,"type":"string"},"minIntervalSecs":{"format":"int32","type":"integer"},"receivingAppName":{"type":"string"},"ruleMetadata":{},"ruleType":{"enum":["WorkflowFailure","SlowQueue","UnresponsiveApplication"],"type":"string"}},"required":["ruleType","ruleMetadata"],"type":"object"},"CreateRoleInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/CreateRoleInputBody.json","format":"uri","readOnly":true,"type":"string"},"name":{"maxLength":30,"minLength":3,"pattern":"^[a-zA-Z0-9_]+$","type":"string"},"permissions":{"items":{"type":"string"},"nullable":true,"type":"array"}},"required":["name"],"type":"object"},"CreateRoleOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/CreateRoleOutputBody.json","format":"uri","readOnly":true,"type":"string"},"name":{"type":"string"},"permissions":{"items":{"type":"string"},"type":"array"}},"required":["name","permissions"],"type":"object"},"CreateTokenInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/CreateTokenInputBody.json","format":"uri","readOnly":true,"type":"string"},"appNames":{"items":{"type":"string"},"nullable":true,"type":"array","uniqueItems":true},"permissions":{"items":{"type":"string"},"nullable":true,"type":"array"}},"type":"object"},"DomainClaim":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/DomainClaim.json","format":"uri","readOnly":true,"type":"string"},"decidedAt":{"format":"date-time","type":"string"},"decidedBy":{"type":"string"},"decisionNote":{"type":"string"},"domain":{"type":"string"},"id":{"type":"string"},"orgName":{"type":"string"},"requestedAt":{"format":"date-time","type":"string"},"requestedBy":{"type":"string"},"status":{"enum":["pending","approved","denied"],"type":"string"}},"required":["id","domain","status","orgName","requestedBy","requestedAt"],"type":"object"},"Entitlements":{"additionalProperties":false,"properties":{"autoUpgrade":{"description":"Whether the org may use auto-upgrade.","type":"boolean"},"externalStorage":{"description":"Whether the org may use external storage.","type":"boolean"},"sharding":{"description":"Whether the org may use sharding.","type":"boolean"},"suspendWorkflows":{"description":"Whether the org may suspend workflows.","type":"boolean"}},"required":["sharding","autoUpgrade","suspendWorkflows","externalStorage"],"type":"object"},"EntitlementsResponse":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/EntitlementsResponse.json","format":"uri","readOnly":true,"type":"string"},"entitlements":{"$ref":"#/components/schemas/Entitlements"}},"required":["entitlements"],"type":"object"},"ErrorDetail":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string"},"message":{"description":"Error message text","type":"string"},"value":{"description":"The value at the given location"}},"type":"object"},"ErrorModel":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/ErrorModel.json","format":"uri","readOnly":true,"type":"string"},"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.","example":"Property foo is required but is missing.","type":"string"},"errors":{"description":"Optional list of individual error details","items":{"$ref":"#/components/schemas/ErrorDetail"},"nullable":true,"type":"array"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem.","example":"https://example.com/error-log/abc123","format":"uri","type":"string"},"status":{"description":"HTTP status code","example":400,"format":"int64","type":"integer"},"title":{"description":"A short, human-readable summary of the problem type. This value should not change between occurrences of the error.","example":"Bad Request","type":"string"},"type":{"default":"about:blank","description":"A URI reference to human-readable documentation for the error.","example":"https://example.com/errors/example","format":"uri","type":"string"}},"type":"object"},"Event":{"additionalProperties":false,"properties":{"key":{"type":"string"},"value":{"type":"string"}},"required":["key","value"],"type":"object"},"Executor":{"additionalProperties":false,"properties":{"appId":{"type":"string"},"appVersion":{"type":"string"},"createdAt":{"format":"date-time","type":"string"},"dbosVersion":{"nullable":true,"type":"string"},"executorId":{"type":"string"},"executorMetadata":{"additionalProperties":{},"nullable":true,"type":"object"},"hostId":{"nullable":true,"type":"string"},"hostname":{"nullable":true,"type":"string"},"language":{"nullable":true,"type":"string"},"sharded":{"description":"Whether the executor's system database is sharded. If so, commands that address a workflow must pass its shard key.","type":"boolean"},"status":{"enum":["HEALTHY","DISCONNECTED","DEAD"],"type":"string"},"updatedAt":{"format":"date-time","type":"string"}},"required":["executorId","appId","appVersion","status","hostId","hostname","createdAt","updatedAt","language","dbosVersion","executorMetadata","sharded"],"type":"object"},"ExportWorkflowOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/ExportWorkflowOutputBody.json","format":"uri","readOnly":true,"type":"string"},"serializedWorkflow":{"type":"string"}},"required":["serializedWorkflow"],"type":"object"},"ForkWorkflowInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/ForkWorkflowInputBody.json","format":"uri","readOnly":true,"type":"string"},"appVersion":{"type":"string"},"newWorkflowId":{"type":"string"},"queueName":{"type":"string"},"queuePartitionKey":{"type":"string"},"shardKey":{"description":"The original workflow's shard key, under which the fork also runs. Required when the application's system database is sharded.","type":"string"},"startStep":{"format":"int32","type":"integer"}},"type":"object"},"ForkWorkflowOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/ForkWorkflowOutputBody.json","format":"uri","readOnly":true,"type":"string"},"workflowId":{"type":"string"}},"required":["workflowId"],"type":"object"},"GenerateSecretOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/GenerateSecretOutputBody.json","format":"uri","readOnly":true,"type":"string"},"secret":{"type":"string"}},"required":["secret"],"type":"object"},"ImportWorkflowInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/ImportWorkflowInputBody.json","format":"uri","readOnly":true,"type":"string"},"serializedWorkflow":{"type":"string"}},"required":["serializedWorkflow"],"type":"object"},"JoinOrgInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/JoinOrgInputBody.json","format":"uri","readOnly":true,"type":"string"},"secret":{"type":"string"}},"required":["secret"],"type":"object"},"ListDomainClaimsOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/ListDomainClaimsOutputBody.json","format":"uri","readOnly":true,"type":"string"},"claims":{"items":{"$ref":"#/components/schemas/DomainClaim"},"type":"array"}},"required":["claims"],"type":"object"},"Member":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/Member.json","format":"uri","readOnly":true,"type":"string"},"company":{"type":"string"},"email":{"type":"string"},"familyName":{"type":"string"},"givenName":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"orgId":{"type":"string"}},"required":["id","orgId","email","name","givenName","familyName","company"],"type":"object"},"Metric":{"additionalProperties":false,"properties":{"appId":{"type":"string"},"granularity":{"format":"int32","type":"integer"},"metricName":{"type":"string"},"metricType":{"description":"Metric type. Known values: workflow_count, step_count (reported by executor SDKs), recovery_count (reported by Conductor). Not an enforced enum; newer SDK versions may report additional values.","type":"string"},"timeBucket":{"format":"date-time","type":"string"},"value":{"format":"int64","type":"integer"}},"required":["appId","metricType","metricName","granularity","timeBucket","value"],"type":"object"},"Notification":{"additionalProperties":false,"properties":{"consumed":{"type":"boolean"},"createdAt":{"format":"date-time","type":"string"},"message":{"type":"string"},"topic":{"nullable":true,"type":"string"}},"required":["topic","message","createdAt","consumed"],"type":"object"},"OrgMembers":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/OrgMembers.json","format":"uri","readOnly":true,"type":"string"},"orgName":{"type":"string"},"users":{"additionalProperties":{"$ref":"#/components/schemas/RoleOutput"},"type":"object"}},"required":["orgName","users"],"type":"object"},"Organization":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/Organization.json","format":"uri","readOnly":true,"type":"string"},"auditLogRetentionDays":{"format":"int32","type":"integer"},"createdAt":{"format":"date-time","type":"string"},"defaultRdsInstanceClassType":{"type":"string"},"id":{"type":"string"},"maxApps":{"format":"int32","type":"integer"},"maxConductorApps":{"format":"int32","type":"integer"},"maxDatabaseInstances":{"format":"int32","type":"integer"},"maxTeamMembers":{"format":"int32","type":"integer"},"maxVms":{"format":"int32","type":"integer"},"name":{"type":"string"},"subscriptionPlan":{"enum":["free","pro","past_limit","team","enterprise"],"type":"string"}},"required":["id","name","createdAt","subscriptionPlan","maxDatabaseInstances","maxApps","maxVms","defaultRdsInstanceClassType","maxTeamMembers","maxConductorApps","auditLogRetentionDays"],"type":"object"},"PatchAppInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/PatchAppInputBody.json","format":"uri","readOnly":true,"type":"string"},"executorTimeoutSecs":{"format":"int64","type":"integer"},"gcRowsThreshold":{"format":"int64","type":"integer"},"gcTimeThresholdMs":{"format":"int64","type":"integer"},"globalTimeoutMs":{"format":"int64","type":"integer"},"privateMode":{"type":"boolean"},"workflowMetricsEnabled":{"description":"Turns workflow metrics collection from this application's database on or off. Turning it back on resumes from now: the time it was off is recorded as missing, not collected.","type":"boolean"}},"type":"object"},"PatchLatestVersionInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/PatchLatestVersionInputBody.json","format":"uri","readOnly":true,"type":"string"},"versionName":{"type":"string"}},"required":["versionName"],"type":"object"},"PolicyOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/PolicyOutputBody.json","format":"uri","readOnly":true,"type":"string"},"policy":{"$ref":"#/components/schemas/AutoscalePolicy"}},"required":["policy"],"type":"object"},"PutAppInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/PutAppInputBody.json","format":"uri","readOnly":true,"type":"string"},"privateMode":{"type":"boolean"}},"type":"object"},"Queue":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/Queue.json","format":"uri","readOnly":true,"type":"string"},"applicationName":{"description":"The application that owns this queue, when several applications share a system database. Null for in-memory queues and for queues recorded before DBOS Transact tracked application names.","nullable":true,"type":"string"},"concurrency":{"format":"int32","nullable":true,"type":"integer"},"name":{"type":"string"},"partitionConcurrency":{"description":"Maximum workflows running concurrently within each partition. Null when no such limit is set, and for a queue using the deprecated partitionQueue option, where concurrency itself applies per partition.","format":"int32","nullable":true,"type":"integer"},"partitionQueue":{"type":"boolean"},"partitionRateLimitMax":{"description":"Maximum workflows started per rate limit period within each partition. Null when no such limit is set, and for a queue using the deprecated partitionQueue option, where rateLimitMax itself applies per partition.","format":"int32","nullable":true,"type":"integer"},"partitionRateLimitPeriodSecs":{"description":"Length in seconds of the per-partition rate limit period. Null whenever partitionRateLimitMax is null.","format":"double","nullable":true,"type":"number"},"partitionWorkerConcurrency":{"description":"Maximum workflows running concurrently on a single executor within each partition. Null when no such limit is set, and for a queue using the deprecated partitionQueue option, where workerConcurrency itself applies per partition.","format":"int32","nullable":true,"type":"integer"},"pollingIntervalSecs":{"format":"double","type":"number"},"priorityEnabled":{"type":"boolean"},"rateLimitMax":{"format":"int32","nullable":true,"type":"integer"},"rateLimitPeriodSecs":{"format":"double","nullable":true,"type":"number"},"workerConcurrency":{"format":"int32","nullable":true,"type":"integer"}},"required":["name","concurrency","workerConcurrency","rateLimitMax","rateLimitPeriodSecs","priorityEnabled","partitionQueue","pollingIntervalSecs","applicationName","partitionConcurrency","partitionWorkerConcurrency","partitionRateLimitMax","partitionRateLimitPeriodSecs"],"type":"object"},"QueueAutoscale":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/QueueAutoscale.json","format":"uri","readOnly":true,"type":"string"},"applicationVersion":{"description":"The application version this recommendation covers.","type":"string"},"desiredExecutors":{"description":"Executors of this version needed to satisfy the queue load. At least 1, unless the rollout policy caps old versions lower.","format":"int64","type":"integer"},"isLatest":{"description":"True for the application's latest registered version.","type":"boolean"},"observedAt":{"description":"Epoch ms when the underlying workflow aggregate was computed.","format":"int64","type":"integer"},"queueDepth":{"description":"ENQUEUED+PENDING backlog counted for this version on the policy queue.","format":"int64","type":"integer"},"queueName":{"description":"The queue the stored autoscaling policy scales on.","type":"string"}},"required":["applicationVersion","isLatest","desiredExecutors","queueName","queueDepth","observedAt"],"type":"object"},"RegisterUserInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/RegisterUserInputBody.json","format":"uri","readOnly":true,"type":"string"},"company":{"type":"string"},"familyName":{"type":"string"},"givenName":{"type":"string"},"name":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"},"secret":{"type":"string"}},"required":["name"],"type":"object"},"RegisterUserOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/RegisterUserOutputBody.json","format":"uri","readOnly":true,"type":"string"},"id":{"type":"string"}},"required":["id"],"type":"object"},"RequestDomainClaimInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/RequestDomainClaimInputBody.json","format":"uri","readOnly":true,"type":"string"},"domain":{"description":"The email domain to claim, e.g. \"example.com\". On DBOS-managed Conductor the claim has no effect until a DBOS administrator approves it. On self-hosted Conductor it takes effect immediately, with no review. Subdomains are not matched; claim them separately.","example":"example.com","maxLength":253,"minLength":4,"type":"string"}},"required":["domain"],"type":"object"},"ResumeWorkflowInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/ResumeWorkflowInputBody.json","format":"uri","readOnly":true,"type":"string"},"queueName":{"type":"string"},"shardKey":{"description":"The workflow's shard key. Required when the application's system database is sharded.","type":"string"}},"type":"object"},"RewindWorkflowInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/RewindWorkflowInputBody.json","format":"uri","readOnly":true,"type":"string"},"appVersion":{"description":"Application version to replay the workflow under. Defaults to the version it already ran on, which only an executor still on that version will dequeue.","type":"string"},"queueName":{"type":"string"},"queuePartitionKey":{"type":"string"},"shardKey":{"description":"The workflow's shard key. Required when the application's system database is sharded.","type":"string"},"startStep":{"description":"Step to rewind to. Defaults to the workflow's first step, discarding its whole history.","format":"int32","type":"integer"}},"type":"object"},"RoleOutput":{"additionalProperties":false,"properties":{"isGlobal":{"type":"boolean"},"name":{"type":"string"},"permissions":{"items":{"type":"string"},"type":"array"}},"required":["name","isGlobal","permissions"],"type":"object"},"RolloutPolicy":{"additionalProperties":false,"properties":{"maxExecutorsForOldApplicationVersions":{"description":"Cap every old version's recommendation at this many executors. Omit to size old versions from their own queue utilization, uncapped.","format":"int64","minimum":0,"type":"integer"},"maxOldApplicationVersions":{"description":"How many old application versions the autoscale response may include, newest registered first. Defaults to 0: only the latest version is reported.","format":"int64","minimum":0,"type":"integer"}},"type":"object"},"Schedule":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/Schedule.json","format":"uri","readOnly":true,"type":"string"},"applicationName":{"description":"The application that owns this schedule, when several applications share a system database. Null for schedules recorded before DBOS Transact tracked application names.","nullable":true,"type":"string"},"automaticBackfill":{"type":"boolean"},"context":{"nullable":true,"type":"string"},"cronExpression":{"type":"string"},"cronTimezone":{"nullable":true,"type":"string"},"lastFiredAt":{"format":"date-time","nullable":true,"type":"string"},"scheduleId":{"type":"string"},"scheduleName":{"type":"string"},"shardKey":{"description":"The shard key the schedule's workflows run under. Null on an unsharded system database.","nullable":true,"type":"string"},"status":{"description":"Schedule status as reported by DBOS Transact. Known values: ACTIVE, PAUSED. Not an enforced enum; newer SDK versions may report additional values.","type":"string"},"workflowClass":{"nullable":true,"type":"string"},"workflowName":{"type":"string"}},"required":["scheduleId","scheduleName","workflowName","workflowClass","cronExpression","status","context","lastFiredAt","automaticBackfill","cronTimezone","applicationName","shardKey"],"type":"object"},"SetOrgLimitsInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/SetOrgLimitsInputBody.json","format":"uri","readOnly":true,"type":"string"},"maxConductorApps":{"description":"New maxConductorApps. Must not be below the current value; omit to leave unchanged.","format":"int32","maximum":1000,"minimum":0,"type":"integer"},"maxTeamMembers":{"description":"New maxTeamMembers. Must not be below the current value; omit to leave unchanged.","format":"int32","maximum":1000,"minimum":0,"type":"integer"}},"type":"object"},"Step":{"additionalProperties":false,"properties":{"childShardKey":{"description":"The child workflow's shard key. Null for a step without a child workflow, or on an unsharded system database.","nullable":true,"type":"string"},"childWorkflowId":{"nullable":true,"type":"string"},"completedAt":{"format":"date-time","nullable":true,"type":"string"},"error":{"nullable":true,"type":"string"},"output":{"nullable":true,"type":"string"},"startedAt":{"format":"date-time","nullable":true,"type":"string"},"stepId":{"format":"int32","type":"integer"},"stepName":{"type":"string"}},"required":["stepId","stepName","output","error","childWorkflowId","childShardKey","startedAt","completedAt"],"type":"object"},"StepAggregate":{"additionalProperties":false,"properties":{"count":{"format":"int64","type":"integer"},"group":{"additionalProperties":{"nullable":true,"type":"string"},"type":"object"},"maxDurationMs":{"format":"int64","type":"integer"}},"required":["group"],"type":"object"},"StepAggregatesBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/StepAggregatesBody.json","format":"uri","readOnly":true,"type":"string"},"completedAfter":{"format":"date-time","type":"string"},"completedBefore":{"format":"date-time","type":"string"},"groupByFunctionName":{"type":"boolean"},"groupByStatus":{"type":"boolean"},"selectCount":{"type":"boolean"},"selectMaxDurationMs":{"type":"boolean"},"status":{"description":"Filter by step status as defined by DBOS Transact. Known values: SUCCESS, ERROR. Not an enforced enum; unrecognized values simply match nothing.","items":{"type":"string"},"type":"array"},"stepName":{"items":{"type":"string"},"type":"array"},"timeBucketSizeMs":{"format":"int64","type":"integer"},"workflowIdPrefix":{"items":{"type":"string"},"type":"array"}},"type":"object"},"StreamEntry":{"additionalProperties":false,"properties":{"key":{"type":"string"},"values":{"items":{"type":"string"},"type":"array"}},"required":["key","values"],"type":"object"},"Token":{"additionalProperties":false,"properties":{"appIds":{"items":{"type":"string"},"type":"array"},"createdAt":{"format":"date-time","type":"string"},"permissions":{"items":{"type":"string"},"type":"array"},"tokenName":{"type":"string"}},"required":["tokenName","createdAt","permissions","appIds"],"type":"object"},"TokenCreated":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/TokenCreated.json","format":"uri","readOnly":true,"type":"string"},"token":{"type":"string"},"tokenName":{"type":"string"}},"required":["token","tokenName"],"type":"object"},"TriggerOutputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/TriggerOutputBody.json","format":"uri","readOnly":true,"type":"string"},"workflowId":{"type":"string"}},"required":["workflowId"],"type":"object"},"UpdateOrgInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/UpdateOrgInputBody.json","format":"uri","readOnly":true,"type":"string"},"auditLogRetentionDays":{"format":"int32","maximum":3650,"minimum":7,"type":"integer"},"newName":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},"type":"object"},"UpdateTokenInputBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/UpdateTokenInputBody.json","format":"uri","readOnly":true,"type":"string"},"newName":{"minLength":1,"type":"string"}},"type":"object"},"UserProfile":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/UserProfile.json","format":"uri","readOnly":true,"type":"string"},"createdAt":{"format":"date-time","type":"string"},"email":{"type":"string"},"isDbosAdmin":{"description":"Present and true only for DBOS administrators; omitted otherwise.","type":"boolean"},"name":{"type":"string"},"orgId":{"type":"string"},"orgName":{"type":"string"},"role":{"$ref":"#/components/schemas/RoleOutput"},"subscriptionPlan":{"enum":["free","pro","past_limit","team","enterprise"],"type":"string"}},"required":["name","email","orgName","orgId","subscriptionPlan","createdAt"],"type":"object"},"Workflow":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/Workflow.json","format":"uri","readOnly":true,"type":"string"},"appVersion":{"nullable":true,"type":"string"},"applicationName":{"description":"The application that owns this workflow, when several applications share a system database. Null for workflows recorded before DBOS Transact tracked application names.","nullable":true,"type":"string"},"assumedRole":{"nullable":true,"type":"string"},"attributes":{"nullable":true,"type":"string"},"completedAt":{"format":"date-time","nullable":true,"type":"string"},"createdAt":{"format":"date-time","type":"string"},"deadline":{"format":"date-time","nullable":true,"type":"string"},"deduplicationId":{"nullable":true,"type":"string"},"delayUntil":{"format":"date-time","nullable":true,"type":"string"},"dequeuedAt":{"format":"date-time","nullable":true,"type":"string"},"error":{"nullable":true,"type":"string"},"executorId":{"nullable":true,"type":"string"},"forkedFrom":{"nullable":true,"type":"string"},"input":{"nullable":true,"type":"string"},"output":{"nullable":true,"type":"string"},"parentShardKey":{"description":"The parent workflow's shard key. Null for a workflow without a parent, or on an unsharded system database.","nullable":true,"type":"string"},"parentWorkflowId":{"nullable":true,"type":"string"},"priority":{"format":"int32","type":"integer"},"queueName":{"nullable":true,"type":"string"},"queuePartitionKey":{"nullable":true,"type":"string"},"roles":{"nullable":true,"type":"string"},"scheduleName":{"nullable":true,"type":"string"},"shardKey":{"description":"The workflow's shard key. Null on an unsharded system database.","nullable":true,"type":"string"},"status":{"description":"Workflow status as reported by DBOS Transact. Known values: ENQUEUED, DELAYED, PENDING, SUCCESS, ERROR, MAX_RECOVERY_ATTEMPTS_EXCEEDED, CANCELLED. Not an enforced enum; newer SDK versions may report additional values.","type":"string"},"timeoutMs":{"format":"int64","nullable":true,"type":"integer"},"updatedAt":{"format":"date-time","type":"string"},"user":{"nullable":true,"type":"string"},"wasForkedFrom":{"type":"boolean"},"workflowClass":{"nullable":true,"type":"string"},"workflowConfig":{"nullable":true,"type":"string"},"workflowId":{"type":"string"},"workflowName":{"nullable":true,"type":"string"}},"required":["workflowId","status","workflowName","workflowClass","workflowConfig","user","assumedRole","roles","input","output","error","createdAt","updatedAt","queueName","appVersion","executorId","timeoutMs","deadline","deduplicationId","priority","queuePartitionKey","forkedFrom","wasForkedFrom","parentWorkflowId","dequeuedAt","delayUntil","completedAt","attributes","scheduleName","applicationName","shardKey","parentShardKey"],"type":"object"},"WorkflowAggregate":{"additionalProperties":false,"properties":{"count":{"format":"int64","type":"integer"},"group":{"additionalProperties":{"nullable":true,"type":"string"},"type":"object"},"maxQueueWaitMs":{"format":"int64","type":"integer"},"maxTotalLatencyMs":{"format":"int64","type":"integer"},"minCreatedAt":{"format":"date-time","type":"string"}},"required":["group"],"type":"object"},"WorkflowAggregatesBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/WorkflowAggregatesBody.json","format":"uri","readOnly":true,"type":"string"},"appVersion":{"items":{"type":"string"},"nullable":true,"type":"array"},"attributes":{"additionalProperties":{},"type":"object"},"completedAfter":{"format":"date-time","type":"string"},"completedBefore":{"format":"date-time","type":"string"},"dequeuedAfter":{"format":"date-time","type":"string"},"dequeuedBefore":{"format":"date-time","type":"string"},"endTime":{"format":"date-time","type":"string"},"executorId":{"items":{"type":"string"},"nullable":true,"type":"array"},"forkedFrom":{"items":{"type":"string"},"nullable":true,"type":"array"},"groupByAppVersion":{"type":"boolean"},"groupByApplicationName":{"type":"boolean"},"groupByExecutorId":{"type":"boolean"},"groupByQueueName":{"type":"boolean"},"groupByStatus":{"type":"boolean"},"groupByWorkflowName":{"type":"boolean"},"hasParent":{"type":"boolean"},"isFork":{"type":"boolean"},"parentWorkflowId":{"items":{"type":"string"},"nullable":true,"type":"array"},"queueName":{"items":{"type":"string"},"nullable":true,"type":"array"},"scheduleName":{"items":{"type":"string"},"nullable":true,"type":"array"},"selectCount":{"type":"boolean"},"selectMaxQueueWaitMs":{"type":"boolean"},"selectMaxTotalLatencyMs":{"type":"boolean"},"selectMinCreatedAt":{"type":"boolean"},"startTime":{"format":"date-time","type":"string"},"status":{"items":{"type":"string"},"nullable":true,"type":"array"},"timeBucketSizeMs":{"format":"int64","type":"integer"},"user":{"items":{"type":"string"},"nullable":true,"type":"array"},"wasForkedFrom":{"type":"boolean"},"workflowIdPrefix":{"items":{"type":"string"},"nullable":true,"type":"array"},"workflowIds":{"items":{"type":"string"},"nullable":true,"type":"array"},"workflowName":{"items":{"type":"string"},"nullable":true,"type":"array"}},"type":"object"},"WorkflowMetricBreakdown":{"additionalProperties":false,"properties":{"buckets":{"description":"Histogram bins with a count, in order; absent for categorical breakdowns and when unavailable. Bins start at the effective start time and step by the bucket width; with an unbounded lower bound they start at multiples of the width from the Unix epoch.","items":{"$ref":"#/components/schemas/WorkflowMetricBucket"},"type":"array"},"reasons":{"description":"Why the breakdown is partial or unavailable: unsupported_filter, degraded_bucket, missing_collection, history_before_origin, archive_limit, live_timeout, live_limit, live_unavailable, collection_disabled when the application's workflow metrics collection is turned off, and not_requested for a live part the request did not ask for, which is not a failure.","items":{"type":"string"},"type":"array"},"state":{"enum":["available","partial","unavailable"],"type":"string"},"values":{"description":"Categorical counts, most frequent first; absent for the histogram and when unavailable.","items":{"$ref":"#/components/schemas/WorkflowMetricCategory"},"type":"array"}},"required":["state","reasons"],"type":"object"},"WorkflowMetricBreakdowns":{"additionalProperties":false,"properties":{"appVersion":{"$ref":"#/components/schemas/WorkflowMetricBreakdown"},"histogram":{"$ref":"#/components/schemas/WorkflowMetricBreakdown"},"queueName":{"$ref":"#/components/schemas/WorkflowMetricBreakdown"},"status":{"$ref":"#/components/schemas/WorkflowMetricBreakdown"},"workflowName":{"$ref":"#/components/schemas/WorkflowMetricBreakdown"}},"required":["status","workflowName","queueName","appVersion","histogram"],"type":"object"},"WorkflowMetricBucket":{"additionalProperties":false,"properties":{"count":{"format":"int64","type":"integer"},"start":{"format":"date-time","type":"string"},"statusCounts":{"additionalProperties":{"format":"int64","type":"integer"},"description":"The count split by workflow status, omitting statuses with none; it sums to count. History and live combine by adding status by status.","type":"object"}},"required":["start","count"],"type":"object"},"WorkflowMetricCategory":{"additionalProperties":false,"properties":{"count":{"format":"int64","type":"integer"},"kind":{"enum":["value","null","overflow"],"type":"string"},"maxQueueWaitMs":{"description":"The longest queue wait (dequeue time minus creation time) among the counted workflows, in milliseconds; absent when none was dequeued. History and live combine by taking the larger value, not by adding.","format":"int64","type":"integer"},"statusCounts":{"additionalProperties":{"format":"int64","type":"integer"},"description":"The count split by workflow status, omitting statuses with none. Present on queue breakdown values only, where it sums to count. History and live combine by adding status by status.","type":"object"},"trimmed":{"description":"The value was cut to the length limit, so filtering the list by it is not exact.","type":"boolean"},"value":{"description":"The observed value, cut to 1,024 characters; empty for null and overflow.","type":"string"}},"required":["kind","value","trimmed","count"],"type":"object"},"WorkflowMetricHistoryMeta":{"additionalProperties":false,"properties":{"collectionState":{"description":"lagging: two or more closed five-minute intervals are uncollected. disabled: the application's workflow metrics collection is turned off; every breakdown is unavailable with collection_disabled and the archive's fields are absent.","enum":["running","lagging","paused","no_eligible_executor","disabled"],"type":"string"},"coveredEnd":{"description":"The archive's watermark: completions before it are collected or were skipped. Absent while collection is disabled.","format":"date-time","type":"string"},"effectiveEndTime":{"description":"The request's upper bound snapped up to the histogram tier; absent when unbounded.","format":"date-time","type":"string"},"effectiveStartTime":{"description":"The request's lower bound snapped down to the histogram tier; absent when unbounded.","format":"date-time","type":"string"},"generation":{"description":"Absent while collection is disabled.","format":"int64","type":"integer"},"histogramTier":{"description":"Absent while collection is disabled.","enum":["1m","1h","1d"],"type":"string"},"lastGapEnd":{"description":"End of the most recently skipped completion interval; absent when none was skipped. A range starting before it may be missing workflows created in it, and is partial with missing_collection.","format":"date-time","type":"string"},"lastReceiptAt":{"format":"date-time","type":"string"},"legacyCompletionCoverage":{"description":"Workflows without a completion timestamp (pre-migration history) are never collected.","enum":["not_guaranteed"],"type":"string"},"origin":{"description":"Completions from here on are collected, minus skipped intervals; nothing before it ever is. Absent while collection is disabled.","format":"date-time","type":"string"},"semantics":{"description":"Counts are terminal contributions observed by the collector, attributed to creation time: deleted workflows stay counted and a resumed workflow can count twice.","enum":["observed_terminal_activity"],"type":"string"},"statusOnlyBuckets":{"description":"Buckets with collapsed detail among those the categorical breakdowns read. Absent while collection is disabled.","format":"int64","type":"integer"},"timeBucketSizeMs":{"description":"The effective histogram width. Absent while collection is disabled.","format":"int64","type":"integer"},"unsupportedFilters":{"description":"Active filters the archive could not apply.","items":{"type":"string"},"type":"array"}},"required":["semantics","collectionState","unsupportedFilters","legacyCompletionCoverage"],"type":"object"},"WorkflowMetricHistoryResponse":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/WorkflowMetricHistoryResponse.json","format":"uri","readOnly":true,"type":"string"},"breakdowns":{"$ref":"#/components/schemas/WorkflowMetricBreakdowns"},"liveContext":{"$ref":"#/components/schemas/WorkflowMetricLiveContext","description":"What a live request echoes. Absent while collection is disabled, when there is no supplement to ask for."},"meta":{"$ref":"#/components/schemas/WorkflowMetricHistoryMeta"}},"required":["breakdowns","meta"],"type":"object"},"WorkflowMetricLiveAvailabilities":{"additionalProperties":false,"properties":{"appVersion":{"$ref":"#/components/schemas/WorkflowMetricLiveAvailability"},"histogram":{"$ref":"#/components/schemas/WorkflowMetricLiveAvailability"},"queueName":{"$ref":"#/components/schemas/WorkflowMetricLiveAvailability"},"status":{"$ref":"#/components/schemas/WorkflowMetricLiveAvailability"},"workflowName":{"$ref":"#/components/schemas/WorkflowMetricLiveAvailability"}},"required":["status","workflowName","queueName","appVersion","histogram"],"type":"object"},"WorkflowMetricLiveAvailability":{"additionalProperties":false,"properties":{"components":{"description":"The components the chart sums over the archive. The nonterminal component is listed only when the request asked for its part of the chart: the categorical charts under breakdowns, the histogram under bins.","items":{"type":"string"},"type":"array"},"reasons":{"items":{"type":"string"},"type":"array"},"state":{"description":"unavailable for an archive-side reason, whatever live returned; partial when a component the chart sums failed or the live lookback leaves an uncovered completion interval (missing_collection).","enum":["available","partial","unavailable"],"type":"string"}},"required":["state","reasons","components"],"type":"object"},"WorkflowMetricLiveComponent":{"additionalProperties":false,"properties":{"breakdowns":{"$ref":"#/components/schemas/WorkflowMetricBreakdowns","description":"This component's own counts; unavailable with the outcome's reason when it failed."},"detail":{"description":"What went wrong, for a failed outcome.","type":"string"},"outcome":{"description":"empty_window: nothing to ask, the watermark is at the request time (terminal only). not_attempted: an unsupported filter, no source work. not_requested: the request set nonterminal to none, so no source work (nonterminal only). disabled: the application's workflow metrics collection is turned off, so no source work. timeout: the shared 20-second budget elapsed. row_limit: over 20,000 rows. no_executor: no eligible executor. failed: dispatch failed or the reply was unusable. A failed terminal component does not stop the nonterminal one; only the spent budget stops later requests.","enum":["success","empty_window","not_attempted","timeout","row_limit","no_executor","failed","not_requested","disabled"],"type":"string"},"receivedAt":{"description":"When the reply arrived; absent without one.","format":"date-time","type":"string"},"rows":{"description":"Rows in an accepted reply.","format":"int64","type":"integer"},"startedAt":{"description":"When the source request was dispatched; absent when it never was.","format":"date-time","type":"string"},"windowEnd":{"format":"date-time","type":"string"},"windowStart":{"description":"Terminal only: the completion window [windowStart, windowEnd); absent when not dispatched.","format":"date-time","type":"string"}},"required":["outcome","rows","breakdowns"],"type":"object"},"WorkflowMetricLiveContext":{"additionalProperties":false,"properties":{"effectiveEndTime":{"description":"Absent for an unbounded upper bound.","format":"date-time","type":"string"},"effectiveStartTime":{"description":"Absent for an unbounded lower bound.","format":"date-time","type":"string"},"timeBucketSizeMs":{"format":"int64","type":"integer"},"watermark":{"description":"The archive's watermark; the live terminal window starts here.","format":"date-time","type":"string"}},"required":["watermark","timeBucketSizeMs"],"type":"object"},"WorkflowMetricLiveMeta":{"additionalProperties":false,"properties":{"rowLimit":{"description":"Rows accepted per component.","format":"int64","type":"integer"},"statusOnlyBuckets":{"description":"Buckets with collapsed detail among those the history categorical breakdowns read.","format":"int64","type":"integer"},"terminalLookbackMs":{"description":"How far before the request time the terminal window can reach; an older watermark leaves a hole.","format":"int64","type":"integer"},"unsupportedFilters":{"description":"Active filters the archive could not apply.","items":{"type":"string"},"type":"array"}},"required":["unsupportedFilters","statusOnlyBuckets","terminalLookbackMs","rowLimit"],"type":"object"},"WorkflowMetricLiveResponse":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/WorkflowMetricLiveResponse.json","format":"uri","readOnly":true,"type":"string"},"combined":{"$ref":"#/components/schemas/WorkflowMetricLiveAvailabilities"},"liveContext":{"$ref":"#/components/schemas/WorkflowMetricLiveContext","description":"The context this supplement was computed for; a late response for a superseded one can be discarded."},"meta":{"$ref":"#/components/schemas/WorkflowMetricLiveMeta"},"nonterminal":{"$ref":"#/components/schemas/WorkflowMetricLiveComponent","description":"PENDING, ENQUEUED and DELAYED workflows created in the effective range, regardless of age."},"terminal":{"$ref":"#/components/schemas/WorkflowMetricLiveComponent","description":"Terminal completions since the watermark, within the lookback, created in the effective range."}},"required":["terminal","nonterminal","combined","liveContext","meta"],"type":"object"},"WorkflowMetricsHistoryBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/WorkflowMetricsHistoryBody.json","format":"uri","readOnly":true,"type":"string"},"appVersion":{"items":{"type":"string"},"nullable":true,"type":"array"},"attributes":{"additionalProperties":{},"description":"Unsupported by the archive; when set the breakdowns are unavailable.","type":"object"},"completedAfter":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","format":"date-time","type":"string"},"completedBefore":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","format":"date-time","type":"string"},"dequeuedAfter":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","format":"date-time","type":"string"},"dequeuedBefore":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","format":"date-time","type":"string"},"endTime":{"description":"Creation-time upper bound; omitted means no bound. Ignored by the live endpoint, which uses the effective range.","format":"date-time","type":"string"},"executorId":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"forkedFrom":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"hasParent":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","type":"boolean"},"parentWorkflowId":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"queueName":{"items":{"type":"string"},"nullable":true,"type":"array"},"queuesOnly":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","type":"boolean"},"scheduleName":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"startTime":{"description":"Creation-time lower bound; omitted means all time. Ignored by the live endpoint, which uses the effective range.","format":"date-time","type":"string"},"status":{"items":{"type":"string"},"nullable":true,"type":"array"},"timeBucketSizeMs":{"description":"Requested histogram width; the effective width is at least a whole minute and widens to keep the histogram under 1,000 bins.","format":"int64","minimum":1,"type":"integer"},"user":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"wasForkedFrom":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","type":"boolean"},"workflowIdPrefix":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"workflowIds":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"workflowName":{"items":{"type":"string"},"nullable":true,"type":"array"},"workflowNameExclude":{"description":"Workflow names to leave out; the name breakdown itself ignores it.","items":{"type":"string"},"nullable":true,"type":"array"}},"required":["timeBucketSizeMs"],"type":"object"},"WorkflowMetricsLiveBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/WorkflowMetricsLiveBody.json","format":"uri","readOnly":true,"type":"string"},"appVersion":{"items":{"type":"string"},"nullable":true,"type":"array"},"attributes":{"additionalProperties":{},"description":"Unsupported by the archive; when set the breakdowns are unavailable.","type":"object"},"completedAfter":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","format":"date-time","type":"string"},"completedBefore":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","format":"date-time","type":"string"},"dequeuedAfter":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","format":"date-time","type":"string"},"dequeuedBefore":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","format":"date-time","type":"string"},"effectiveEndTime":{"description":"liveContext.effectiveEndTime of the history response; omitted when unbounded.","format":"date-time","type":"string"},"effectiveStartTime":{"description":"liveContext.effectiveStartTime of the history response; omitted when unbounded.","format":"date-time","type":"string"},"endTime":{"description":"Creation-time upper bound; omitted means no bound. Ignored by the live endpoint, which uses the effective range.","format":"date-time","type":"string"},"executorId":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"forkedFrom":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"hasParent":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","type":"boolean"},"nonterminal":{"default":"breakdowns","description":"The part of the nonterminal component to compute. breakdowns: the categorical breakdowns; its histogram is unavailable with not_requested. bins: the histogram, with the filter applied at the source; the categorical breakdowns are unavailable with not_requested. none: no nonterminal source work; the component is not_requested. A part not requested joins no combined chart.","enum":["breakdowns","bins","none"],"type":"string"},"parentWorkflowId":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"queueName":{"items":{"type":"string"},"nullable":true,"type":"array"},"queuesOnly":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","type":"boolean"},"scheduleName":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"startTime":{"description":"Creation-time lower bound; omitted means all time. Ignored by the live endpoint, which uses the effective range.","format":"date-time","type":"string"},"status":{"items":{"type":"string"},"nullable":true,"type":"array"},"timeBucketSizeMs":{"description":"liveContext.timeBucketSizeMs of the history response; whole minutes.","format":"int64","minimum":60000,"type":"integer"},"user":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"wasForkedFrom":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","type":"boolean"},"watermark":{"description":"liveContext.watermark of the history response; the terminal window starts here.","format":"date-time","type":"string"},"workflowIdPrefix":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"workflowIds":{"description":"Unsupported by the archive; when set the breakdowns are unavailable.","items":{"type":"string"},"nullable":true,"type":"array"},"workflowName":{"items":{"type":"string"},"nullable":true,"type":"array"},"workflowNameExclude":{"description":"Workflow names to leave out; the name breakdown itself ignores it.","items":{"type":"string"},"nullable":true,"type":"array"}},"required":["watermark","timeBucketSizeMs"],"type":"object"},"WorkflowSearchBody":{"additionalProperties":false,"properties":{"$schema":{"description":"A URL to the JSON Schema for this object.","example":"//schemas/WorkflowSearchBody.json","format":"uri","readOnly":true,"type":"string"},"appVersion":{"items":{"type":"string"},"nullable":true,"type":"array"},"attributes":{"additionalProperties":{},"type":"object"},"completedAfter":{"format":"date-time","type":"string"},"completedBefore":{"format":"date-time","type":"string"},"dequeuedAfter":{"format":"date-time","type":"string"},"dequeuedBefore":{"format":"date-time","type":"string"},"endTime":{"format":"date-time","type":"string"},"executorId":{"items":{"type":"string"},"nullable":true,"type":"array"},"forkedFrom":{"items":{"type":"string"},"nullable":true,"type":"array"},"hasParent":{"type":"boolean"},"isFork":{"type":"boolean"},"limit":{"format":"int64","type":"integer"},"loadInput":{"type":"boolean"},"loadOutput":{"type":"boolean"},"offset":{"format":"int64","type":"integer"},"parentShardKey":{"description":"Match workflows whose parents are under any of these shard keys.","items":{"type":"string"},"nullable":true,"type":"array"},"parentWorkflowId":{"items":{"type":"string"},"nullable":true,"type":"array"},"queueName":{"items":{"type":"string"},"nullable":true,"type":"array"},"queuesOnly":{"type":"boolean"},"scheduleName":{"items":{"type":"string"},"nullable":true,"type":"array"},"shardKey":{"description":"Match workflows under any of these shard keys.","items":{"type":"string"},"nullable":true,"type":"array"},"sortDesc":{"type":"boolean"},"startTime":{"format":"date-time","type":"string"},"status":{"items":{"type":"string"},"nullable":true,"type":"array"},"user":{"items":{"type":"string"},"nullable":true,"type":"array"},"wasForkedFrom":{"type":"boolean"},"workflowIdPrefix":{"items":{"type":"string"},"nullable":true,"type":"array"},"workflowIds":{"items":{"type":"string"},"nullable":true,"type":"array"},"workflowName":{"items":{"type":"string"},"nullable":true,"type":"array"}},"type":"object"}},"securitySchemes":{"ApiKeyAuth":{"description":"Conductor API key (see POST /v2/orgs/{orgName}/tokens/{tokenName}), prefixed \"dbos_\".","scheme":"bearer","type":"http"},"BearerAuth":{"bearerFormat":"JWT","description":"Auth0-issued user JWT.","scheme":"bearer","type":"http"}}},"info":{"title":"Conductor API","version":"2.0.0"},"openapi":"3.0.3","paths":{"/v2/entitlements":{"get":{"description":"Returns the Transact Enterprise features the calling API key's org may use; a feature reported false is not included in the org's plan. An org past its plan limit gets 403 with X-DBOS-Error: past_limit instead. Self-hosted Conductor grants every feature, and with OAuth disabled it needs no credentials. Otherwise any valid API key is accepted regardless of its permissions, and user credentials are rejected with 401.","operationId":"getEntitlements","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EntitlementsResponse"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get Transact Enterprise entitlements","tags":["Entitlements"]}},"/v2/orgs/{orgName}":{"get":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"getOrg","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Organization"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get org","tags":["Orgs"],"x-dbos-requires-oauth":true},"patch":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"updateOrg","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateOrgInputBody"}}},"required":true},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Update org","tags":["Orgs"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/apps":{"get":{"operationId":"listApps","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Application"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List applications","tags":["Applications"]}},"/v2/orgs/{orgName}/apps/{appName}":{"delete":{"operationId":"deleteApp","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Delete application","tags":["Applications"]},"get":{"operationId":"getApp","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Application"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get application","tags":["Applications"]},"patch":{"operationId":"updateApp","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchAppInputBody"}}},"required":true},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Update application","tags":["Applications"]},"put":{"operationId":"registerApp","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PutAppInputBody"}}}},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Register application","tags":["Applications"]}},"/v2/orgs/{orgName}/apps/{appName}/alerting-rules":{"get":{"operationId":"listAlertingRules","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AlertingRule"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List alerting rules","tags":["Alerting"]},"post":{"operationId":"createAlertingRule","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAlertInputBody"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlertingRule"}}},"description":"Created"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Create alerting rule","tags":["Alerting"]}},"/v2/orgs/{orgName}/apps/{appName}/alerting-rules/{ruleId}":{"delete":{"operationId":"deleteAlertingRule","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"ruleId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Delete alerting rule","tags":["Alerting"]}},"/v2/orgs/{orgName}/apps/{appName}/autoscale":{"get":{"description":"Computes how many executors each of the application's versions needs right now, given the backlog of its stored autoscaling policy's queue. Returns one entry per version. 404 when no policy is installed; 400 when the policy queue is no longer scalable. Requires a DBOS Teams subscription.","operationId":"getAutoscale","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/QueueAutoscale"},"nullable":true,"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get autoscaling recommendation","tags":["Queues"]}},"/v2/orgs/{orgName}/apps/{appName}/autoscale/versions/{version}":{"get":{"description":"Computes how many executors one application version needs right now, given the backlog of the stored autoscaling policy's queue. Made to be polled per version, e.g. by one KEDA ScaledObject per version's deployment. The latest version is always sized to at least 1; an old version reports 0 once it has no work left on that queue, signaling it can be torn down. 404 when no policy is installed or the version was never registered; 400 when the policy queue is no longer scalable. Requires a DBOS Teams subscription.","operationId":"getAutoscaleVersion","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"description":"A registered application version, or \"latest\" for whichever version is currently latest.","in":"path","name":"version","required":true,"schema":{"description":"A registered application version, or \"latest\" for whichever version is currently latest.","maxLength":256,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueueAutoscale"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get one version's autoscaling recommendation","tags":["Queues"]}},"/v2/orgs/{orgName}/apps/{appName}/autoscaling-policy":{"delete":{"description":"Clears the stored policy. Deleting an absent policy succeeds. Requires a DBOS Teams subscription.","operationId":"deleteAutoscalingPolicy","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Delete autoscaling policy","tags":["Queues"]},"get":{"description":"Returns the application's stored queue-based autoscaling policy; 404 when none is set. Requires a DBOS Teams subscription.","operationId":"getAutoscalingPolicy","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyOutputBody"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get autoscaling policy","tags":["Queues"]},"put":{"description":"Validates and stores the policy, echoing it back as stored. The named queue must exist and be scalable — worker_concurrency set — validated from a healthy executor. Requires a DBOS Teams subscription.","operationId":"setAutoscalingPolicy","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutoscalePolicy"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyOutputBody"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Set autoscaling policy","tags":["Queues"]}},"/v2/orgs/{orgName}/apps/{appName}/executors":{"get":{"operationId":"listExecutors","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Executor"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List executors","tags":["Executors"]}},"/v2/orgs/{orgName}/apps/{appName}/metrics":{"get":{"operationId":"listMetrics","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"explode":false,"in":"query","name":"startTime","required":true,"schema":{"format":"date-time","type":"string"}},{"explode":false,"in":"query","name":"endTime","required":true,"schema":{"format":"date-time","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Metric"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List metrics","tags":["Metrics"]}},"/v2/orgs/{orgName}/apps/{appName}/queues":{"get":{"operationId":"listQueues","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Queue"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List queues","tags":["Queues"]}},"/v2/orgs/{orgName}/apps/{appName}/queues/{queueName}":{"get":{"operationId":"getQueue","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"queueName","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Queue"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get queue","tags":["Queues"]}},"/v2/orgs/{orgName}/apps/{appName}/schedules":{"get":{"operationId":"listSchedules","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"description":"Filter by schedule status as defined by DBOS Transact. Known values: ACTIVE, PAUSED. Not an enforced enum; unrecognized values simply match nothing.","explode":false,"in":"query","name":"status","schema":{"description":"Filter by schedule status as defined by DBOS Transact. Known values: ACTIVE, PAUSED. Not an enforced enum; unrecognized values simply match nothing.","type":"string"}},{"explode":false,"in":"query","name":"workflowName","schema":{"type":"string"}},{"explode":false,"in":"query","name":"scheduleNamePrefix","schema":{"type":"string"}},{"explode":false,"in":"query","name":"loadContext","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Schedule"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List schedules","tags":["Schedules"]}},"/v2/orgs/{orgName}/apps/{appName}/schedules/{scheduleName}":{"get":{"operationId":"getSchedule","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"scheduleName","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Schedule"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get schedule","tags":["Schedules"]}},"/v2/orgs/{orgName}/apps/{appName}/schedules/{scheduleName}/backfill":{"post":{"operationId":"backfillSchedule","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"scheduleName","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BackfillInputBody"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BackfillOutputBody"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Backfill schedule","tags":["Schedules"]}},"/v2/orgs/{orgName}/apps/{appName}/schedules/{scheduleName}/pause":{"post":{"operationId":"pauseSchedule","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"scheduleName","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Pause schedule","tags":["Schedules"]}},"/v2/orgs/{orgName}/apps/{appName}/schedules/{scheduleName}/resume":{"post":{"operationId":"resumeSchedule","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"scheduleName","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Resume schedule","tags":["Schedules"]}},"/v2/orgs/{orgName}/apps/{appName}/schedules/{scheduleName}/trigger":{"post":{"operationId":"triggerSchedule","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"scheduleName","required":true,"schema":{"type":"string"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TriggerOutputBody"}}},"description":"Created","headers":{"Location":{"schema":{"type":"string"}}}},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Trigger schedule","tags":["Schedules"]}},"/v2/orgs/{orgName}/apps/{appName}/steps/aggregates":{"post":{"operationId":"getStepAggregates","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StepAggregatesBody"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/StepAggregate"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get step aggregates","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/versions":{"get":{"operationId":"listAppVersions","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ApplicationVersion"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List application versions","tags":["Applications"]}},"/v2/orgs/{orgName}/apps/{appName}/versions/latest":{"patch":{"operationId":"setLatestAppVersion","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchLatestVersionInputBody"}}},"required":true},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Set latest application version","tags":["Applications"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows":{"get":{"operationId":"listWorkflows","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"explode":false,"in":"query","name":"status","schema":{"type":"string"}},{"explode":false,"in":"query","name":"workflowName","schema":{"type":"string"}},{"explode":false,"in":"query","name":"limit","schema":{"format":"int64","type":"integer"}},{"explode":false,"in":"query","name":"offset","schema":{"format":"int64","type":"integer"}},{"explode":false,"in":"query","name":"sortDesc","schema":{"type":"boolean"}},{"explode":false,"in":"query","name":"loadInput","schema":{"type":"boolean"}},{"explode":false,"in":"query","name":"loadOutput","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Workflow"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List workflows","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/aggregates":{"post":{"operationId":"getWorkflowAggregates","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowAggregatesBody"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/WorkflowAggregate"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get workflow aggregates","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/bulk-cancel":{"post":{"operationId":"bulkCancelWorkflows","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkCancelInputBody"}}},"required":true},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Bulk cancel workflows","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/bulk-delete":{"post":{"operationId":"bulkDeleteWorkflows","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkDeleteInputBody"}}},"required":true},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Bulk delete workflows","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/bulk-fork-from-failure":{"post":{"operationId":"bulkForkWorkflowsFromFailure","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkForkFromFailureBody"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkForkFromFailureOutputBody"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Bulk fork workflows from failure","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/bulk-resume":{"post":{"operationId":"bulkResumeWorkflows","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkResumeInputBody"}}},"required":true},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Bulk resume workflows","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/import":{"post":{"operationId":"importWorkflow","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportWorkflowInputBody"}}},"required":true},"responses":{"201":{"description":"Created"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Import workflow","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/metrics/history":{"post":{"description":"Renders the workflow filter charts from conductor's archive of observed terminal activity, without querying the application's database. 404 when the application has no archive yet.","operationId":"getWorkflowMetricsHistory","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowMetricsHistoryBody"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowMetricHistoryResponse"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get archived workflow metrics","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/metrics/live":{"post":{"description":"Asks one executor, under one 20-second budget, for terminal completions since the history response's watermark (at most 15 minutes back) and for the workflows still pending, both within the effective creation range. Source failures are per-component outcomes, never errors. 400 for a context outside this application's archive, 404 without an archive.","operationId":"getWorkflowMetricsLive","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowMetricsLiveBody"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowMetricLiveResponse"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get the live supplement to archived workflow metrics","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/search":{"post":{"operationId":"searchWorkflows","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowSearchBody"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Workflow"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Search workflows","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}":{"delete":{"operationId":"deleteWorkflow","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}},{"explode":false,"in":"query","name":"deleteChildren","schema":{"type":"boolean"}},{"description":"The workflow's shard key. Required when the application's system database is sharded.","explode":false,"in":"query","name":"shardKey","schema":{"description":"The workflow's shard key. Required when the application's system database is sharded.","type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Delete workflow","tags":["Workflows"]},"get":{"operationId":"getWorkflow","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}},{"description":"The workflow's shard key. Required when the application's system database is sharded.","explode":false,"in":"query","name":"shardKey","schema":{"description":"The workflow's shard key. Required when the application's system database is sharded.","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Workflow"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get workflow","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}/cancel":{"post":{"operationId":"cancelWorkflow","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CancelWorkflowInputBody"}}}},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Cancel workflow","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}/events":{"get":{"operationId":"listWorkflowEvents","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}},{"description":"The workflow's shard key. Required when the application's system database is sharded.","explode":false,"in":"query","name":"shardKey","schema":{"description":"The workflow's shard key. Required when the application's system database is sharded.","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Event"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List workflow events","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}/export":{"get":{"operationId":"exportWorkflow","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}},{"explode":false,"in":"query","name":"exportChildren","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportWorkflowOutputBody"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Export workflow","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}/fork":{"post":{"operationId":"forkWorkflow","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForkWorkflowInputBody"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForkWorkflowOutputBody"}}},"description":"Created","headers":{"Location":{"schema":{"type":"string"}}}},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Fork workflow","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}/notifications":{"get":{"operationId":"listWorkflowNotifications","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}},{"description":"The workflow's shard key. Required when the application's system database is sharded.","explode":false,"in":"query","name":"shardKey","schema":{"description":"The workflow's shard key. Required when the application's system database is sharded.","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Notification"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List workflow notifications","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}/resume":{"post":{"operationId":"resumeWorkflow","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResumeWorkflowInputBody"}}}},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Resume workflow","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}/rewind":{"post":{"operationId":"rewindWorkflow","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RewindWorkflowInputBody"}}}},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Rewind workflow","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}/steps":{"get":{"operationId":"listWorkflowSteps","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}},{"explode":false,"in":"query","name":"limit","schema":{"format":"int64","type":"integer"}},{"explode":false,"in":"query","name":"offset","schema":{"format":"int64","type":"integer"}},{"description":"The workflow's shard key. Required when the application's system database is sharded.","explode":false,"in":"query","name":"shardKey","schema":{"description":"The workflow's shard key. Required when the application's system database is sharded.","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Step"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List workflow steps","tags":["Workflows"]}},"/v2/orgs/{orgName}/apps/{appName}/workflows/{workflowId}/streams":{"get":{"operationId":"listWorkflowStreams","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"appName","required":true,"schema":{"maxLength":256,"minLength":3,"pattern":"^[a-z0-9-_]+$","type":"string"}},{"in":"path","name":"workflowId","required":true,"schema":{"type":"string"}},{"description":"The workflow's shard key. Required when the application's system database is sharded.","explode":false,"in":"query","name":"shardKey","schema":{"description":"The workflow's shard key. Required when the application's system database is sharded.","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/StreamEntry"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List workflow streams","tags":["Workflows"]}},"/v2/orgs/{orgName}/audit-logs":{"get":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"listAuditLogs","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"explode":false,"in":"query","name":"startTime","schema":{"format":"date-time","type":"string"}},{"explode":false,"in":"query","name":"endTime","schema":{"format":"date-time","type":"string"}},{"explode":false,"in":"query","name":"operation","schema":{"type":"string"}},{"explode":false,"in":"query","name":"subject","schema":{"type":"string"}},{"explode":false,"in":"query","name":"target","schema":{"type":"string"}},{"explode":false,"in":"query","name":"limit","schema":{"format":"int64","type":"integer"}},{"explode":false,"in":"query","name":"offset","schema":{"format":"int64","type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AuditLogEntry"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List audit logs","tags":["Audit"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/domain-claims":{"get":{"description":"A domain claim adds users who register with an email at that domain to this organization automatically. On DBOS-managed Conductor a claim must be approved by DBOS before it takes effect; self-hosted claims take effect immediately. Claims apply to new registrations only — approving one never moves users who already have accounts, and revoking one never removes them.\n\nRequires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"listDomainClaims","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDomainClaimsOutputBody"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List domain claims","tags":["Orgs"],"x-dbos-requires-oauth":true},"post":{"description":"A domain claim adds users who register with an email at that domain to this organization automatically. On DBOS-managed Conductor a claim must be approved by DBOS before it takes effect; self-hosted claims take effect immediately. Claims apply to new registrations only — approving one never moves users who already have accounts, and revoking one never removes them.\n\nRequires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"requestDomainClaim","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestDomainClaimInputBody"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DomainClaim"}}},"description":"Created"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Claim a domain","tags":["Orgs"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/domain-claims/{domain}":{"delete":{"description":"A domain claim adds users who register with an email at that domain to this organization automatically. On DBOS-managed Conductor a claim must be approved by DBOS before it takes effect; self-hosted claims take effect immediately. Claims apply to new registrations only — approving one never moves users who already have accounts, and revoking one never removes them.\n\nRequires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"releaseDomainClaim","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"domain","required":true,"schema":{"maxLength":253,"minLength":4,"type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Release a domain claim","tags":["Orgs"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/join":{"post":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"joinOrg","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinOrgInputBody"}}},"required":true},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Join org","tags":["Orgs"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/limits":{"patch":{"description":"Sets the org's maxTeamMembers and maxConductorApps to the given values and returns the updated org. At least one value must be given; an omitted value is left unchanged. Limits can only be raised here, never lowered; setting a limit to its current value is a no-op. Requires a DBOS Teams subscription.\n\nRequires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"setOrgLimits","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetOrgLimitsInputBody"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Organization"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Set org limits","tags":["Orgs"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/members":{"get":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"listMembers","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrgMembers"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List members","tags":["Orgs"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/members/{username}":{"delete":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"removeMember","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"username","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Member"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Remove member","tags":["Orgs"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/members/{username}/roles/{roleName}":{"put":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"grantRole","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"username","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"roleName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-zA-Z0-9_]+$","type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Grant role","tags":["Roles"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/permissions":{"get":{"operationId":"listPermissions","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List permissions","tags":["Roles"]}},"/v2/orgs/{orgName}/roles":{"get":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"listRoles","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/RoleOutput"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List roles","tags":["Roles"],"x-dbos-requires-oauth":true},"post":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"createRole","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleInputBody"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleOutputBody"}}},"description":"Created","headers":{"Location":{"schema":{"type":"string"}}}},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Create role","tags":["Roles"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/roles/{roleName}":{"delete":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"deleteRole","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"roleName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-zA-Z0-9_]+$","type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Delete role","tags":["Roles"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/secrets":{"post":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"generateSecret","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateSecretOutputBody"}}},"description":"Created"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Generate join secret","tags":["Orgs"],"x-dbos-requires-oauth":true}},"/v2/orgs/{orgName}/tokens":{"get":{"operationId":"listTokens","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Token"},"type":"array"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"List tokens","tags":["Tokens"]}},"/v2/orgs/{orgName}/tokens/{tokenName}":{"delete":{"operationId":"deleteToken","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"tokenName","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Delete token","tags":["Tokens"]},"patch":{"operationId":"updateToken","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"tokenName","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTokenInputBody"}}},"required":true},"responses":{"204":{"description":"No Content"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Update token","tags":["Tokens"]},"post":{"operationId":"createToken","parameters":[{"in":"path","name":"orgName","required":true,"schema":{"maxLength":30,"minLength":3,"pattern":"^[a-z0-9_]+$","type":"string"}},{"in":"path","name":"tokenName","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTokenInputBody"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenCreated"}}},"description":"Created"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Create token","tags":["Tokens"]}},"/v2/users":{"post":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"registerUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterUserInputBody"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterUserOutputBody"}}},"description":"Created"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Register user","tags":["Users"],"x-dbos-requires-oauth":true}},"/v2/users/me":{"get":{"description":"Requires OAuth. This operation is not registered when the server runs with OAuth disabled (self-hosted no-auth mode), where it responds 404.","operationId":"getCurrentUser","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserProfile"}}},"description":"OK"},"default":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorModel"}}},"description":"Error"}},"summary":"Get current user","tags":["Users"],"x-dbos-requires-oauth":true}}},"security":[{"ApiKeyAuth":[]},{"BearerAuth":[]}],"servers":[{"url":"/conductor"}]}