Skip to main content

API

Use the Outomated API to run builds from a CI/CD pipeline or from an external application.

Authentication#

The Outomated API uses API keys to authenticate requests. The API key associated with an account can be viewed and managed from Settings > API Key.

Once you have the API key, send it in the request header X-ApiKey with every API request.

AUTHENTICATED REQUEST
$ curl -H "X-ApiKey:API_KEY" \  -X POST \  https://api.outomated.com/beta/projects/PROJECT_ID/builds

Run a build#

Runs a build on a newly allocated VM.

POST /beta/projects/:project_id/builds
$ curl -H "X-ApiKey:API_KEY" \  -H "Content-Type:application/json" \  -X POST \  -d '{    "buildName": "Fix - commit 453rf3",    "waitForCompletion": true,    "buildCapability": {      "os": "windows-10",      "browser": "firefox",      "browserVersion": "94"    },    "buildConfig": {      "displayResolution": "1728x1117",      "timezone": "UTC",      "retryFailedTestsUpto": 3,      "buildVars": {        "url": "https://staging.example.com/"      }    },    "files": [      "LandingTests",      {        "name": "EditorTests",        "tests": [          "validate tabbed layout works expected",          {            "name": "validate color of button on picker change",            "versions": ["v1", "v3"]          }        ]      }    ]  }' \  https://api.outomated.com/beta/projects/PROJECT_ID/builds
RESPONSE
{  "buildId": 3034,  "status": success,  "error": null}

Parameters#

note

All parameters are optional. When no request body is sent, all tests in the given project are run and defaults are used for the rest of the parameters.

note

Replace PROJECT_ID in the endpoint URL with the numeric id of the project you're running builds on. To get the project id, login to Outomated, select/create a project, and simply look into the query string param named project. For example in https://app.outomated.com/management?project=8, the project id is 8.

buildName#

An optional name for the build. Use it to identify builds easily. You can pass any identifier, commit message, etc. When omitted, builds are identified using their unique id. Multiple builds can have the same name.

waitForCompletion#

Controls when a response is returned. Defaults to true. When set to false, a response is returned immediately after the build is started on the VM.

buildCapability#

  • os#

    Specifies the OS used for running this build. Possible values are:

    • windows-10 | win10

    • windows-8.1 | win8.1

      Defaults to win10

  • browser#

    Specifies the browser used for running this build. Possible values are:

    • chrome

    • firefox | ff

    • ie

      Defaults to chrome

  • browserVersion#

    Specifies the version of the given browser. Must be a valid and available version. Defaults to the latest version.

buildConfig#

  • displayResolution#

    Specifies the desired resolution of the VM, such as 1728x1117. Defaults to 1366x768.

  • timezone#

    Specifies the desired timezone of the VM, such as Alaskan Standard Time. Defaults to UTC.

  • retryFailedTestsUpto#

    Specifies the desired number of retries in event of a test failure. Defaults to 0, which means no retries.

  • buildVars#

    Provide an object of key-value pairs that override any existing build variables.

files#

An array of files and tests that need to be executed as part of this build. When omitted, all files and tests within those files are executed. The following granularity levels are allowed when passing a file array.

  • Files can be given as string name or an object. When it's a string, all tests and their default versions are run. When an object, tests can be specified as an array.
  • Tests in a file object can be given as string names or an object. When it's a string, the default version is run. When an object, version names can be specified as an array.
FILE ARRAY
[  "LandingTests",  {    "name": "EditorTests",    "tests": [      "validate tabbed layout works expected",      {        "name": "validate color of button on picker change",        "versions": ["v1", "v3"]      }    ]  }]