> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://platform.bctrl.ai/llms.txt.
> For full documentation content, see https://platform.bctrl.ai/llms-full.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://platform.bctrl.ai/_mcp/server.

# Create Runtime Invocation

POST https://api.bctrl.ai/v1/runtimes/{runtimeId}/invocations
Content-Type: application/json

Submit durable AI work to a live runtime using the simplified invocation contract.

Reference: https://platform.bctrl.ai/api/api-reference/runtimes/create-invocation

## OpenAPI Specification

```yaml
openapi: 3.1.0
info:
  title: bctrl API
  version: 1.0.0
paths:
  /v1/runtimes/{runtimeId}/invocations:
    post:
      operationId: invocations-create
      summary: Create a durable invocation for a live runtime
      description: >-
        Submit durable AI work to a live runtime using the simplified invocation
        contract.
      tags:
        - subpackage_runtimes
      parameters:
        - name: runtimeId
          in: path
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: Use Bearer <api-key>.
          required: true
          schema:
            type: string
        - name: Idempotency-Key
          in: header
          description: >-
            Optional retry key for this billable operation. Reusing the same key
            with the same request replays the original successful response;
            reusing it with a different request returns 409.
          required: false
          schema:
            type: string
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Invocation'
        '400':
          description: >-
            The request was invalid. See `code` and `details`. Example code:
            `invocation.output_schema_invalid`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: 'Authentication required: the API key is missing or invalid.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '402':
          description: >-
            A capability or usage limit was exceeded. Example code:
            `browser.concurrent_quota_exceeded`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: 'Forbidden: the API key cannot access this resource.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: >-
            The requested resource was not found. Example code:
            `runtime.not_found`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '409':
          description: >-
            The request conflicts with the current resource state. Example code:
            `runtime.not_executable`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded. Retry after the delay indicated by Retry-After.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: An unexpected server error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: >-
            An upstream dependency was unavailable. Retry later. Example code:
            `runtime.host_unavailable`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RuntimeInvocationCreateRequest'
servers:
  - url: https://api.bctrl.ai
    description: Production
  - url: http://localhost:8787
    description: Local development gateway
components:
  schemas:
    RuntimeInvocationCreateRequestDiscriminatorMappingActMetadata:
      type: object
      properties: {}
      title: RuntimeInvocationCreateRequestDiscriminatorMappingActMetadata
    RuntimeInvocationCreateRequestDiscriminatorMappingActStagehandAction:
      type: object
      properties:
        arguments:
          type: array
          items:
            type: string
        description:
          type: string
        method:
          type: string
        selector:
          type: string
      required:
        - description
        - selector
      title: RuntimeInvocationCreateRequestDiscriminatorMappingActStagehandAction
    RuntimeInvocationCreateRequestDiscriminatorMappingActTarget0:
      type: string
      enum:
        - active
        - new
      title: RuntimeInvocationCreateRequestDiscriminatorMappingActTarget0
    RuntimeInvocationCreateRequestDiscriminatorMappingActTarget1:
      type: object
      properties:
        id:
          type: string
      required:
        - id
      title: RuntimeInvocationCreateRequestDiscriminatorMappingActTarget1
    RuntimeInvocationCreateRequestDiscriminatorMappingActTarget:
      oneOf:
        - $ref: >-
            #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingActTarget0
        - $ref: >-
            #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingActTarget1
      title: RuntimeInvocationCreateRequestDiscriminatorMappingActTarget
    RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseFilesItems:
      type: object
      properties:
        fileId:
          type: string
          format: uuid
        name:
          type: string
        runtimePath:
          type: string
      required:
        - fileId
      title: RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseFilesItems
    RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseMetadata:
      type: object
      properties: {}
      title: RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseMetadata
    RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseSensitiveData:
      type: object
      properties: {}
      title: >-
        RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseSensitiveData
    RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseTarget0:
      type: string
      enum:
        - active
        - new
      title: RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseTarget0
    RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseTarget1:
      type: object
      properties:
        id:
          type: string
      required:
        - id
      title: RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseTarget1
    RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseTarget:
      oneOf:
        - $ref: >-
            #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseTarget0
        - $ref: >-
            #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseTarget1
      title: RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseTarget
    RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseUseVision:
      oneOf:
        - type: boolean
        - type: string
          enum:
            - auto
      title: RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseUseVision
    RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseVisionDetailLevel:
      type: string
      enum:
        - low
        - high
        - auto
      title: >-
        RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseVisionDetailLevel
    RuntimeInvocationCreateRequestDiscriminatorMappingExtractMetadata:
      type: object
      properties: {}
      title: RuntimeInvocationCreateRequestDiscriminatorMappingExtractMetadata
    RuntimeInvocationCreateRequestDiscriminatorMappingExtractTarget0:
      type: string
      enum:
        - active
        - new
      title: RuntimeInvocationCreateRequestDiscriminatorMappingExtractTarget0
    RuntimeInvocationCreateRequestDiscriminatorMappingExtractTarget1:
      type: object
      properties:
        id:
          type: string
      required:
        - id
      title: RuntimeInvocationCreateRequestDiscriminatorMappingExtractTarget1
    RuntimeInvocationCreateRequestDiscriminatorMappingExtractTarget:
      oneOf:
        - $ref: >-
            #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingExtractTarget0
        - $ref: >-
            #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingExtractTarget1
      title: RuntimeInvocationCreateRequestDiscriminatorMappingExtractTarget
    RuntimeInvocationCreateRequestDiscriminatorMappingObserveMetadata:
      type: object
      properties: {}
      title: RuntimeInvocationCreateRequestDiscriminatorMappingObserveMetadata
    RuntimeInvocationCreateRequestDiscriminatorMappingObserveTarget0:
      type: string
      enum:
        - active
        - new
      title: RuntimeInvocationCreateRequestDiscriminatorMappingObserveTarget0
    RuntimeInvocationCreateRequestDiscriminatorMappingObserveTarget1:
      type: object
      properties:
        id:
          type: string
      required:
        - id
      title: RuntimeInvocationCreateRequestDiscriminatorMappingObserveTarget1
    RuntimeInvocationCreateRequestDiscriminatorMappingObserveTarget:
      oneOf:
        - $ref: >-
            #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingObserveTarget0
        - $ref: >-
            #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingObserveTarget1
      title: RuntimeInvocationCreateRequestDiscriminatorMappingObserveTarget
    SolveCaptchaRequestMetadata:
      type: object
      properties: {}
      title: SolveCaptchaRequestMetadata
    SolveCaptchaRequestTarget0:
      type: string
      enum:
        - active
        - new
      title: SolveCaptchaRequestTarget0
    SolveCaptchaRequestTarget1:
      type: object
      properties:
        id:
          type: string
      required:
        - id
      title: SolveCaptchaRequestTarget1
    SolveCaptchaRequestTarget:
      oneOf:
        - $ref: '#/components/schemas/SolveCaptchaRequestTarget0'
        - $ref: '#/components/schemas/SolveCaptchaRequestTarget1'
      title: SolveCaptchaRequestTarget
    StagehandAgentRequestFilesItems:
      type: object
      properties:
        fileId:
          type: string
          format: uuid
        name:
          type: string
        runtimePath:
          type: string
      required:
        - fileId
      title: StagehandAgentRequestFilesItems
    StagehandAgentRequestMetadata:
      type: object
      properties: {}
      title: StagehandAgentRequestMetadata
    StagehandAgentRequestTarget0:
      type: string
      enum:
        - active
        - new
      title: StagehandAgentRequestTarget0
    StagehandAgentRequestTarget1:
      type: object
      properties:
        id:
          type: string
      required:
        - id
      title: StagehandAgentRequestTarget1
    StagehandAgentRequestTarget:
      oneOf:
        - $ref: '#/components/schemas/StagehandAgentRequestTarget0'
        - $ref: '#/components/schemas/StagehandAgentRequestTarget1'
      title: StagehandAgentRequestTarget
    StagehandAgentRequestVariables:
      type: object
      properties: {}
      title: StagehandAgentRequestVariables
    RuntimeInvocationCreateRequest:
      oneOf:
        - type: object
          properties:
            action:
              type: string
              enum:
                - act
              description: 'Discriminator value: act'
            aiProviderId:
              type: string
            instruction:
              type: string
            metadata:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingActMetadata
            model:
              type: string
            stagehandAction:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingActStagehandAction
            target:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingActTarget
            temperature:
              type: number
              format: double
            timeoutMs:
              type: integer
          required:
            - action
          description: act variant
        - type: object
          properties:
            action:
              type: string
              enum:
                - browserUse
              description: 'Discriminator value: browserUse'
            aiProviderId:
              type: string
            directlyOpenUrl:
              type: boolean
            enablePlanning:
              type: boolean
            extendSystemMessage:
              type: string
            extractionAiProviderId:
              type: string
            fallbackAiProviderId:
              type: string
            files:
              type: array
              items:
                $ref: >-
                  #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseFilesItems
            flashMode:
              type: boolean
            includeAttributes:
              type: array
              items:
                type: string
            instruction:
              type: string
            maxActionsPerStep:
              type: integer
            maxFailures:
              type: integer
            maxHistoryItems:
              type:
                - integer
                - 'null'
            maxSteps:
              type: integer
            metadata:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseMetadata
            model:
              type: string
            outputSchema:
              type: object
              additionalProperties:
                description: Any type
            overrideSystemMessage:
              type: string
            sensitiveData:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseSensitiveData
            stepTimeoutMs:
              type: integer
            target:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseTarget
            temperature:
              type: number
              format: double
            timeoutMs:
              type: integer
            toolIds:
              type: array
              items:
                type: string
                format: uuid
            toolsetId:
              type: string
              format: uuid
            useThinking:
              type: boolean
            useVision:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseUseVision
            visionDetailLevel:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingBrowserUseVisionDetailLevel
          required:
            - action
            - instruction
          description: browserUse variant
        - type: object
          properties:
            action:
              type: string
              enum:
                - extract
              description: 'Discriminator value: extract'
            aiProviderId:
              type: string
            instruction:
              type: string
            metadata:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingExtractMetadata
            model:
              type: string
            outputSchema:
              type: object
              additionalProperties:
                description: Any type
            selector:
              type: string
            target:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingExtractTarget
            temperature:
              type: number
              format: double
            timeoutMs:
              type: integer
          required:
            - action
          description: extract variant
        - type: object
          properties:
            action:
              type: string
              enum:
                - observe
              description: 'Discriminator value: observe'
            aiProviderId:
              type: string
            instruction:
              type: string
            metadata:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingObserveMetadata
            model:
              type: string
            selector:
              type: string
            target:
              $ref: >-
                #/components/schemas/RuntimeInvocationCreateRequestDiscriminatorMappingObserveTarget
            temperature:
              type: number
              format: double
            timeoutMs:
              type: integer
          required:
            - action
            - instruction
          description: observe variant
        - type: object
          properties:
            action:
              type: string
              enum:
                - solveCaptcha
            metadata:
              $ref: '#/components/schemas/SolveCaptchaRequestMetadata'
            target:
              $ref: '#/components/schemas/SolveCaptchaRequestTarget'
            timeoutMs:
              type: integer
          required:
            - action
          description: solveCaptcha variant
        - type: object
          properties:
            action:
              type: string
              enum:
                - stagehandAgent
            aiProviderId:
              type: string
            executionAiProviderId:
              type: string
            files:
              type: array
              items:
                $ref: '#/components/schemas/StagehandAgentRequestFilesItems'
            highlightCursor:
              type: boolean
            instruction:
              type: string
            maxSteps:
              type: integer
            metadata:
              $ref: '#/components/schemas/StagehandAgentRequestMetadata'
            model:
              type: string
            outputSchema:
              type: object
              additionalProperties:
                description: Any type
            systemPrompt:
              type: string
            target:
              $ref: '#/components/schemas/StagehandAgentRequestTarget'
            temperature:
              type: number
              format: double
            timeoutMs:
              type: integer
            toolIds:
              type: array
              items:
                type: string
                format: uuid
            toolsetId:
              type: string
              format: uuid
            variables:
              $ref: '#/components/schemas/StagehandAgentRequestVariables'
          required:
            - action
            - instruction
          description: stagehandAgent variant
      discriminator:
        propertyName: action
      title: RuntimeInvocationCreateRequest
    InvocationAction:
      type: string
      enum:
        - act
        - observe
        - extract
        - browserUse
        - stagehandAgent
        - solveCaptcha
      title: InvocationAction
    InvocationErrorCode:
      type: string
      enum:
        - invocation.failed
        - invocation.cancelled
        - invocation.timed_out
        - invocation.dispatch_preparation_failed
        - invocation.dispatch_unavailable
        - invocation.captcha_solve_failed
        - invocation.output_validation_failed
        - invocation.stagehand_failed
        - invocation.stagehand_incomplete
        - invocation.browser_use_failed
        - invocation.browser_use_interrupted
        - invocation.browser_use_incomplete
      description: >-
        Stable invocation error identifier for programmatic handling.

        `invocation.failed`: generic invocation failure.

        `invocation.cancelled`: invocation was cancelled before completion.

        `invocation.timed_out`: invocation exceeded its timeout.

        `invocation.dispatch_preparation_failed`: server could not prepare the
        invocation dispatch request.

        `invocation.dispatch_unavailable`: server could not dispatch the
        prepared invocation.

        `invocation.captcha_solve_failed`: CAPTCHA solving failed.

        `invocation.output_validation_failed`: produced output did not match the
        requested output schema.

        `invocation.stagehand_failed`: Stagehand returned a failure.

        `invocation.stagehand_incomplete`: Stagehand agent stopped before
        completing the task.

        `invocation.browser_use_failed`: Browser-use returned a failure.

        `invocation.browser_use_interrupted`: Browser-use was interrupted before
        completion.

        `invocation.browser_use_incomplete`: Browser-use stopped before
        completing the task.
      title: InvocationErrorCode
    InvocationError:
      type: object
      properties:
        code:
          $ref: '#/components/schemas/InvocationErrorCode'
          description: >-
            Stable invocation error identifier for programmatic handling.

            `invocation.failed`: generic invocation failure.

            `invocation.cancelled`: invocation was cancelled before completion.

            `invocation.timed_out`: invocation exceeded its timeout.

            `invocation.dispatch_preparation_failed`: server could not prepare
            the invocation dispatch request.

            `invocation.dispatch_unavailable`: server could not dispatch the
            prepared invocation.

            `invocation.captcha_solve_failed`: CAPTCHA solving failed.

            `invocation.output_validation_failed`: produced output did not match
            the requested output schema.

            `invocation.stagehand_failed`: Stagehand returned a failure.

            `invocation.stagehand_incomplete`: Stagehand agent stopped before
            completing the task.

            `invocation.browser_use_failed`: Browser-use returned a failure.

            `invocation.browser_use_interrupted`: Browser-use was interrupted
            before completion.

            `invocation.browser_use_incomplete`: Browser-use stopped before
            completing the task.
        details:
          type: object
          additionalProperties:
            description: Any type
          description: Action-specific structured context. Use `code` for branching.
        message:
          type: string
          description: Human-readable summary of why the invocation failed.
      required:
        - code
        - message
      title: InvocationError
    JsonValue:
      description: Any type
      title: JsonValue
    InvocationStatus:
      type: string
      enum:
        - queued
        - dispatching
        - running
        - cancelling
        - succeeded
        - failed
        - cancelled
        - timed_out
      title: InvocationStatus
    Invocation:
      type: object
      properties:
        action:
          $ref: '#/components/schemas/InvocationAction'
        createdAt:
          type: string
        durationMs:
          type:
            - integer
            - 'null'
        error:
          oneOf:
            - $ref: '#/components/schemas/InvocationError'
            - type: 'null'
        finishedAt:
          type:
            - string
            - 'null'
        id:
          type: string
          format: uuid
        output:
          $ref: '#/components/schemas/JsonValue'
        runId:
          type: string
          format: uuid
        runtimeId:
          type: string
          format: uuid
        startedAt:
          type:
            - string
            - 'null'
        status:
          $ref: '#/components/schemas/InvocationStatus'
      required:
        - action
        - createdAt
        - id
        - runId
        - runtimeId
        - status
      title: Invocation
    ErrorResponseReasonClass:
      type: string
      enum:
        - invalid_input
        - unauthorized
        - capability_denied
        - capability_limit_exceeded
        - rate_limited
        - not_found
        - conflict
        - upstream
        - server
      description: Stable public error category for programmatic branching.
      title: ErrorResponseReasonClass
    ErrorResponse:
      type: object
      properties:
        code:
          type: string
          description: >-
            Stable, dot-namespaced error code, e.g. "runtime.not_found" or
            "request.invalid".
        details:
          type: object
          additionalProperties:
            description: Any type
          description: >-
            Resource-specific structured context. Use `code` and `reasonClass`
            for branching.
        error:
          type: string
        hint:
          type: string
          description: Optional next action for recoverable errors, e.g. "retry after 2s".
        reasonClass:
          $ref: '#/components/schemas/ErrorResponseReasonClass'
          description: Stable public error category for programmatic branching.
        requestId:
          type: string
      required:
        - code
        - error
      title: ErrorResponse
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Use Bearer <api-key>.

```

## Examples



**Request**

```json
{
  "action": "act"
}
```

**Response**

```json
{
  "action": "act",
  "createdAt": "2024-06-01T12:00:00Z",
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "runId": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "runtimeId": "1c9e6679-7425-40de-944b-e07fc1f90ae7",
  "status": "queued",
  "durationMs": 1500,
  "error": {
    "code": "invocation.failed",
    "message": "The invocation failed due to an unexpected error.",
    "details": {}
  },
  "finishedAt": "2024-06-01T12:00:01Z",
  "output": null,
  "startedAt": "2024-06-01T11:59:59Z"
}
```

**SDK Code**

```python
import requests

url = "https://api.bctrl.ai/v1/runtimes/runtimeId/invocations"

payload = { "action": "act" }
headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```

```javascript
const url = 'https://api.bctrl.ai/v1/runtimes/runtimeId/invocations';
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: '{"action":"act"}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://api.bctrl.ai/v1/runtimes/runtimeId/invocations"

	payload := strings.NewReader("{\n  \"action\": \"act\"\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("Authorization", "Bearer <token>")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.bctrl.ai/v1/runtimes/runtimeId/invocations")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"action\": \"act\"\n}"

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://api.bctrl.ai/v1/runtimes/runtimeId/invocations")
  .header("Authorization", "Bearer <token>")
  .header("Content-Type", "application/json")
  .body("{\n  \"action\": \"act\"\n}")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://api.bctrl.ai/v1/runtimes/runtimeId/invocations', [
  'body' => '{
  "action": "act"
}',
  'headers' => [
    'Authorization' => 'Bearer <token>',
    'Content-Type' => 'application/json',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.bctrl.ai/v1/runtimes/runtimeId/invocations");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer <token>");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"action\": \"act\"\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = [
  "Authorization": "Bearer <token>",
  "Content-Type": "application/json"
]
let parameters = ["action": "act"] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://api.bctrl.ai/v1/runtimes/runtimeId/invocations")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```