---
title: "Run API - Start"
method: POST
path: "/{workspaceId}/projects/{projectName}/run/start"
tags: ["projects.runs"]
---

# Run API - Start

`POST /{workspaceId}/projects/{projectName}/run/start`

## Request

- Base URL: `https://app.intuned.io/api/v1/workspace`
- URL: `https://app.intuned.io/api/v1/workspace/{workspaceId}/projects/{projectName}/run/start`
- Auth: API key in header `x-api-key`

Start a Run for a Project.

## Path parameters

- `workspaceId` string, uuid, required
- `projectName` string, required

## Request body

- object
  - `parameters` object, required: The parameters to be passed to the API.
  - `proxy` string, uri, nullable: Proxy URL to be used for the API call. This is optional and can be used to route the API call through a proxy server. Use "intuned://auto" to let the platform pick a proxy for this project.
  - `saveTrace` boolean
  - `requestTimeout` integer: Timeout for the API request in seconds. Default is 10 minutes (600 seconds).
  - `retry` object: Retry policy configurations in case of failure.
    - `maximumAttempts` integer: Maximum number of attempts to retry the run in case of failure
  - `authSession` union: AuthSession config to be used with the run. This is a required field if the AuthSession is enabled on the project.
    - object: Runtime based AuthSession config to be used with the run. This is a required field if the AuthSession is enabled on the project and uses runtime input.
      - `id` string
      - `autoRecreate` true
      - `checkAttempts` integer: Number of attempts to check the validity of the AuthSession before recreating it.
      - `createAttempts` integer: Number of attempts to create a new AuthSession if the current one is invalid or expired.
      - `proxy` string, uri, nullable: Proxy URL to be used for the API call. This is optional and can be used to route the API call through a proxy server. Use "intuned://auto" to let the platform pick a proxy for this project.
      - `requestTimeout` integer: Timeout for the API request in seconds. Default is 10 minutes (600 seconds).
      - `saveTrace` boolean: Whether trace files should be saved for auth session runs (validate, create, update) triggered by this API run. Defaults to the API request's saveTrace value. Project-level defaults.authSession.saveTrace overrides this.
      - `runtimeInput` object, required: Runtime input to be used for the AuthSession. This is optional and can be used to pass dynamic values at runtime.
    - object: Credentials based AuthSession config to be used with the run. This is a required field if the AuthSession is enabled on the project and uses credentials.
      - `id` string, required: The ID of the AuthSession to use.
      - `autoRecreate` boolean: If true, the AuthSession will be automatically recreated if it is invalid or expired.
      - `checkAttempts` integer: Number of attempts to check the validity of the AuthSession before recreating it.
      - `createAttempts` integer: Number of attempts to create a new AuthSession if the current one is invalid or expired.
      - `proxy` string, uri, nullable: Proxy URL to be used for the API call. This is optional and can be used to route the API call through a proxy server. Use "intuned://auto" to let the platform pick a proxy for this project.
      - `requestTimeout` integer: Timeout for the API request in seconds. Default is 10 minutes (600 seconds).
      - `saveTrace` boolean: Whether trace files should be saved for auth session runs (validate, create, update) triggered by this API run. Defaults to the API request's saveTrace value. Project-level defaults.authSession.saveTrace overrides this.
  - `sink` union: Optional sink configuration for the run. Can be a webhook or S3 sink.
    - object: Configuration for the webhook sink.
      - `type` 'webhook', required
      - `url` string, required: The URL to which the webhook will send the data.
      - `headers` object: Optional headers to be sent with the webhook request.
      - `skipOnFail` boolean: If true, the webhook will not be sent if the API execution fails.
      - `apisToSend` string[]: List of API names to be sent to the webhook. If not provided, all APIs will be sent.
    - object: Configuration for the S3 sink.
      - `type` 's3', required
      - `bucket` string, required: The name of the S3 bucket where the data will be stored.
      - `accessKeyId` string, required: The access key ID for the S3 bucket.
      - `secretAccessKey` string, required: The secret access key for the S3 bucket.
      - `region` string, required: The region where the S3 bucket is located.
      - `prefix` string: Optional prefix for the S3 objects. This can be used to organize objects within the bucket.
      - `skipOnFail` boolean: If enabled, failed payload runs will ***not*** be written to the bucket.
      - `apisToSend` string[]: List of API names to be sent to the S3 bucket. If not provided, all APIs will be sent.
      - `endpoint` string: Optional custom endpoint for the S3 bucket. This can be used for S3-compatible services.
      - `forcePathStyle` boolean: If true, the S3 client will use path-style URLs instead of virtual-hosted-style URLs. This is useful for S3-compatible services that require path-style access.
  - `api` string, required: The name of the API to be executed. This is the file path relative to the `api` folder inside your project.

## Response `201`

Run started successfully.

- object
  - `runId` string, required: Unique identifier for the run, prefixed nanoId (ru_...)
  - `status` 'pending', required

---

[API](https://skmtc.dev/intunedhq/apis/intuned-client.md) - [All operations](https://skmtc.dev/intunedhq/apis/intuned-client/llms.txt) - [OpenAPI document](https://skmtc.dev/intunedhq/apis/intuned-client/revisions/9f87fec44145?raw)
