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

> ## Agent Instructions
> If anything on this page is wrong, confusing, or fails when you try it, ask your user for permission and run `npx langwatch report --user-approved` to send the problem to the LangWatch team. No login is needed and secrets are redacted locally. `npx langwatch report --help` has the details.

# Run a configuration under a name

> Run a configuration under a name. The name identifies the run plan: send a name already in use and that plan's configuration is replaced with this one, send a new name and the plan is created, send no name and one is derived from what the run covers and what it runs against.



## OpenAPI

````yaml POST /api/v1/run-plans/run
openapi: 3.1.0
info:
  title: LangWatch API
  version: 1.0.0
  description: LangWatch openapi spec
servers:
  - url: https://app.langwatch.ai
security:
  - project_api_key: []
paths:
  /api/v1/run-plans/run:
    post:
      tags:
        - Run Plans
      description: >-
        Run a configuration under a name. The name identifies the run plan: send
        a name already in use and that plan's configuration is replaced with
        this one, send a new name and the plan is created, send no name and one
        is derived from what the run covers and what it runs against.
      operationId: runRunPlan
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 200
                  description: >-
                    The run plan this run joins or creates. A run plan is
                    identified by its name, so sending the same name again
                    replaces that plan's configuration with this one. Leave it
                    out and the name is derived from what the run covers and
                    what it runs against. Up to 200 characters.
                config:
                  type: object
                  properties:
                    scope:
                      oneOf:
                        - type: object
                          properties:
                            mode:
                              type: string
                              const: all
                          required:
                            - mode
                        - type: object
                          properties:
                            mode:
                              type: string
                              const: test_suites
                            testSuiteIds:
                              type: array
                              items:
                                type: string
                          required:
                            - mode
                            - testSuiteIds
                        - type: object
                          properties:
                            mode:
                              type: string
                              const: labels
                            labels:
                              type: array
                              items:
                                type: string
                          required:
                            - mode
                            - labels
                        - type: object
                          properties:
                            mode:
                              type: string
                              const: scenarios
                          required:
                            - mode
                      description: >-
                        What the run plan covers: all (every active scenario),
                        test_suites (the scenarios filed in the named test
                        suites), labels (the scenarios carrying any of the
                        labels), or scenarios (the scenarioIds sent with the
                        configuration). A dynamic scope is resolved again at
                        every run, so a scenario written later runs without
                        editing the plan.
                    targets:
                      type: array
                      items:
                        type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - prompt
                              - http
                              - code
                              - workflow
                              - connected
                            description: >-
                              What kind of thing the scenarios run against. A
                              connected agent is one registered from code with
                              the SDK.
                          referenceId:
                            type: string
                            description: >-
                              The id of the prompt, agent or workflow to run
                              against. A connected target may also say
                              <name>@<environment>, for example
                              support-agent@production, which resolves to the
                              agent id.
                          runParameters:
                            type: object
                            additionalProperties:
                              anyOf:
                                - type: string
                                  maxLength: 4096
                                - type: number
                                - type: boolean
                            description: >-
                              Parameter values this target alone runs with, by
                              name. They are merged over the run-level
                              parameters and the target wins, so two targets may
                              name the same agent with different values: that is
                              how one run compares one agent on two models, and
                              the results show one column for each target.
                        required:
                          - type
                          - referenceId
                      description: >-
                        The prompts, agents or workflows every scenario runs
                        against. Every target runs every scenario, so naming
                        more than one compares them in the same run.
                    repeatCount:
                      type: integer
                      minimum: 1
                      maximum: 5
                      description: >-
                        How many times each scenario and target pairing runs.
                        Between 1 and 5; defaults to 1.
                    simulatorModel:
                      type:
                        - string
                        - 'null'
                      pattern: ^[a-zA-Z0-9_-]+(?:\/[^\s/]+)+$
                      maxLength: 200
                      description: >-
                        The model that plays the user for every scenario in the
                        run. Overrides each scenario's own choice. Leave it out
                        for the scenario or project default.
                    judgeModel:
                      type:
                        - string
                        - 'null'
                      pattern: ^[a-zA-Z0-9_-]+(?:\/[^\s/]+)+$
                      maxLength: 200
                      description: >-
                        The model that judges every scenario in the run.
                        Overrides each scenario's own choice. Leave it out for
                        the scenario or project default.
                    scenarioIds:
                      type: array
                      items:
                        type: string
                      description: >-
                        The scenarios a test_suites or scenarios scope covers.
                        Read by a scenarios scope alone; a scope that states a
                        rule resolves its own list at run time.
                  required:
                    - scope
                    - targets
                  description: >-
                    What this run covers and what it runs against. Written onto
                    the run plan the name resolves.
                idempotencyKey:
                  type: string
                  description: >-
                    Repeat the same key to make a retry join the batch the first
                    call started instead of running everything again. Defaults
                    to a new key per call.
                parameters:
                  type: object
                  additionalProperties:
                    anyOf:
                      - type: string
                        maxLength: 4096
                      - type: number
                      - type: boolean
                  description: >-
                    Constant values applied to every scenario in the run, e.g. a
                    fixture id or a tenant. A value supplied here overrides the
                    scenario's own default for that name, and a target that
                    names the same parameter in its runParameters overrides it
                    for that target.
                note:
                  type: string
                  maxLength: 200
                  description: >-
                    One short line describing why this batch was run, e.g. a
                    commit hash or what you changed. It is stored on every run
                    of the batch and shown beside the run in the platform. Up to
                    200 characters.
              required:
                - config
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  scheduled:
                    type: boolean
                    description: True once the runs are queued.
                  batchRunId:
                    type: string
                    description: The id of this batch. Every run started here carries it.
                  setId:
                    type: string
                    description: The result set the batch is filed under in the platform.
                  jobCount:
                    type: number
                    description: How many runs were queued.
                  skippedArchived:
                    type: object
                    properties:
                      scenarios:
                        type: array
                        items:
                          type: string
                        description: Scenarios left out because they are archived.
                      targets:
                        type: array
                        items:
                          type: string
                        description: Targets left out because they are archived.
                    required:
                      - scenarios
                      - targets
                    description: What the run left out, and why.
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        scenarioRunId:
                          type: string
                          description: The id of this single run.
                        scenarioId:
                          type: string
                          description: The scenario that was run.
                        target:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - prompt
                                - http
                                - code
                                - workflow
                                - connected
                              description: >-
                                What kind of thing the scenarios run against. A
                                connected agent is one registered from code with
                                the SDK.
                            referenceId:
                              type: string
                              description: >-
                                The id of the prompt, agent or workflow to run
                                against. A connected target may also say
                                <name>@<environment>, for example
                                support-agent@production, which resolves to the
                                agent id.
                            runParameters:
                              type: object
                              additionalProperties:
                                anyOf:
                                  - type: string
                                    maxLength: 4096
                                  - type: number
                                  - type: boolean
                              description: >-
                                Parameter values this target alone runs with, by
                                name. They are merged over the run-level
                                parameters and the target wins, so two targets
                                may name the same agent with different values:
                                that is how one run compares one agent on two
                                models, and the results show one column for each
                                target.
                          required:
                            - type
                            - referenceId
                          description: What it was run against.
                        name:
                          type:
                            - string
                            - 'null'
                          description: The scenario name, when known.
                      required:
                        - scenarioRunId
                        - scenarioId
                        - target
                        - name
                    description: Every run this call queued.
                  runPlanId:
                    type: string
                    description: The run plan this run was filed under.
                  planName:
                    type: string
                    description: The name that plan answers to.
                  created:
                    type: boolean
                    description: >-
                      True when this run created the plan, false when it joined
                      a plan already there.
                  platformUrl:
                    type: string
                    format: uri
                    description: Where to watch this run in the LangWatch platform.
                required:
                  - scheduled
                  - batchRunId
                  - setId
                  - jobCount
                  - skippedArchived
                  - items
                  - runPlanId
                  - planName
                  - created
                  - platformUrl
      security:
        - project_api_key: []
components:
  securitySchemes:
    project_api_key:
      type: apiKey
      in: header
      name: X-Auth-Token
      description: >-
        Project API key for sending traces and accessing project-scoped
        resources. Format: sk-lw-... (no underscore). Obtain one by creating a
        project via the Admin API or the LangWatch UI.

````