Download

  • POST
  • /workspaces
  • /:workspace
  • /projects
  • /:project_name
  • /pipelines
  • /:pipeline_id
  • /actions

Download action covers FTP, FTPS and SSH download activities.

Request

URL PARAMETERS
workspacerequired string
The workspace domain.
pipeline_idrequired integer
The numerical ID of the desired pipeline.
project_namerequired string
The name ID of the project.
POST PARAMETERS
namerequired string
The name of the action
typerequired string
Defines the type of the action. Should be set to DOWNLOAD
targetsrequired string
Define a target (server) for your deployments using the following paramters
input_typestring
Defines whether the files are deployed from the repository or from the build filesystem. Can be one of SCM_REPOSITORY or BUILD_ARTIFACTS.
source_pathrequired string
The path from which the file will be downloaded.
destination_pathrequired string
The path in which the file will be saved.
download_excludesstring[]
The paths and/or files that will be left out during the deployment for the DOWNLOAD type action.
download_includesstring[]
The exceptions from the ignore patterns set in deployment_excludes. For the DOWNLOAD type action.
overwriteboolean
Replace files if they already exist.
recursiveboolean
If set to true, the whole directory tree is downloaded, otherwise only the files from the path are downloaded.

Last modified on Mar 19, 2025

Example: Download FTP server

curl -X POST "https://api.buddy.works/workspaces/:workspace/projects/:project_name/pipelines/:pipeline_id/actions" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "Content-Type: application/json" \
-d '{
  "name": "Download files from FTP server",
  "type": "DOWNLOAD",
  "trigger_time": "ON_EVERY_EXECUTION",
  "source_path": "/source",
  "recursive": false,
  "targets": [
    {
      "type": "FTP",
      "secure": false,
      "id": "ftp_target_1",
      "host": "192.0.2.1",
      "port": "21",
      "auth": {
        "username": "user",
        "password": "secure!gYTKjljwPt4nAffHn6mGEQ==.5rkCAHX55eiwOqJ73oGg6g=="
      },
      "path": "/var/www"
    }
  ],
  "destination_path": "/assets",
  "overwrite": false
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/175688/actions/196730", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/175688/action/196730/edit", "id": 196730, "name": "Download files from FTP server", "type": "DOWNLOAD", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "disabled": false, "source_path": "/source", "recursive": false, "targets": [ { "type": "FTP", "secure": false, "id": "jvbcnjwcux", "host": "192.0.2.1", "port": "21", "login": "ftp-0", "password": "secure!Fa+KZiUPt454/V0I/rzVow==.NTxejOG4XOsR8a5u8PLhVw==" } ], "pipeline": { "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/175688", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/175688", "id": 175688, "name": "Test Docs", "on": "EVENT", "definition_source": "LOCAL", "git_config_ref": "NONE", "events": [ { "type": "PUSH", "refs": [ "refs/heads/master" ] } ], "priority": "NORMAL", "disabled": false, "last_execution_status": "INITIAL", "always_from_scratch": false, "ignore_fail_on_project_status": false, "no_skip_to_most_recent": false, "terminate_stale_runs": false, "auto_clear_cache": false, "fetch_all_refs": false, "fail_on_prepare_env_warning": true, "concurrent_pipeline_runs": false, "do_not_create_commit_status": false, "stale": false, "waiting_for_push": false, "resources": "DEFAULT", "git_changeset_base": "LATEST_RUN", "filesystem_changeset_base": "DATE_MODIFIED", "cpu": "X86", "description_required": false }, "ignore_errors": false, "run_next": "WAIT_ON_SUCCESS", "overwrite": false, "destination_path": "/assets" }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999

Example: Download SSH (password)

curl -X POST "https://api.buddy.works/workspaces/:workspace/projects/:project_name/pipelines/:pipeline_id/actions" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "Content-Type: application/json" \
-d '{
  "name": "Download files from SSH server by pass",
  "type": "DOWNLOAD",
  "trigger_time": "ON_EVERY_EXECUTION",
  "source_path": "/source",
  "recursive": false,
  "targets": [
    {
      "type": "SSH",
      "id": "ftjbtgjals",
      "host": "192.0.2.1",
      "port": "22",
      "auth": {
        "method": "PASSWORD",
        "username": "sftp-pass-0",
        "password": "$MyPassword"
      }
    }
  ],
  "destination_path": "/assets",
  "overwrite": false
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/175688/actions/196727", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/175688/action/196727/edit", "id": 196727, "name": "Download files from SSH server by pass", "type": "DOWNLOAD", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "disabled": false, "source_path": "/source", "recursive": false, "targets": [ { "type": "SSH", "id": "ftjbtgjals", "host": "192.0.2.1", "port": "22", "auth": { "method": "PASSWORD", "username": "sftp-pass-0", "password": "secure!Fa+KZiUPt454/V0I/rzVow==.NTxejOG4XOsR8a5u8PLhVw==" } } ], "pipeline": { "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/175688", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/175688", "id": 175688, "name": "Test Docs", "on": "EVENT", "definition_source": "LOCAL", "git_config_ref": "NONE", "events": [ { "type": "PUSH", "refs": [ "refs/heads/master" ] } ], "priority": "NORMAL", "disabled": false, "last_execution_status": "INITIAL", "always_from_scratch": false, "ignore_fail_on_project_status": false, "no_skip_to_most_recent": false, "terminate_stale_runs": false, "auto_clear_cache": false, "fetch_all_refs": false, "fail_on_prepare_env_warning": true, "concurrent_pipeline_runs": false, "do_not_create_commit_status": false, "stale": false, "waiting_for_push": false, "resources": "DEFAULT", "git_changeset_base": "LATEST_RUN", "filesystem_changeset_base": "DATE_MODIFIED", "cpu": "X86", "description_required": false }, "ignore_errors": false, "run_next": "WAIT_ON_SUCCESS", "overwrite": false, "destination_path": "/assets" }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999

Example: Download SSH (key)

curl -X POST "https://api.buddy.works/workspaces/:workspace/projects/:project_name/pipelines/:pipeline_id/actions" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "Content-Type: application/json" \
-d '{
  "name": "Download files from SSH server with asset_key",
  "type": "DOWNLOAD",
  "trigger_time": "ON_EVERY_EXECUTION",
  "source_path": "/source",
  "recursive": false,
  "targets": [
    {
      "type": "SSH",
      "id": "bctqrryybe",
      "host": "192.0.2.1",
      "port": "22",
      "auth": {
        "method": "ASSETS_KEY",
        "username": "sftp-key-phrase-0",
        "asset": "id_project"
      }
    }
  ],
  "destination_path": "/assets",
  "overwrite": false
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/525739/actions/1609588", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/525739/action/1609588/edit", "id": 1609588, "name": "Download files from SSH server with asset_key", "type": "DOWNLOAD", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "disabled": false, "source_path": "/source", "recursive": false, "targets": [ { "type": "SSH", "id": "bctqrryybe", "host": "192.0.2.1", "port": "22", "auth": { "method": "ASSETS_KEY", "username": "sftp-key-phrase-0", "asset": "id_project" } } ], "pipeline": { "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/525739", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/525739", "id": 525739, "name": "pip6", "definition_source": "LOCAL", "git_config_ref": "NONE", "events": [ { "type": "PUSH", "refs": [ "refs/heads/master" ] } ], "priority": "NORMAL", "disabled": false, "last_execution_status": "INITIAL", "always_from_scratch": false, "ignore_fail_on_project_status": false, "no_skip_to_most_recent": false, "terminate_stale_runs": false, "auto_clear_cache": false, "fetch_all_refs": false, "fail_on_prepare_env_warning": true, "concurrent_pipeline_runs": false, "do_not_create_commit_status": false, "stale": false, "waiting_for_push": false, "resources": "DEFAULT", "git_changeset_base": "LATEST_RUN", "filesystem_changeset_base": "DATE_MODIFIED", "cpu": "X64", "description_required": false }, "ignore_errors": false, "run_next": "WAIT_ON_SUCCESS", "overwrite": false, "destination_path": "/assets" }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999

Example: Download SSH (password and key)

curl -X POST "https://api.buddy.works/workspaces/:workspace/projects/:project_name/pipelines/:pipeline_id/actions" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "Content-Type: application/json" \
-d '{
  "name": "Download files from SSH server by password and key passphrase",
  "type": "DOWNLOAD",
  "trigger_time": "ON_EVERY_EXECUTION",
  "source_path": "/source",
  "recursive": false,
  "targets": [
    {
      "type": "SSH",
      "id": "flcroghbuu",
      "host": "192.0.2.1",
      "port": "22",
      "auth": {
        "method": "SSH_KEY",
        "username": "sftp-pass-key-phrase-0",
        "password": "$MyPassword",
        "passphrase": "$MyPassphrase",
        "key": "$MyKey"
      }
    }
  ],
  "destination_path": "/assets",
  "overwrite": false
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/175688/actions/196729", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/175688/action/196729/edit", "id": 196729, "name": "Download files from SSH server by password and key passphrase", "type": "DOWNLOAD", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "disabled": false, "source_path": "/source", "recursive": false, "targets": [ { "type": "SSH", "id": "flcroghbuu", "host": "192.0.2.1", "port": "22", "auth": { "method": "SSH_KEY", "username": "sftp-pass-key-phrase-0", "password": "secure!Fa+KZiUPt454/V0I/rzVow==.NTxejOG4XOsR8a5u8PLhVw==", "passphrase": "secure!XbPhCUMzlLd4ZeiR5UlW2g==.ar6PHXL5fQL79BNOaTc3aw==", "key": "secure!QQ2jNn5URpsicPDdMYU5QQ==.rvMfWQ3R0OLqSc1t22//rg==" } } ], "pipeline": { "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/175688", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/175688", "id": 175688, "name": "Test Docs", "on": "EVENT", "definition_source": "LOCAL", "git_config_ref": "NONE", "events": [ { "type": "PUSH", "refs": [ "refs/heads/master" ] } ], "priority": "NORMAL", "disabled": false, "last_execution_status": "INITIAL", "always_from_scratch": false, "ignore_fail_on_project_status": false, "no_skip_to_most_recent": false, "terminate_stale_runs": false, "auto_clear_cache": false, "fetch_all_refs": false, "fail_on_prepare_env_warning": true, "concurrent_pipeline_runs": false, "do_not_create_commit_status": false, "stale": false, "waiting_for_push": false, "resources": "DEFAULT", "git_changeset_base": "LATEST_RUN", "filesystem_changeset_base": "DATE_MODIFIED", "cpu": "X86", "description_required": false }, "ignore_errors": false, "run_next": "WAIT_ON_SUCCESS", "overwrite": false, "destination_path": "/assets" }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999

Example: Download SFTP with Integration

curl -X POST "https://api.buddy.works/workspaces/:workspace/projects/:project_name/pipelines/:pipeline_id/actions" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "Content-Type: application/json" \
-d '{
  "name": "Download files to 192.0.2.1 by SFTP with Integration",
  "type": "DOWNLOAD",
  "trigger_time": "ON_EVERY_EXECUTION",
  "input_type": "SCM_REPOSITORY",
  "local_path": "/",
  "remote_path": "",
  "targets": [
    {
      "id": "do_server",
      "type": "DIGITAL_OCEAN",
      "host": "buddy-tests",
      "port": "6464",
      "path": "Home/www",
      "auth": {
        "method": "PASSWORD",
        "username": "sftp-pass-key-phrase-0",
        "password": "$MyPassword"
      },
      "integration": "digitalocean"
    }
  ]
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/175688/actions/196730", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/175688/action/196730/edit", "id": 1610080, "name": "Download files to 192.0.2.1 by SFTP with Integration", "type": "DOWNLOAD", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "disabled": false, "targets": [ { "type": "DIGITAL_OCEAN", "id": "do_server", "host": "buddy-tests", "port": "6464", "path": "Home/www", "auth": { "method": "PASSWORD", "username": "sftp-pass-key-phrase-0", "password": "secure!mVDZtTa4G2jzOcxn6u5Ifg==.37LzUFR4h/6jFECXuElXzw==" }, "integration": "digitalocean" } ], "pipeline": { "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/525739", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/525739", "id": 525739, "name": "pip6", "definition_source": "LOCAL", "git_config_ref": "FIXED", "events": [ { "type": "PUSH", "refs": [ "refs/heads/master" ] } ], "priority": "NORMAL", "disabled": false, "last_execution_status": "INITIAL", "always_from_scratch": false, "ignore_fail_on_project_status": false, "no_skip_to_most_recent": false, "terminate_stale_runs": false, "auto_clear_cache": false, "fetch_all_refs": false, "fail_on_prepare_env_warning": true, "concurrent_pipeline_runs": false, "do_not_create_commit_status": false, "stale": false, "waiting_for_push": false, "resources": "DEFAULT", "git_config": { "path": ".buddy/pip6.fixed.yml", "branch": "master", "project": "company-website" }, "git_changeset_base": "LATEST_RUN", "filesystem_changeset_base": "DATE_MODIFIED", "cpu": "X64", "description_required": false }, "ignore_errors": false, "run_next": "WAIT_ON_SUCCESS" }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999

Example: Proxy

curl -X POST "https://api.buddy.works/workspaces/:workspace/projects/:project_name/pipelines/:pipeline_id/actions" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "Content-Type: application/json" \
-d '{
  "name": "Download files from SSH server by pass with Proxy",
  "type": "DOWNLOAD",
  "trigger_time": "ON_EVERY_EXECUTION",
  "input_type": "SCM_REPOSITORY",
  "local_path": "/",
  "remote_path": "",
  "targets": [
    {
      "id": "sftp_target_3",
      "type": "SSH",
      "host": "192.0.2.1",
      "port": "22",
      "auth": {
        "method": "PASSWORD",
        "username": "sftp-pass-0",
        "password": "$MyPassword"
      },
      "proxy": {
        "host": "proxy.myserver.com",
        "port": "80",
        "auth": {
          "method": "PASSWORD",
          "username": "api_tests_user_proxy",
          "password": "$MyPassword"
        }
      }
    }
  ]
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/525739/actions/1610110", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/525739/action/1610110/edit", "id": 1610118, "name": "Download files from SSH server by pass with Proxy", "type": "DOWNLOAD", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "disabled": false, "targets": [ { "type": "SSH", "id": "sftp_target_3", "host": "192.0.2.1", "port": "22", "auth": { "method": "PASSWORD", "username": "sftp-pass-0", "password": "secure!mVDZtTa4G2jzOcxn6u5Ifg==.37LzUFR4h/6jFECXuElXzw==" }, "proxy": { "host": "proxy.myserver.com", "port": "80", "auth": { "method": "PASSWORD", "username": "api_tests_user_proxy", "password": "secure!mVDZtTa4G2jzOcxn6u5Ifg==.37LzUFR4h/6jFECXuElXzw==" } } } ], "pipeline": { "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/525739/actions/1610129", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/525739/action/1610129/edit", "id": 1610129, "name": "Download files from SSH server by pass with Proxy", "type": "DOWNLOAD", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "disabled": false, "targets": [ { "type": "SSH", "id": "sftp_target_3", "host": "192.0.2.1", "port": "22", "auth": { "method": "PASSWORD", "username": "sftp-pass-0", "password": "secure!mVDZtTa4G2jzOcxn6u5Ifg==.37LzUFR4h/6jFECXuElXzw==" }, "proxy": { "host": "proxy.myserver.com", "port": "80", "auth": { "method": "PASSWORD", "username": "api_tests_user_proxy", "password": "secure!mVDZtTa4G2jzOcxn6u5Ifg==.37LzUFR4h/6jFECXuElXzw==" } } } ], "pipeline": { "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/525739", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/525739", "id": 525739, "name": "pip6", "definition_source": "LOCAL", "git_config_ref": "FIXED", "events": [ { "type": "PUSH", "refs": [ "refs/heads/master" ] } ], "priority": "NORMAL", "disabled": false, "last_execution_status": "INITIAL", "always_from_scratch": false, "ignore_fail_on_project_status": false, "no_skip_to_most_recent": false, "terminate_stale_runs": false, "auto_clear_cache": false, "fetch_all_refs": false, "fail_on_prepare_env_warning": true, "concurrent_pipeline_runs": false, "do_not_create_commit_status": false, "stale": false, "waiting_for_push": false, "resources": "DEFAULT", "git_config": { "path": ".buddy/pip6.fixed.yml", "branch": "master", "project": "company-website" }, "git_changeset_base": "LATEST_RUN", "filesystem_changeset_base": "DATE_MODIFIED", "cpu": "X64", "description_required": false }, "ignore_errors": false, "run_next": "WAIT_ON_SUCCESS" } }
STATUS
200 OK
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999