<!-- BusyBot node reference — https://busybot.net/tools/travis-ci/ -->

> Node: Travis CI (`travis_ci`) · Action · v1
> Category: Development · Credentials: Travis CI API (`travisCiApi`)
> Updated: 2026-08-16

# Travis CI

> Get, list, cancel, restart, and trigger Travis CI builds.

## Overview

Travis CI is a continuous integration and continuous delivery (CI/CD) platform. This tool allows you to get build details, list builds, cancel running builds, restart completed builds, and trigger new builds on repository branches via the Travis CI API v3.

**Category:** Development  
**Tool Name:** `travis_ci`  
**Version:** 1

**Appearance:** Icon: `si-travisci` | Color: `#3EAAAF`

## Node Type

**Action** — processes input items and produces output

## Input / Output

| Direction | Port(s) |
|-----------|--------|
| Input | `Input` |
| Output | `Output`, `Error` |

## Credentials

This tool requires **Travis CI API** credentials.
See the [Credentials Guide](https://busybot.net/credentials/travis-ci-api/) for setup instructions.

### Resources

| Resource | Value |
|----------|-------|
| Build | `build` |

### Operations

| Operation | Value | Description |
|-----------|-------|-------------|
| Cancel | `cancel` | Cancel a build |
| Get | `get` | Get a build |
| Get Many | `getAll` | Get many builds |
| Restart | `restart` | Restart a build |
| Trigger | `trigger` | Trigger a build |

### Parameters

#### Build: Cancel

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Build ID | `string` | Yes | — | Value uniquely identifying the build. Supports expressions like {{ $json.buildId }}. |

#### Build: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Build ID | `string` | Yes | — | Value uniquely identifying the build. Supports expressions like {{ $json.buildId }}. |
| Additional Fields | `collection` | No | `{}` | Additional options for the get operation. |
| — Include | `string` | No | — | List of attributes to eager load. |

#### Build: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `100` | Max number of results to return. _(shown when Return All is `false`)_ |
| Additional Fields | `collection` | No | `{}` | Additional options for the getAll operation. |
| — Include | `string` | No | — | List of attributes to eager load. |
| — Order | `options` | No | `asc` | Sort direction for results. Applied together with Sort By. |
| | | | | Options: `asc`, `desc` |
| — Sort By | `options` | No | `number` | Field to sort results by. |
| | | | | Options: `created_at`, `finished_at`, `id`, `number`, `started_at` |

#### Build: Restart

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Build ID | `string` | Yes | — | Value uniquely identifying the build. Supports expressions like {{ $json.buildId }}. |

#### Build: Trigger

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Slug | `string` | Yes | — | Repository slug in {owner}/{repo} format (e.g., n8n-io/n8n). Supports expressions like {{ $json.repo }}. |
| Branch | `string` | Yes | — | Branch requested to be built. Supports expressions like {{ $json.branch }}. |
| Additional Fields | `collection` | No | `{}` | Additional options for the trigger operation. |
| — Message | `string` | No | — | Travis CI status message attached to the request. |
| — Merge Mode | `options` | No | — | How to merge the build request configuration. |
| | | | | Options: `deep_merge`, `deep_merge_append`, `deep_merge_prepend`, `merge`, `replace` |

#### All Operations

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Max Concurrency | `number` | No | `10` | Maximum number of items to process concurrently. |

## Output Data

How the result reaches the output item depends on the operation, and the two behaviors differ:

| Operation | Output items per input item |
|-----------|-----------------------------|
| `get`, `cancel`, `restart`, `trigger` | One item. The API response is **merged onto the input item JSON**, so fields already on the item pass through. |
| `getAll` | **Fans out** — one item per build. Each item's JSON is the Travis build object and **replaces** the input item JSON entirely; upstream fields do not pass through. |

Binary data is forwarded unchanged in every case. Because `getAll` replaces the item JSON, capture anything you need from upstream before this node, or read it back from the build object itself.

With Return All on, `getAll` pages through the whole build list; with it off, it requests a single page and trims it to Limit. Sort By and Order are combined into one sort instruction, so setting Order without Sort By has no effect.

Reference the result downstream by expression, e.g. `{{ $json.id }}` or `{{ $json.state }}`.

## Usage Examples

- Get a specific build by ID
- List all builds for the current user
- List builds sorted by creation date
- Cancel a running build
- Restart a completed build
- Trigger a new build on a specific branch
- Trigger a build with a custom message and merge mode

## Example Configuration

Get one build, eager-loading its commit:

```json
{
  "type": "travis_ci",
  "parameters": {
    "resource": "build",
    "operation": "get",
    "buildId": "{{ $json.buildId }}",
    "additionalFields": {
      "include": "build.commit"
    }
  }
}
```

List the 25 most recently finished builds:

```json
{
  "type": "travis_ci",
  "parameters": {
    "resource": "build",
    "operation": "getAll",
    "returnAll": false,
    "limit": 25,
    "additionalFields": {
      "sortBy": "finished_at",
      "order": "desc"
    }
  }
}
```

Trigger a build on a branch with a custom message:

```json
{
  "type": "travis_ci",
  "parameters": {
    "resource": "build",
    "operation": "trigger",
    "slug": "myorg/myrepo",
    "branch": "{{ $json.branch }}",
    "additionalFields": {
      "message": "Manual build from workflow",
      "mergeMode": "deep_merge"
    }
  }
}
```

Cancel a running build:

```json
{
  "type": "travis_ci",
  "parameters": {
    "resource": "build",
    "operation": "cancel",
    "buildId": "{{ $json.buildId }}"
  }
}
```

Restart a finished build:

```json
{
  "type": "travis_ci",
  "parameters": {
    "resource": "build",
    "operation": "restart",
    "buildId": "123456789"
  }
}
```

### Error Handling

| Mode | Behavior |
|------|----------|
| **stop** | Halts workflow on first error |
| **continue** | Skips failed items, passes successful ones through |
| **errorPort** | Routes failed items to Error output port |

## Tips

Use Travis CI to get, list, cancel, restart, or trigger CI/CD builds via the Travis CI API v3.