> ## Documentation Index
> Fetch the complete documentation index at: https://docs.less.tech/llms.txt
> Use this file to discover all available pages before exploring further.

# Execute asset

> Queue a run for a source, model, or orchestration

Starts a job for a **source**, **model**, or **orchestration**. Other asset types return an error. Send **`jobSource`** (for example `API` or `Manual`) and optional **`parameters`**; the job is always attributed to the authenticated user.


## OpenAPI

````yaml api-reference/openapi.json POST /api/public/v1/assets/{assetId}/execute
openapi: 3.0.0
info:
  title: Less Public API
  version: 1.0.0
  description: >-
    Integrator-facing JSON API. All paths are under `/api/public/v1` and match
    the route handlers in the Less webapp (`apps/webapp/src/app/api/public/v1`).
    Authenticate with `Authorization: Bearer <api-token>`.
servers:
  - url: https://{BaseURL}
    variables:
      BaseURL:
        default: app.less.tech
        description: >-
          Your workspace host (hostname only, no scheme or path). Defaults to
          app.less.tech; replace with your workspace host if different.
security:
  - bearerAuth: []
paths:
  /api/public/v1/assets/{assetId}/execute:
    post:
      tags:
        - Assets
        - Execute
      summary: Execute asset
      description: >-
        Queues a run for a **source**, **model**, or **orchestration** asset
        only. Other asset types return `execution_not_allowed`. The job's
        `job_source_id` is always the authenticated user's id (do not send it in
        the body).
      parameters:
        - name: assetId
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PublicExecuteAssetRequest'
      responses:
        '201':
          description: Job created and queued.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/PublicJobQueued'
                required:
                  - data
        '400':
          description: Invalid body or asset type cannot be executed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiErrorBody'
        '401':
          description: Unauthorized
        '404':
          description: Asset not found or no access
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiErrorBody'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiErrorBody'
components:
  schemas:
    PublicExecuteAssetRequest:
      type: object
      properties:
        jobSource:
          type: string
          description: Origin of the run (e.g. Manual, API).
        parameters:
          type: object
          additionalProperties: true
          description: Optional parameters passed to the job.
      required:
        - jobSource
    PublicJobQueued:
      type: object
      properties:
        jobId:
          type: string
          format: uuid
        status:
          type: string
        assetId:
          type: string
          format: uuid
        jobSource:
          type: string
        jobSourceId:
          type: string
          nullable: true
          description: For this API, the authenticated user's id.
        startedAt:
          type: string
          nullable: true
        finishedAt:
          type: string
          nullable: true
      required:
        - jobId
        - status
        - assetId
        - jobSource
        - jobSourceId
        - startedAt
        - finishedAt
    PublicApiErrorBody:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
          required:
            - code
            - message
      required:
        - error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````