# Run

`POST /workspaces/:workspace/projects/:project_name/pipelines/:pipeline_id/executions`

Triggers a new execution of the pipeline

**Required Scopes:** `PIPELINE_RUN`

## URL Parameters

```typescript
interface URLParameters {
  /** The human-readable ID of the workspace */
  workspace: string; // Example: "my-company"
  /** The human-readable ID of the project */
  project_name: string; // Example: "my-project"
  /** The ID of the pipeline */
  pipeline_id: number; // Example: 123
}
```

## Body Parameters

```typescript
interface BodyParameters {
  /** The list of variables to set as parameters for the pipeline */
  variables?: PassVariableRequest[];
  /** The starting commit revision for this execution */
  to_revision?: RevisionRequest;
  /** The starting commit revision for this execution */
  from_revision?: RevisionRequest;
  /** The object containing the name field with the name of the branch to be executed when a pipeline has multiple refs or one of the refs is a wildcard */
  branch?: BranchRequest;
  /** The object containing the name field with the name of the tag to be executed when a pipeline has multiple refs or one of the refs is a wildcard */
  tag?: TagRequest;
  /** The object containing the name field with the name of the pull request to be executed when a pipeline has multiple refs or one of the refs is a wildcard */
  pull_request?: PullRequestRequest;
  /** The comment or description provided for this execution */
  comment?: string;
  /** Deploy from scratch */
  refresh?: boolean;
  /** Clear cache before running the pipeline */
  clear_cache?: boolean;
  /** The priority of the execution. Default is NORMAL */
  priority?: "LOW" | "NORMAL" | "HIGH";
  /** The date when the execution should be run. Should be set in the format: 2026-11-18T12:38:16.000Z */
  delay_until?: string;
  /** The environment in which the pipeline execution runs */
  environment?: string;
  /** The artifact version to run in format 'artifact_name:version' */
  artifact_version?: string;
  /** Send the actions' IDs list to be run in this execution. If not sent, it will be run in accordance with the pipeline's definition */
  actions_to_run?: number[];
  /** The list of file identifiers (returned by the upload endpoint) and their target paths in the pipeline filesystem */
  payload_files?: PassPayloadFileRequest[];
}
```

## Response Body

```typescript
interface ResponseBody {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The unique ID of the execution */
  id?: number;
  /** The date and time when the execution started */
  start_date?: string;
  /** The date and time when the execution finished */
  finish_date?: string;
  /** The mode that triggered the execution */
  triggered_on?: "CLICK" | "SCHEDULE" | "EVENT" | "PIPELINE" | "WEBHOOK" | "EMAIL";
  /** The priority of the execution. Default is NORMAL */
  priority?: "LOW" | "NORMAL" | "HIGH";
  /** The date when the execution should be run. Should be set in the format: 2026-11-18T12:38:16.000Z */
  delay_until?: string;
  /** Deploy from scratch */
  refresh?: boolean;
  /** Clear cache before running the pipeline */
  clear_cache?: boolean;
  /** The current status of the execution */
  status?: "INPROGRESS" | "ENQUEUED" | "TERMINATED" | "SUCCESSFUL" | "FAILED" | "INITIAL" | "NOT_EXECUTED" | "SKIPPED" | "TERMINATING" | "WAITING_FOR_APPLY" | "WAITING_FOR_VARIABLES" | "WAITING_FOR_SETTABLE_VARIABLES" | "WAITING_FOR_VT_SESSION";
  /** The comment or description provided for this execution */
  comment?: string;
  branch?: BranchView;
  tag?: TagView;
  pull_request?: PullRequestView;
  /** The commit containing the revision field */
  from_revision?: ShortCommitView;
  /** The commit containing the revision field */
  to_revision?: ShortCommitView;
  /** User/member reference */
  creator?: MemberView;
  environment?: ShortEnvironmentView;
  /** Short representation of a artifact version for list views */
  artifact_version?: ShortArtifactVersionView;
  /** The loop details of the execution, if the pipeline was executed in a loop */
  loop_details?: ExecutionLoopDetailsView;
  /** Short representation of a pipeline */
  pipeline?: ShortPipelineView;
  /** The list of action executions within this pipeline execution */
  action_executions?: ShortActionExecutionView[];
  /** Indicates whether the logs for this execution have been removed */
  logs_removed?: boolean;
  /** The list of pipeline executions */
  executions?: ExecutionView[];
  /** The list of files uploaded for this run and placed in the pipeline filesystem before execution */
  payload_files?: PayloadFileView[];
  /** Short representation of a artifact object */
  artifact?: ShortArtifactView;
}
```

## Type Definitions

```typescript
interface PassVariableRequest {
  /** The name of the variable */
  key?: string;
  /** The value of the variable */
  value?: string;
  /** If set to `true` the variable value will be encrypted and hidden */
  encrypted?: boolean;
}

interface RevisionRequest {
  /** The full SHA hash of the commit */
  revision?: string;
}

interface BranchRequest {
  /** The name of the branch to be executed */
  name?: string;
}

interface TagRequest {
  /** The name of the tag to be executed */
  name?: string;
}

interface PullRequestRequest {
  /** The name of the pull request to be executed */
  name?: string;
}

interface PassPayloadFileRequest {
  /** The identifier of the uploaded file returned by the upload endpoint */
  uuid?: string;
  /** The target path in the pipeline filesystem where the file is placed; when empty the file is placed under its original name, keeping the path provided during the upload */
  path?: string;
}

interface BranchView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The name of the branch */
  name?: string;
  /** The commit containing the revision field */
  commit?: ShortCommitView;
  /** The description of the branch */
  description?: string;
  /** Access permissions configuration */
  permissions?: PermissionsView;
  /** Indicates whether this branch is default branch in the repository */
  default?: boolean;
}

interface ShortCommitView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The full SHA hash of the commit */
  revision?: string;
  /** The date when the commit was authored */
  author_date?: string;
  /** The date when the commit was committed */
  commit_date?: string;
  /** The short SHA hash of the commit (first 7 characters) */
  short_revision?: string;
  /** The commit message */
  message?: string;
  /** User/member reference */
  committer?: MemberView;
  /** User/member reference */
  author?: MemberView;
}

interface MemberView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The ID of the user */
  id?: number;
  /** The name of the user */
  name?: string;
  /** The unique username of the user */
  username?: string;
  /** The avatar URL of the user */
  avatar_url?: string;
  /** The email address of the user */
  email?: string;
  /** Whether the user has admin privileges */
  admin?: boolean;
  /** Whether the user is workspace owner */
  workspace_owner?: boolean;
}

interface PermissionsView {
  /** Access level for other workspace members */
  others?: "DENIED" | "READ_ONLY" | "USE_ONLY" | "BLIND" | "RUN_ONLY" | "READ_WRITE" | "MANAGE" | "DEFAULT" | "ALLOWED" | "STAGE" | "COMMIT";
  /** List of specific users with their access levels */
  users?: UserPermissionView[];
  /** List of user groups with their access levels */
  groups?: GroupPermissionView[];
}

interface UserPermissionView {
  /** The ID of the user */
  id?: number;
  /** The access level for the user */
  access_level?: "DENIED" | "READ_ONLY" | "USE_ONLY" | "BLIND" | "RUN_ONLY" | "READ_WRITE" | "MANAGE" | "DEFAULT" | "ALLOWED" | "STAGE" | "COMMIT";
}

interface GroupPermissionView {
  /** The ID of the group */
  id?: number;
  /** The access level for the group */
  access_level?: "DENIED" | "READ_ONLY" | "USE_ONLY" | "BLIND" | "RUN_ONLY" | "READ_WRITE" | "MANAGE" | "DEFAULT" | "ALLOWED" | "STAGE" | "COMMIT";
}

interface TagView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The name of the tag */
  name?: string;
  /** The commit containing the revision field */
  commit: ShortCommitView;
  /** The tag message (for annotated tags) */
  message?: string;
}

interface PullRequestView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The pull request reference name (e.g., 'pull/5') */
  name?: string;
  /** The pull request number */
  number?: number;
  /** The HTML URL to the pull request on GitHub */
  github_html_url?: string;
  /** The state of the pull request (OPEN, CLOSED, MERGED) */
  state?: string;
  /** The title of the pull request */
  title?: string;
  /** The description of the pull request */
  description?: string;
  /** The name of the base branch (the branch the changes are merged into) */
  base?: string;
  /** The name of the head branch (the branch containing the changes) */
  head?: string;
  /** The revision of the last commit on the head branch */
  head_sha?: string;
  /** Indicates whether the pull request is a draft */
  draft?: boolean;
  /** Indicates whether the head branch can be merged into the base branch without conflicts (MERGEABLE, CONFLICTING, UNKNOWN) */
  mergeable?: string;
  /** The number of commits on the head branch that are not on the base branch; empty when unknown */
  ahead?: number;
  /** The number of commits on the base branch that are not on the head branch; empty when unknown */
  behind?: number;
  /** The date when the pull request was created */
  create_date?: string;
  /** The date when the pull request was last updated */
  last_update_date?: string;
  /** The date when the pull request was merged */
  merged_date?: string;
  /** The date when the pull request was closed */
  closed_date?: string;
  /** The labels assigned to the pull request */
  labels?: string[];
  /** The logins of the users assigned to the pull request */
  assignees?: string[];
  /** The logins of the users requested to review the pull request */
  reviewers?: string[];
  /** The provider of the pull request: BUDDY for pull requests in repositories hosted in Buddy, otherwise the integrated Git provider */
  origin?: "BUDDY" | "GITHUB" | "GITHUB_ENTERPRISE" | "GITLAB" | "GITLAB_ENTERPRISE" | "BITBUCKET" | "CUSTOM";
}

interface ShortEnvironmentView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The ID of the environment */
  id?: string;
  /** The name of the environment */
  name?: string;
  /** A human-readable ID of the environment. Alphanumeric characters, underscores, and hyphens (hyphens cannot appear at the start or end). */
  identifier?: string;
  /** The list of tags associated with the environment */
  tags?: string[];
  /** The scope of the environment */
  scope?: "PROJECT" | "WORKSPACE";
}

interface ShortArtifactVersionView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The unique ID of the version (used in API endpoints) */
  id?: string;
  /** The version identifier (e.g., latest, v1.2.0, stable) */
  version?: string;
  /** Size of the version content in bytes */
  size?: number;
  /** Whether the GitHub release synced into this version is a draft. Present only for GH_RELEASE artifacts */
  draft?: boolean;
  /** Whether the GitHub release synced into this version is a pre-release. Present only for GH_RELEASE artifacts */
  prerelease?: boolean;
  /** Direct URL to access the artifact version content. For CONTAINER artifacts, this is the registry URL (e.g., container.registry.sh/ttests/ubuntu:latest). For FILES artifacts, this is the HTTP server URL where the content is served (e.g., https://latest-my-artifact.bucket-1.registry.sh/) */
  version_url?: string;
  /** Version creation timestamp */
  created_date?: string;
}

interface ExecutionLoopDetailsView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The status of the execution loop resolution */
  status?: "OK" | "DYNAMIC" | "ERROR";
  /** The resolved execution loop variables as key-value pairs */
  resolved_variables?: SimpleVariableView[];
  /** The error message if the execution loop resolution failed */
  error_message?: string;
}

interface SimpleVariableView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The name of the variable */
  key?: string;
  /** The value of the variable */
  value?: string;
  /** If set to `true` the variable value will be encrypted and hidden */
  encrypted?: boolean;
}

interface ShortPipelineView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The unique ID of the pipeline */
  id?: number;
  /** A human-readable ID of pipeline */
  identifier?: string;
  /** The name of the pipeline */
  name?: string;
  /** The source of the pipeline definition */
  definition_source?: "LOCAL" | "REMOTE";
  /** The git configuration reference type */
  git_config_ref?: "NONE" | "DYNAMIC" | "FIXED";
  /** Pipeline git context refs. If unset and events is empty, the pipeline counts as codeless */
  refs?: string[];
  /** The list of events that trigger the pipeline run */
  events?: PipelineEventView[];
  /** The loop configuration for the pipeline */
  loop?: string[];
  /** The priority of the pipeline */
  priority?: "LOW" | "NORMAL" | "HIGH";
  /** Indicates if the pipeline is disabled */
  disabled?: boolean;
  /** The reason why the pipeline is disabled */
  disabled_reason?: string;
  /** The status of the last run */
  last_execution_status?: "INPROGRESS" | "ENQUEUED" | "TERMINATED" | "SUCCESSFUL" | "FAILED" | "INITIAL" | "NOT_EXECUTED" | "SKIPPED" | "TERMINATING" | "WAITING_FOR_APPLY" | "WAITING_FOR_VARIABLES" | "WAITING_FOR_SETTABLE_VARIABLES" | "WAITING_FOR_VT_SESSION";
  /** The git revision of the last run */
  last_execution_revision?: string;
  /** The URL to the target site after deployment */
  target_site_url?: string;
  /** The template for commit status messages */
  execution_message_template?: string;
  /** The creation date of the pipeline */
  create_date?: string;
  /** Defines whether to upload everything from scratch on every run */
  always_from_scratch?: boolean;
  /** If set to true, the status of a given pipeline will not impact the project status on the dashboard */
  ignore_fail_on_project_status?: boolean;
  /** Which queued runs to skip when a new run starts: NEVER, ALWAYS, SAME_REF, SAME_ENVIRONMENT or SAME_ARTIFACT */
  skip_queued_runs?: "NEVER" | "ALWAYS" | "SAME_REF" | "SAME_ENVIRONMENT" | "SAME_ARTIFACT";
  /** Which in-progress runs to cancel when a new run starts: NEVER, ALWAYS, SAME_REF, SAME_ENVIRONMENT or SAME_ARTIFACT */
  cancel_inprogress_runs?: "NEVER" | "ALWAYS" | "SAME_REF" | "SAME_ENVIRONMENT" | "SAME_ARTIFACT";
  /** Defines whether to automatically clear cache before running the pipeline */
  auto_clear_cache?: boolean;
  /** Indicates if the pipeline is paused */
  paused?: boolean;
  /** Defines how many repeated failures are required to pause the pipeline */
  pause_on_repeated_failures?: number;
  /** If set to true, all refs will be fetched from the repository */
  fetch_all_refs?: boolean;
  /** If set to true, LFS files will be fetched from the external repository during pipeline runs */
  fetch_lfs?: boolean;
  /** If set to true, the pipeline will fail on environment preparation warnings */
  fail_on_prepare_env_warning?: boolean;
  /** Defines whether the pipeline can be run concurrently */
  concurrent_pipeline_runs?: boolean;
  /** Defines the depth of the git clone operation for shallow clones */
  clone_depth?: number;
  /** If set to true, commit statuses will not be created in the repository */
  do_not_create_commit_status?: boolean;
  /** Indicates that pipeline definition was probably removed on particular Git ref and pipeline won't be run on events */
  stale?: boolean;
  /** Indicates if the pipeline is waiting for the first push to the repository */
  waiting_for_push?: boolean;
  /** The resource configuration for the pipeline run */
  resources?: "DEFAULT" | "NANO" | "SMALL" | "MEDIUM" | "LARGE" | "XLARGE" | "CUSTOM" | "X2LARGE";
  /** The path to the remote pipeline definition file */
  remote_path?: string;
  /** The ref of the remote pipeline definition */
  remote_ref?: string;
  /** The project name of the remote pipeline definition */
  remote_project_name?: string;
  /** The parameters passed to the remote pipeline definition */
  remote_parameters?: PipelinePropertyView[];
  /** YAML pipeline definition configuration */
  git_config?: YamlDefinitionView;
  /** The list of tags associated with the pipeline for organization */
  tags?: string[];
  /** The base for git changeset calculation. Determines which changes trigger the pipeline */
  git_changeset_base?: "LATEST_RUN" | "LATEST_RUN_MATCHING_REF" | "PULL_REQUEST";
  /** The base for filesystem changeset calculation. Determines which file changes trigger the pipeline */
  filesystem_changeset_base?: "DATE_MODIFIED" | "CONTENTS";
  /** The CPU architecture for the pipeline run */
  cpu?: "X64" | "ARM" | "X86";
  /** If set to true, a description is required when executing the pipeline manually */
  description_required?: boolean;
  /** The folder name where the pipeline is organized */
  folder?: string;
  /** Note for this resource */
  note?: string;
  /** YAML note for AI agents operating on this resource */
  agent_note?: string;
}

interface PipelineEventView {
  /** The type of event that triggers the pipeline */
  type?: "PUSH" | "CREATE_REF" | "DELETE_REF" | "PULL_REQUEST" | "SCHEDULE" | "PUBLISH_ARTIFACT_VERSION" | "DELETE_ARTIFACT_VERSION" | "WEBHOOK" | "EMAIL" | "CREATE_ARTIFACT_VERSION" | "ENVIRONMENT_CREATE" | "ENVIRONMENT_DELETE" | "SANDBOX_CREATED" | "SANDBOX_DELETED" | "SANDBOX_TIMED_OUT" | "SENTRY" | "CLICKUP" | "UT_SESSION_ENDED";
  /** The list of refs (branches/tags) that trigger the pipeline for push/ref events */
  refs?: string[];
  /** The list of pull request events that trigger the pipeline. The accepted values depend on the repository provider, each provider uses its own native event types. For Buddy-hosted repositories the supported (and validated) types are: `OPENED`, `REOPENED`, `SYNCHRONIZED`, `CLOSED`, `MERGED`, `READY_FOR_REVIEW`. For repositories integrated with an external provider (e.g. GitHub) the provider's native events are taken as-is and are not validated, e.g. `opened`, `reopened`, `synchronize` */
  events?: string[];
  /** The list of branches for pull request events; for type `UT_SESSION_ENDED` it filters by the session branch (wildcards supported), empty means all branches */
  branches?: string[];
  /** The list of artifacts that trigger the pipeline */
  artifacts?: PipelineArtifactContextView[];
  /** The list of environments that trigger the pipeline */
  environments?: PipelineEnvironmentContextView[];
  /** The start date for scheduled events (type `SCHEDULE`) */
  start_date?: string;
  /** The delay in minutes between scheduled runs (type `SCHEDULE`) */
  delay?: number;
  /** The cron expression for scheduled (type `SCHEDULE`) events e.g., '0 9 * * 1-5' for weekdays at 9 AM */
  cron?: string;
  /** The timezone for scheduled events (type `SCHEDULE`) e.g., 'UTC', 'Europe/Warsaw' */
  timezone?: string;
  /** Whether TOTP (Time-based One-Time Password) is enabled for webhook events (type `WEBHOOK`) */
  totp?: boolean;
  /** The email subject prefix for email trigger events (type `EMAIL`) */
  prefix?: string;
  /** The list of allowed email addresses that can trigger the pipeline via email (type `EMAIL`) */
  whitelist?: string[];
  /** The list of sandbox targets that trigger the pipeline for sandbox events (type `SANDBOX_CREATED`, `SANDBOX_DELETED`, `SANDBOX_TIMED_OUT`) */
  targets?: TargetView[];
  /** The identifier of the Sentry integration whose webhooks trigger the pipeline (type `SENTRY`) */
  integration?: string;
  /** The list of Sentry project slugs that trigger the pipeline; empty means all projects (type `SENTRY`) */
  projects?: string[];
  /** The list of Sentry issue levels that trigger the pipeline e.g., `error`, `fatal`; empty means all levels (type `SENTRY`) */
  levels?: string[];
  /** The list of Sentry issue substatuses that trigger the pipeline e.g., `new`, `regressed`; empty means all substatuses (type `SENTRY`) */
  substatuses?: string[];
  /** The minimum number of events in the Sentry issue required to trigger the pipeline (type `SENTRY`) */
  count?: number;
  /** The minimum number of users affected by the Sentry issue required to trigger the pipeline (type `SENTRY`) */
  user_count?: number;
  /** The number of minutes to skip subsequent runs for the same Sentry issue after a triggered run (type `SENTRY`) */
  snooze_minutes?: number;
  /** The list of ClickUp folder names that trigger the pipeline; empty means all folders (type `CLICKUP`) */
  folders?: string[];
  /** The list of ClickUp list names that trigger the pipeline; empty means all lists (type `CLICKUP`) */
  lists?: string[];
  /** The list of ClickUp task priorities that trigger the pipeline e.g., `urgent`, `high`; empty means all priorities (type `CLICKUP`) */
  priorities?: string[];
  /** The list of ClickUp task tags that trigger the pipeline; matches when at least one tag is present; empty means all tags (type `CLICKUP`) */
  tags?: string[];
  /** The list of assignee email addresses that trigger the pipeline; matches when at least one assignee has a listed email; empty means all assignees (type `CLICKUP`) */
  assignees?: string[];
  /** The list of creator email addresses that trigger the pipeline; matches when the task creator has a listed email; empty means all creators (type `CLICKUP`) */
  creators?: string[];
  /** The list of custom field filters; each entry has a `name` and a list of `values` (matches when a value matches); entries are combined with AND (type `CLICKUP`) */
  custom_fields?: ClickUpCustomFieldFilter[];
  /** Whether to include subtasks; `true` (default) matches parent tasks and subtasks, `false` matches only top-level tasks (type `CLICKUP`) */
  include_subtasks?: boolean;
  /** The list of unit test suite identifiers (wildcards supported, e.g. `integration-*`) that trigger the pipeline; empty means all suites (type `UT_SESSION_ENDED`) */
  suites?: string[];
  /** The list of statuses that trigger the pipeline (type `SENTRY`, `UT_SESSION_ENDED`) */
  statuses?: string[];
}

interface PipelineArtifactContextView {
  /** A human-readable ID of artifact */
  identifier?: string;
  /** The scope of the artifact */
  scope?: "WORKSPACE" | "PROJECT" | "ENVIRONMENT" | "ANY";
}

interface PipelineEnvironmentContextView {
  /** A human-readable ID of the environment. Alphanumeric characters, underscores, and hyphens (hyphens cannot appear at the start or end). */
  identifier?: string;
  /** The list of tags associated with the environment */
  tags?: string[];
  /** The scope of the environment */
  scope?: "PROJECT" | "WORKSPACE" | "ANY";
}

interface TargetView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The ID of the target */
  id?: string;
  /** A human-readable ID.  Alphanumeric characters, underscores, and hyphens (hyphens cannot appear at the start or end). */
  identifier: string;
  /** The name of the target */
  name?: string;
  /** Short representation of a project */
  project?: ShortProjectView;
  /** Short representation of a pipeline */
  pipeline?: ShortPipelineView;
  environment?: ShortEnvironmentView;
  /** Access permissions configuration */
  permissions?: PermissionsView;
  /** Pipelines access level for this target */
  pipelines_access_level?: "DENIED" | "READ_ONLY" | "USE_ONLY" | "BLIND" | "RUN_ONLY" | "READ_WRITE" | "MANAGE" | "DEFAULT" | "ALLOWED" | "STAGE" | "COMMIT";
  /** List of specific pipelines allowed to use this target */
  allowed_pipelines?: AllowedPipelineView[];
  /** Sandboxes access level for this target */
  sandboxes_access_level?: "DENIED" | "READ_ONLY" | "USE_ONLY" | "BLIND" | "RUN_ONLY" | "READ_WRITE" | "MANAGE" | "DEFAULT" | "ALLOWED" | "STAGE" | "COMMIT";
  /** List of specific sandboxes allowed to use this target */
  allowed_sandboxes?: AllowedSandboxView[];
  /** Indicates if this target is disabled (default: `false`) */
  disabled?: boolean;
  /** The list of tags associated with the target */
  tags?: string[];
  /** Defines how the target can be used (as deployment target, proxy, or both) */
  use_as?: UseAsView;
  /** Note for this resource */
  note?: string;
  /** YAML note for AI agents operating on this resource */
  agent_note?: string;
  /** The type of the target */
  type?: "SSH" | "FTP" | "GIT" | "MATCH" | "EC2" | "DIGITAL_OCEAN" | "VULTR" | "UPCLOUD" | "GKE" | "EKS" | "AKS" | "DOKS" | "K8S_CLUSTER" | "MYSQL" | "POSTGRESQL" | "PROJECT_REPO" | "MONGO" | "MSSQL" | "RDS_MSSQL" | "CLICKHOUSE" | "RDS_MYSQL" | "RDS_POSTGRESQL";
}

interface ShortProjectView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The human-readable ID of the project */
  name?: string;
  /** The Name of the project */
  display_name: string;
  /** The status of the project */
  status?: string;
  /** Indicates if this is a public project */
  access?: "PRIVATE" | "PUBLIC";
  /** The creation date of the project */
  create_date?: string;
}

interface AllowedPipelineView {
  /** Project name */
  project: string;
  /** Pipeline identifier */
  pipeline: string;
  /** Access level for the allowed pipeline. Project repository targets: `DENIED`, `READ_ONLY`, `READ_WRITE`. Other targets: `DENIED`, `USE_ONLY` */
  access_level?: "DENIED" | "READ_ONLY" | "USE_ONLY" | "BLIND" | "RUN_ONLY" | "READ_WRITE" | "MANAGE" | "DEFAULT" | "ALLOWED" | "STAGE" | "COMMIT";
}

interface AllowedSandboxView {
  /** Project name */
  project: string;
  /** Sandbox identifier */
  sandbox: string;
  /** Access level for the allowed sandbox: `DENIED`, `READ_ONLY`, `READ_WRITE` */
  access_level?: "DENIED" | "READ_ONLY" | "USE_ONLY" | "BLIND" | "RUN_ONLY" | "READ_WRITE" | "MANAGE" | "DEFAULT" | "ALLOWED" | "STAGE" | "COMMIT";
}

interface UseAsView {
  /** Whether the target can be used as a deployment target (default: `true`) */
  target?: boolean;
  /** Whether the target can be used as a proxy (default: `true`) */
  proxy?: boolean;
}

interface ClickUpCustomFieldFilter {
  /** The name of the ClickUp custom field to match */
  name?: string;
  /** The list of accepted values of the custom field; matches when at least one value matches; empty means any value */
  values?: string[];
}

interface PipelinePropertyView {
  /** The key of the pipeline property */
  key?: string;
  /** The value of the pipeline property */
  value?: string;
}

interface YamlDefinitionView {
  /** The file path to the YAML definition */
  path?: string;
  /** The git ref (branch/tag) where the YAML definition is located */
  branch?: string;
  /** The project name where the YAML definition is located */
  project?: string;
}

interface ShortActionExecutionView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The unique ID of the action execution */
  action_execution_id?: string;
  /** The date and time when the action execution started */
  start_date?: string;
  /** The date and time when the action execution finished */
  finish_date?: string;
  /** The error message if the action execution failed */
  error_message?: string;
  /** The current status of the action execution */
  status?: "INPROGRESS" | "ENQUEUED" | "TERMINATED" | "SUCCESSFUL" | "FAILED" | "INITIAL" | "NOT_EXECUTED" | "SKIPPED" | "TERMINATING" | "WAITING_FOR_APPLY" | "WAITING_FOR_VARIABLES" | "WAITING_FOR_SETTABLE_VARIABLES" | "WAITING_FOR_VT_SESSION";
  /** The progress of the action execution in percentages (0-100) */
  progress?: number;
  action?: ShortActionResponse;
  /** The ID of the user who terminated the action execution */
  terminator_id?: number;
  /** The date and time when the action execution was terminated */
  termination_date?: string;
  /** The ID of the user who approved the action execution */
  approver_id?: number;
  /** The date and time when the action execution was approved */
  approval_date?: string;
  /** The variables passed to this action execution */
  passed_variables?: SimpleVariableView[];
  /** The variables exported by this action execution */
  outputted_variables?: SimpleVariableView[];
  /** The output from visual tests if any were run */
  visual_tests_output?: VisualTestsOutputView[];
  terraform_plan?: TerraformPlanOutputView;
  /** The sandbox project ID associated with this action execution */
  sandbox_project_id?: number;
  /** The sandbox ID associated with this action execution */
  sandbox_id?: string;
  /** The target identifier where the action was executed */
  target?: string;
  /** The loop details of the action execution, if the action was executed in a loop */
  loop_details?: LoopDetailsView;
}

interface ShortActionResponse {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The ID of the action */
  id?: number;
  /** The name of the action */
  name?: string;
  /** The type of the action */
  type?: "TRANSFER" | "AMAZON_S3" | "WEB_DAV" | "SSH_COMMAND" | "HTTP" | "SLACK" | "EMAIL" | "SMS" | "PUSH" | "HEROKU" | "BUILD" | "PING" | "WEB" | "TCP" | "RUN_NEXT_PIPELINE" | "ELASTIC_BEANSTALK" | "GCS" | "SHOPIFY" | "PUSHOVER" | "PUSHBULLET" | "CODE_DEPLOY" | "AZURE" | "DOCKERFILE" | "GOOGLE_APP_ENGINE" | "LAMBDA" | "HEROKU_CLI" | "RACKSPACE" | "CLOUDFLARE" | "CLOUD_FRONT" | "MONITOR" | "SLEEP" | "AWS_CLI" | "GOOGLE_CDN" | "AWS_LAMBDA_DEPLOY" | "KUBERNETES_APPLY" | "KUBERNETES_SET_IMAGE" | "KUBERNETES_RUN_POD" | "WAIT_FOR_APPLY" | "APPROVE_VT" | "NEW_RELIC" | "KUBERNETES_RUN_JOB" | "ZIP" | "ROLLBAR" | "SENTRY" | "DATADOG" | "DO_SPACES" | "HONEYBADGER" | "SENTRY_ENTERPRISE" | "LOGGLY" | "KUBERNETES_CLI" | "RUN_DOCKER_CONTAINER" | "ESLINT" | "DOCKER_PUSH" | "ANDROID_SIGN" | "ANDROID_PLAY" | "WAIT_FOR_VARIABLES" | "GCLOUD_CLI" | "AWS_ECS" | "IMPORT_FILES" | "FIREBASE" | "TELEGRAM" | "REPLACE" | "GOOGLE_FUNCTIONS_DEPLOY" | "GOOGLE_FUNCTIONS" | "BUGSNAG" | "SPLIT_TESTS" | "RAYGUN" | "DATADOG_STATUS_CHECK" | "GHOST_INSPECTOR" | "AWS_CLOUD_FORMATION" | "DIGITAL_OCEAN_CDN" | "DISCORD2" | "IMAGE_COMPRESSION" | "NETLIFY" | "GIT_CRYPT_UNLOCK" | "GIT_CRYPT_LOCK" | "HELM" | "DOCKERFILE_LINTER" | "DOWNLOAD" | "DOWNLOAD_S3" | "LIGHTHOUSE" | "ANDROID_SIGN_BUNDLE" | "ANDROID_PLAY_BUNDLE" | "VISUAL_TESTS" | "VISUAL_TEST_2" | "LINK_VALIDATOR" | "AZURE_CLI" | "SHOPIFY_THEMEKIT_CLI" | "SSL_VERIFY" | "AZURE_STORAGE" | "DEPLOY_TO_SANDBOX" | "SANDBOX_START" | "SANDBOX_STOP" | "SANDBOX_EXEC" | "GIT_HUB_RELEASE" | "GCLOUD_RUN_DEPLOY" | "SANDBOX_SNAPSHOT" | "AWS_CLI_2" | "MICROSOFT_TEAMS" | "NATIVE_BUILD_WINDOWS" | "NATIVE_BUILD_WINDOWS_DOCKER" | "NATIVE_BUILD_MAC" | "DOCTL" | "NATIVE_BUILD_MAC_REACT" | "NATIVE_BUILD_MAC_CORDOVA" | "NATIVE_BUILD_MAC_FASTLANE" | "NATIVE_BUILD_MAC_FLUTTER" | "GOOGLE_CLOUD_STORAGE" | "GOOGLE_FUNCTION_DEPLOY" | "GOOGLE_FUNCTION_INVOKE" | "GOOGLE_CDN_INVALIDATE" | "GOOGLE_CLOUD_CLI" | "GOOGLE_CLOUD_RUN_DEPLOY" | "GOOGLE_APP_DEPLOY" | "ANDROID_PUBLISH_APK" | "ANDROID_PUBLISH_APP_BUNDLE" | "SANDBOX_CREATE_NEW" | "SANDBOX_CREATE_FROM_SANDBOX" | "SANDBOX_CREATE_FROM_SNAPSHOT" | "SANDBOX_DELETE" | "NATIVE_BUILD_MAC_SIGN" | "NATIVE_BUILD_MAC_DEPLOY" | "NATIVE_BUILD_DOCKER_CLI" | "CLEAR_CACHE" | "FASTLANE_ANDROID" | "NATIVE_BUILD_LINUX" | "GIT_HUB_CLI" | "INTEGRATION_VARIABLES" | "DOCKER_BUILD_MULTI_ARCH" | "CODE_PIPELINE" | "GIT_LAB_CLI" | "AWS_APP_RUNNER_DEPLOY" | "AWS_APP_RUNNER_MONITOR" | "NATIVE_BUILD_MAC_VM" | "VM_LINUX" | "AWS_CDK_CLI" | "GHOST_INSPECTOR_CLI" | "TERRAFORM" | "ATOP" | "SNYK_CLI" | "STACK_HAWK_CLI" | "JMETER_CLI" | "CUSTOM" | "BLACKFIRE_PHP" | "BLACKFIRE_PYTHON" | "BLACKFIRE_GO" | "LINK_CHECKER" | "SHOPIFY_CLI" | "DOCKER" | "SET_VARIABLES" | "DOWNLOAD_FROM_SANDBOX" | "PIPELINE_SETTINGS" | "BACKBLAZE_B2" | "NEW_RELIC_CLI" | "DOWNLOAD_GCS" | "DOWNLOAD_BACKBLAZE_B2" | "WP_CLI" | "GOOGLE_CHAT" | "SANDBOX_APPLICATION_START" | "SANDBOX_APPLICATION_STOP" | "POWERSHELL" | "SANDBOX_MANAGE" | "SANDBOX_CREATE" | "CONTENTFUL_CLI" | "JIRA_BUILD" | "JIRA_DEPLOYMENT" | "MYSQL_CLI" | "POSTGRESQL_CLI" | "MONGOSH_CLI" | "MSSQL_CLI" | "CLICKHOUSE_CLI" | "CRAWL" | "FTP" | "FTPS" | "SFTP" | "GCE" | "VULTR" | "UPCLOUD" | "DIGITAL_OCEAN" | "DOWNLOAD_FTP" | "DOWNLOAD_FTPS" | "DOWNLOAD_SSH" | "RSYNC" | "PROMOTE_IMAGE" | "PUBLISH_ARTIFACT_VERSION" | "COMPOSER_PUBLISH" | "DOWNLOAD_ARTIFACT_VERSION" | "STORYBOOK" | "PLAYWRIGHT" | "CYPRESS" | "NPM_PUBLISH" | "NPM_STAGE" | "GIT_MERGE" | "TRIVY_CLI" | "CLAUDE_CODE" | "SECURITY_AUDIT" | "BUDDY_CDN" | "DOCKER_IMAGE_OPS" | "ANTIGRAVITY" | "ARTIFACT_CLEANUP" | "CODEX_CLI" | "CURSOR" | "OPENCODE" | "GROK" | "EXTRACT" | "TERRAFORM_PLAN" | "TERRAFORM_APPLY" | "CLICKUP_CREATE_TASK" | "CLICKUP_UPDATE_TASK" | "TERRAFORM_DRIFT_DETECTION" | "JEV";
  /** The git revision of the last successful run of the action */
  current_revision?: string;
  /** Specifies when the action should be executed */
  trigger_time?: "ON_EVERY_EXECUTION" | "ON_FAILURE" | "ON_BACK_TO_SUCCESS" | "ON_WARNING" | "ON_WAIT_FOR_APPROVE" | "ON_TERMINATE";
  /** The list of trigger conditions to meet so that the action can be triggered */
  trigger_conditions?: TriggerConditionView[];
  /** Defines whether the action should run in parallel with the next one */
  run_next?: "WAIT_ON_SUCCESS" | "IN_SOFT_PARALLEL" | "IN_HARD_PARALLEL";
  /** Defines whether the action should be executed on each failure. Restricted to and required if the `trigger_time` is `ON_FAILURE` */
  run_only_on_first_failure?: boolean;
  /** The list of variables you can use the action */
  variables?: EnvironmentVariableView[];
  /** When set to `true` the action is disabled. By default it is set to `false` */
  disabled?: boolean;
  /** The timeout in seconds */
  timeout?: number;
  /** If set to `true` the execution will proceed, mark action as a warning and jump to the next action. Doesn't apply to deployment actions */
  ignore_errors?: boolean;
  /** Number of retries if the action fails */
  retry_count?: number;
  /** Delay time between auto retries in seconds */
  retry_interval?: number;
  /** The status of the last run of the action */
  last_execution_status?: "INPROGRESS" | "ENQUEUED" | "TERMINATED" | "SUCCESSFUL" | "FAILED" | "INITIAL" | "NOT_EXECUTED" | "SKIPPED" | "TERMINATING" | "WAITING_FOR_APPLY" | "WAITING_FOR_VARIABLES" | "WAITING_FOR_SETTABLE_VARIABLES" | "WAITING_FOR_VT_SESSION";
  /** The integration used by the action */
  integration?: IntegrationIdentifierView;
  /** The integration used by the action */
  helm_repository_integration?: IntegrationIdentifierView;
}

interface TriggerConditionView {
  /** The type of trigger condition */
  trigger_condition?: "ALWAYS" | "ON_CHANGE" | "ON_CHANGE_AT_PATH" | "VAR_IS" | "VAR_IS_NOT" | "VAR_CONTAINS" | "VAR_NOT_CONTAINS" | "DATETIME" | "SUCCESS_PIPELINE" | "DAY" | "HOUR" | "OR" | "VAR_LESS_THAN" | "VAR_LESS_THAN_OR_EQUAL" | "VAR_GREATER_THAN" | "VAR_GREATER_THAN_OR_EQUAL" | "ACTION_STATUS_IS" | "ACTION_STATUS_IS_NOT" | "TRIGGERING_USER_IS" | "TRIGGERING_USER_IS_NOT" | "TRIGGERING_USER_IS_IN_GROUP" | "TRIGGERING_USER_IS_NOT_IN_GROUP";
  /** The value to compare the trigger variable against */
  trigger_variable_value?: string;
  /** The name of the variable to check in the trigger condition */
  trigger_variable_key?: string;
  /** The timezone for datetime trigger conditions (e.g., 'UTC', 'Europe/Warsaw') */
  timezone?: string;
  /** The hours when the datetime trigger should activate (0-23) */
  trigger_hours?: number[];
  /** The days when the datetime trigger should activate (1-7, where 1 is Monday) */
  trigger_days?: number[];
  /** The project name for cross-project pipeline triggers */
  trigger_project_name?: string;
  /** The pipeline name for cross-pipeline triggers */
  trigger_pipeline_name?: string;
  /** The username or email of the user who can trigger the pipeline */
  trigger_user?: string;
  /** The name of the group that can trigger the pipeline */
  trigger_group?: string;
  /** The file paths that must change to trigger the pipeline */
  trigger_condition_paths?: string[];
  /** The action status to check for action status triggers */
  trigger_status?: "SUCCESSFUL" | "FAILED" | "SKIPPED" | "SUPPRESSED";
  /** The name of the action to check status for */
  trigger_action_name?: string;
  /** The list of nested trigger conditions for OR/AND operators */
  trigger_operands?: TriggerConditionOperandView[];
}

interface TriggerConditionOperandView {
  /** The type of trigger condition */
  trigger_condition?: "ALWAYS" | "ON_CHANGE" | "ON_CHANGE_AT_PATH" | "VAR_IS" | "VAR_IS_NOT" | "VAR_CONTAINS" | "VAR_NOT_CONTAINS" | "DATETIME" | "SUCCESS_PIPELINE" | "DAY" | "HOUR" | "OR" | "VAR_LESS_THAN" | "VAR_LESS_THAN_OR_EQUAL" | "VAR_GREATER_THAN" | "VAR_GREATER_THAN_OR_EQUAL" | "ACTION_STATUS_IS" | "ACTION_STATUS_IS_NOT" | "TRIGGERING_USER_IS" | "TRIGGERING_USER_IS_NOT" | "TRIGGERING_USER_IS_IN_GROUP" | "TRIGGERING_USER_IS_NOT_IN_GROUP";
  /** The value to compare the trigger variable against */
  trigger_variable_value?: string;
  /** The name of the variable to check in the trigger condition */
  trigger_variable_key?: string;
  /** The timezone for datetime trigger conditions (e.g., 'UTC', 'Europe/Warsaw') */
  timezone?: string;
  /** The hours when the datetime trigger should activate (0-23) */
  trigger_hours?: number[];
  /** The days when the datetime trigger should activate (1-7, where 1 is Monday) */
  trigger_days?: number[];
  /** The project name for cross-project pipeline triggers */
  trigger_project_name?: string;
  /** The pipeline name for cross-pipeline triggers */
  trigger_pipeline_name?: string;
  /** The username or email of the user who can trigger the pipeline */
  trigger_user?: string;
  /** The name of the group that can trigger the pipeline */
  trigger_group?: string;
  /** The file paths that must change to trigger the pipeline */
  trigger_condition_paths?: string[];
  /** The action status to check for action status triggers */
  trigger_status?: "SUCCESSFUL" | "FAILED" | "SKIPPED" | "SUPPRESSED";
  /** The name of the action to check status for */
  trigger_action_name?: string;
}

interface EnvironmentVariableView {
  /** The ID of the variable */
  id?: number;
  /** The name of the variable */
  key?: string;
  /** The value of the variable */
  value?: string;
  /** The type of the added variable. Defaults to `VAR` when not set */
  type?: "VAR" | "FILE" | "SSH_KEY" | "IOS_KEYCHAIN" | "IOS_PROVISION_PROFILES" | "SSH_PUBLIC_KEY" | "GPG_KEY" | "P12";
  /** If set to `true` the variable value will be encrypted and hidden */
  encrypted?: boolean;
  /** If set to `true` the variable value can be set by Buddy actions */
  settable?: boolean;
  /** Available only if `type=VAR`. Requires `settable=true`. If set to `true` the variable value can be set by Buddy actions only for execution time */
  run_only_settable?: boolean;
  /** Initial path for the variable */
  init_path?: string;
  /** Default value for the variable */
  defaults?: string;
  /** Specifies where to copy the file on each run. Required if `file_place` is `CONTAINER`, and must start with `/` or `~` */
  file_path?: string;
  /** File permission set on copy to a container on each run. Required if `file_place` is `CONTAINER` */
  file_chmod?: string;
  /** Required if `type` is `FILE`, `SSH_KEY`, `SSH_PUBLIC_KEY`, `IOS_KEYCHAIN`, or `IOS_PROVISION_PROFILES`, unless the variable is sandbox-scoped. If it's `NONE`, the variable can be used as a parameter in an action. For `CONTAINER`, the given key is additionally copied to an action container on each run and both `file_path` and `file_chmod` are required */
  file_place?: "NONE" | "CONTAINER";
  /** Whether the file is binary */
  binary?: boolean;
  /** Public value for SSH key type variables */
  public_value?: string;
  /** Fingerprint of SSH key */
  key_fingerprint?: string;
  /** Checksum of the variable value */
  checksum?: string;
  /** Password for certificates */
  password?: string;
  /** Passphrase for encrypted SSH keys */
  passphrase?: string;
  /** Key identifier for iOS certificates, provisioning profiles, or GPG keys */
  key_identifier?: string;
  /** Set to `true` to disable the variable. Disabled variables are not injected anywhere */
  disabled?: boolean;
  /** Note for this resource */
  note?: string;
  /** YAML note for AI agents operating on this resource */
  agent_note?: string;
}

interface IntegrationIdentifierView {
  /** A human-readable ID of the integration */
  identifier?: string;
}

interface VisualTestsOutputView {
  /** The URL to the visual tests results */
  url?: string;
  /** The status of the visual tests execution */
  status?: "MATCH" | "MISMATCH" | "ERROR" | "NEW" | "SIZE_MISMATCH";
  /** The error message if the visual tests failed */
  error?: string;
}

interface TerraformPlanOutputView {
  /** The number of resources to be created by the plan, replacements included */
  added?: number;
  /** The number of resources to be updated in place by the plan */
  changed?: number;
  /** The number of resources to be destroyed by the plan, replacements included */
  destroyed?: number;
  /** The list of resources affected by the plan */
  resources?: TerraformPlanResourceView[];
}

interface TerraformPlanResourceView {
  /** The Terraform address of the resource, e.g. aws_s3_bucket.assets */
  address?: string;
  /** The Terraform type of the resource, e.g. aws_s3_bucket */
  resource_type?: string;
  /** The change planned for the resource: CREATE, UPDATE, DELETE, DESTROY_CREATE (destroyed before being recreated) or CREATE_DESTROY (created before the old one is destroyed) */
  change_type?: "CREATE" | "UPDATE" | "DELETE" | "DESTROY_CREATE" | "CREATE_DESTROY";
  /** The attributes of the resource before the change, as a JSON string. Sensitive values are masked, null for a created resource */
  before?: string;
  /** The attributes of the resource after the change, as a JSON string. Sensitive values are masked, values resolved only during apply are marked as (known after apply), null for a destroyed resource */
  after?: string;
  /** The result of applying the change: APPLIED or FAILED. Empty until the plan is applied by a Terraform Apply action */
  apply_status?: "APPLIED" | "FAILED";
}

interface LoopDetailsView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The status of the loop resolution */
  status?: "RESOLVED" | "DYNAMIC" | "NO_LOOP" | "LIMIT_REACHED" | "ERROR";
  /** The resolved loop variables as key-value pairs */
  resolved_variables?: SimpleVariableView[];
  /** The error message if the loop resolution failed */
  error_message?: string;
}

interface ExecutionView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The unique ID of the execution */
  id?: number;
  /** The date and time when the execution started */
  start_date?: string;
  /** The date and time when the execution finished */
  finish_date?: string;
  /** The mode that triggered the execution */
  triggered_on?: "CLICK" | "SCHEDULE" | "EVENT" | "PIPELINE" | "WEBHOOK" | "EMAIL";
  /** The priority of the execution. Default is NORMAL */
  priority?: "LOW" | "NORMAL" | "HIGH";
  /** The date when the execution should be run. Should be set in the format: 2026-11-18T12:38:16.000Z */
  delay_until?: string;
  /** Deploy from scratch */
  refresh?: boolean;
  /** Clear cache before running the pipeline */
  clear_cache?: boolean;
  /** The current status of the execution */
  status?: "INPROGRESS" | "ENQUEUED" | "TERMINATED" | "SUCCESSFUL" | "FAILED" | "INITIAL" | "NOT_EXECUTED" | "SKIPPED" | "TERMINATING" | "WAITING_FOR_APPLY" | "WAITING_FOR_VARIABLES" | "WAITING_FOR_SETTABLE_VARIABLES" | "WAITING_FOR_VT_SESSION";
  /** The comment or description provided for this execution */
  comment?: string;
  branch?: BranchView;
  tag?: TagView;
  pull_request?: PullRequestView;
  /** The commit containing the revision field */
  from_revision?: ShortCommitView;
  /** The commit containing the revision field */
  to_revision?: ShortCommitView;
  /** User/member reference */
  creator?: MemberView;
  environment?: ShortEnvironmentView;
  /** Short representation of a artifact version for list views */
  artifact_version?: ShortArtifactVersionView;
  /** The loop details of the execution, if the pipeline was executed in a loop */
  loop_details?: ExecutionLoopDetailsView;
  /** Short representation of a pipeline */
  pipeline?: ShortPipelineView;
  /** The list of action executions within this pipeline execution */
  action_executions?: ShortActionExecutionView[];
  /** Indicates whether the logs for this execution have been removed */
  logs_removed?: boolean;
  /** The list of pipeline executions */
  executions?: ExecutionView[];
  /** The list of files uploaded for this run and placed in the pipeline filesystem before execution */
  payload_files?: PayloadFileView[];
  /** Short representation of a artifact object */
  artifact?: ShortArtifactView;
}

interface PayloadFileView {
  /** The identifier of the uploaded file returned by the upload endpoint */
  uuid?: string;
  /** The original name of the uploaded file; when the upload provides a relative path in the file name, the whole path is preserved */
  name?: string;
  /** The target path in the pipeline filesystem where the file is placed; when empty the file is placed under its original name, keeping the path provided during the upload */
  path?: string;
}

interface ShortArtifactView {
  /** API endpoint to GET this object */
  url?: string;
  /** Web URL to view this object in Buddy.works */
  html_url?: string;
  /** The unique ID of the artifact */
  id?: string;
  /** The type of artifact */
  type?: "CONTAINER" | "BUCKET" | "NPM" | "COMPOSER";
  /** The subtype of the artifact. GH_RELEASE artifacts have their versions synced from GitHub releases. Only GH_RELEASE can be set on create */
  subtype?: "STORYBOOK" | "GH_RELEASE";
  /** The display name of the artifact */
  name?: string;
  /** The human-readable identifier of the artifact */
  identifier?: string;
  /** The scope level of the artifact */
  scope?: "WORKSPACE" | "PROJECT" | "ENVIRONMENT";
  /** Total size of all artifact versions in bytes */
  size?: number;
}

```

## Request Example

```bash
curl -X POST "https://api.buddy.works/workspaces/:workspace/projects/:project_name/pipelines/:pipeline_id/executions" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
  "to_revision": {
    "revision": "a3006ad167"
  },
  "comment": "Deploy hotfix to production"
}'
```

## Response Example

**Status:** `200 OK`

```json
{
  "url": "https://api.buddy.works/workspaces/my-workspace/projects/my-project/pipelines/2/executions/2",
  "html_url": "https://app.buddy.works/my-workspace/my-project/pipelines/pipeline/2/execution/68e60c55592ab1f894ecace6",
  "id": 2,
  "start_date": "2025-10-08T07:01:42.029Z",
  "finish_date": "2025-10-08T07:01:45.886Z",
  "triggered_on": "EVENT",
  "priority": "NORMAL",
  "refresh": true,
  "clear_cache": true,
  "status": "SUCCESSFUL",
  "comment": "test",
  "branch": {
    "url": "https://api.buddy.works/workspaces/my-workspace/projects/my-project/repository/branches/dev-issue1",
    "html_url": "https://app.buddy.works/my-workspace/my-project/repository/branch/dev-issue1",
    "name": "dev-issue1",
    "default": false
  },
  "to_revision": {
    "url": "https://api.buddy.works/workspaces/my-workspace/projects/my-project/repository/commits/90d11b5b54108fa57b30ae286322b99b26d46ccb",
    "html_url": "https://app.buddy.works/my-workspace/my-project/repository/commit/90d11b5b54108fa57b30ae286322b99b26d46ccb",
    "revision": "90d11b5b54108fa57b30ae286322b99b26d46ccb",
    "author_date": "2025-10-08T06:22:11Z",
    "commit_date": "2025-10-08T06:22:11Z",
    "message": "Added sad",
    "committer": {
      "url": "https://api.buddy.works/workspaces/my-workspace/members/1",
      "html_url": "https://app.buddy.works/my-workspace/-/profile/1",
      "id": 1,
      "name": "Mike",
      "avatar_url": "https://app.buddy.works/image-server/user/0/0/0/0/0/0/1/d643744fbe5ebf2906a4d075a5b97110/w/32/32/AVATAR.png?ts=1759904496204",
      "email": "mike@company.com",
      "admin": true,
      "workspace_owner": true
    },
    "author": {
      "url": "https://api.buddy.works/workspaces/my-workspace/members/1",
      "html_url": "https://app.buddy.works/my-workspace/-/profile/1",
      "id": 1,
      "name": "Mike",
      "avatar_url": "https://app.buddy.works/image-server/user/0/0/0/0/0/0/1/d643744fbe5ebf2906a4d075a5b97110/w/32/32/AVATAR.png?ts=1759904496204",
      "email": "mike@company.com",
      "admin": true,
      "workspace_owner": true
    }
  },
  "creator": {
    "url": "https://api.buddy.works/workspaces/my-workspace/members/1",
    "html_url": "https://app.buddy.works/my-workspace/-/profile/1",
    "id": 1,
    "name": "Mike",
    "avatar_url": "https://app.buddy.works/image-server/user/0/0/0/0/0/0/1/d643744fbe5ebf2906a4d075a5b97110/w/32/32/AVATAR.png?ts=1759904496204",
    "email": "mike@company.com",
    "admin": true,
    "workspace_owner": true
  },
  "environment": {
    "url": "https://api.buddy.works/workspaces/my-workspace/projects/my-project/environments/nZrnl40Y",
    "html_url": "https://app.buddy.works/my-workspace/my-project/environments/environment/nZrnl40Y",
    "name": "staging",
    "identifier": "my-staging",
    "id": "nZrnl40Y",
    "scope": "PROJECT"
  },
  "artifact": {
    "url": "https://api.buddy.works/workspaces/my-workspace/artifacts/x5169jL2",
    "html_url": "https://app.buddy.works/my-workspace/-/artifacts/x5169jL2/versions",
    "id": "x5169jL2",
    "type": "CONTAINER",
    "name": "My Application Artifact",
    "identifier": "my-app-artifact",
    "scope": "WORKSPACE",
    "size": 1048576000
  },
  "artifact_version": {
    "url": "https://api.buddy.works/workspaces/my-workspace/artifacts/x5169jL2/versions/0YgEzRGv",
    "html_url": "https://app.buddy.works/my-workspace/-/artifacts/x5169jL2/versions/0YgEzRGv",
    "version_url": "https://latest-my-artifact.bucket-1.registry.sh/",
    "id": "0YgEzRGv",
    "version": "latest",
    "size": 1048576,
    "created_date": "2024-01-20T10:30:00Z"
  },
  "pipeline": {
    "url": "https://api.buddy.works/workspaces/my-workspace/projects/my-project/pipelines/2",
    "html_url": "https://app.buddy.works/my-workspace/my-project/pipelines/pipeline/2",
    "id": 2,
    "identifier": "test",
    "name": "Tests",
    "definition_source": "LOCAL",
    "git_config_ref": "NONE",
    "refs": [
      "refs/heads/master"
    ],
    "events": [
      {
        "type": "PUSH",
        "refs": [
          ":context",
          "refs/heads/dev-*"
        ]
      }
    ],
    "priority": "NORMAL",
    "last_execution_status": "SUCCESSFUL",
    "last_execution_revision": "90d11b5b54108fa57b30ae286322b99b26d46ccb",
    "execution_message_template": "test",
    "always_from_scratch": true,
    "ignore_fail_on_project_status": true,
    "strict_context": false,
    "skip_queued_runs": "NEVER",
    "cancel_inprogress_runs": "NEVER",
    "auto_clear_cache": true,
    "fail_on_prepare_env_warning": true,
    "concurrent_pipeline_runs": true,
    "do_not_create_commit_status": true,
    "waiting_for_push": false,
    "resources": "DEFAULT",
    "git_changeset_base": "LATEST_RUN_MATCHING_REF",
    "filesystem_changeset_base": "CONTENTS",
    "cpu": "X64",
    "description_required": false
  },
  "action_executions": [
    {
      "url": "https://api.buddy.works/workspaces/my-workspace/projects/my-project/pipelines/2/executions/2/action_executions/68e60c55592ab1f894ecace8",
      "html_url": "https://app.buddy.works/my-workspace/my-project/pipelines/pipeline/2/execution/68e60c55592ab1f894ecace6/?actionExecutionId=68e60c55592ab1f894ecace8",
      "action_execution_id": "68e60c55592ab1f894ecace8",
      "start_date": "2025-10-08T07:01:42.67Z",
      "finish_date": "2025-10-08T07:01:45.861Z",
      "status": "SUCCESSFUL",
      "progress": 100,
      "action": {
        "url": "https://api.buddy.works/workspaces/my-workspace/projects/my-project/pipelines/2/actions/1",
        "html_url": "https://app.buddy.works/my-workspace/my-project/pipelines/pipeline/2/action/1/edit",
        "id": 1,
        "name": "ls -la",
        "type": "BUILD",
        "current_revision": "90d11b5b54108fa57b30ae286322b99b26d46ccb",
        "trigger_time": "ON_EVERY_EXECUTION",
        "run_next": "WAIT_ON_SUCCESS",
        "disabled": false,
        "timeout": null,
        "ignore_errors": false,
        "last_execution_status": "SUCCESSFUL"
      },
      "passed_variables": [],
      "outputted_variables": []
    }
  ]
}
```

---
Original source: https://buddy.works/docs/api/executions/run