---
title: "Batch create ProcedureRunPlanCondition"
method: POST
path: "/api/v3/procedure-run-plan-condition:batch-create"
tags: ["Procedure Run Plan Condition"]
---

# Batch create ProcedureRunPlanCondition

`POST /api/v3/procedure-run-plan-condition:batch-create`

## Request

- Base URL: `https://{tenant_name}.benchling.com`
- URL: `https://{tenant_name}.benchling.com/api/v3/procedure-run-plan-condition:batch-create`
- Auth: HTTP bearer

Batch create ProcedureRunPlanCondition synchronously in one transaction. Maximum 25 items per request.

## Headers

- `EARLY-ACCESS` string

## Request body

- object
  - `items` CreateProcedureRunPlanConditionInput[], required
    - `description` string, required: Description of the condition. Must not exceed 255 characters.
    - `methodParametersPlan` MethodParametersPlanInput, required
      - `dataParameterValues` DataParameterValuePlanInput[], required: Planned values for data parameters in this method.
        - `parameterId` string, required: The ID of the procedure parameter version. Format: `schver_XXXXXXXX`.
        - `value` DataParameterValuePlanInputValue, required: A dict with the shape {"value": <TypedValue | null>}. The inner TypedValue must match the referenced parameter's configured data type. Supported types are ft_float, ft_string, and ft_datetime (e.g., {"type": "ft_float", "floatValue": 1.5, "value": "1.5"} for numeric, {"type": "ft_string", "value": "text"} for text, or {"type": "ft_datetime", ...} for datetime). For plate-map-confirmed parameters with multiple setpoints, send one DataParameterValuePlanInput per setpoint, each with a scalar TypedValue.
      - `equipmentValues` EquipmentValuePlanInput[], required: Planned values for equipment parameters in this method.
        - `equipmentId` string, required: The ID of the equipment parameter version. Format: `schver_XXXXXXXX`.
        - `value` EquipmentValuePlanInputValue, required: A dict with the shape {"value": {"equipment": <TypedValue | null>}}. The equipment TypedValue must match the referenced equipment parameter's configured type: {"type": "ft_string", "value": "..."} for text inputs, or {"type": "ft_file_link", "targetFiles": [...]} for entity link inputs.
      - `materialInputValues` MaterialInputValuePlanInput[], required: Planned values for material inputs in this method.
        - `materialInputId` string, required: The ID of the material input parameter version. Format: `schver_XXXXXXXX`.
        - `value` MaterialInputValuePlanInputValue, required: A dict with the shape {"value": {"material": <TypedValue | null>, "amount": <TypedValue | null>}}. The material TypedValue must match the referenced material input's configured type: {"type": "ft_string", "value": "..."} for text inputs, or {"type": "ft_file_link", "targetFiles": [...]} for entity link inputs. The amount TypedValue is always ft_float (e.g., {"type": "ft_float", "floatValue": 1.0, "value": "1.0"}). Either sub-field may be null independently.
    - `name` string, required: Display name of the condition. Must not be empty and must not exceed 255 characters.
    - `procedureRunPlanId` string, required: The ID of the parent run plan. Format: `prp_XXXXXXXX`.
    - `replicates` ProcedureRunPlanConditionReplicateInput[], required: The replicates for this condition. The plan's total number of replicates must not exceed 500, and `replicateNumber` values must be consecutive starting from 1.
      - `replicateNumber` integer, required: The 1-indexed replicate number. Must be >= 1. Replicate numbers must be consecutive starting from 1 (e.g., 1, 2, 3).
      - `sourcePmeiIds` string[]: IDs of source procedure method execution instances (PMEIs) for unit operation linking. Format: `pcmei_XXXXXXXX`. Used to connect this replicate's inputs to outputs from a previous run. IDs must be unique, and a replicate can reference at most 100 source PMEIs.
    - `templateMethodVersionId` string, required: The ID of the procedure method definition version (PMDV) this condition belongs to. Format: `pcmdv_XXXXXXXX`. Must reference a method in the parent run plan's flowchart.

## Response `201`

Created

- ProcedureRunPlanConditionBatchcreateResponse201
  - `items` ProcedureRunPlanCondition[], required
    - `__typename` string
    - `createdAt` string, datetime
    - `description` string: The user-defined description of the condition.
    - `id` string
    - `methodParametersPlan` MethodParametersPlan: Contains the planned parameter values for a single unit operation (method) within a `ProcedureRunPlanCondition`. Links to a `ProcedureMethodDefinitionVersion` via `templateMethodVersion` to identify which method these values apply to. Parameter values are organized by category: `dataParameterValues` for data fields like numbers or text, `materialInputValues` for sample or reagent inputs, and `equipmentValues` for equipment assignments. When the parent `ProcedureRunPlan` is promoted to a `ProcedureRun`, these planned values become the starting values in the resulting `ProcedureMethodExecutionInstance`.
      - `__typename` string
      - `dataParameterValues` DataParameterValuePlan[]: Planned values for data parameters keyed by parameter identifiers.
        - `__typename` string
        - `parameterId` string
        - `value` DataParameterValuePlanValue
      - `equipmentValues` EquipmentValuePlan[]: Planned values for equipment keyed by equipment identifiers.
        - `__typename` string
        - `equipmentId` string
        - `value` EquipmentValuePlanValue
      - `materialInputValues` MaterialInputValuePlan[]: Planned values for material inputs keyed by input identifiers.
        - `__typename` string
        - `materialInputId` string
        - `value` MaterialInputValuePlanValue
    - `modifiedAt` string, datetime
    - `name` string: The user-defined name of the condition.
    - `position` integer: The display order of the condition within the run.
    - `procedureRunPlan` ProcedureRunPlanRef
      - `__typename` string
      - `id` string, api_id
    - `replicates` ProcedureRunPlanConditionReplicate[]: Replicate information for this condition.
      - `__typename` string
      - `procedureRunPlanCondition` ProcedureRunPlanConditionRef
        - `__typename` string
        - `id` string, api_id
      - `replicateNumber` integer: The replicate number.
      - `sourcePmeiIds` string[]: Source PMEI IDs for this replicate. Support unit operation linking to future-pmeis when executing the draft procedure run.
    - `templateMethodVersion` ProcedureMethodDefinitionVersionRef
      - `__typename` string
      - `id` string, api_id

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/benchling/apis/benchling-api.md) - [All operations](https://skmtc.dev/benchling/apis/benchling-api/llms.txt) - [OpenAPI document](https://skmtc.dev/benchling/apis/benchling-api/revisions/c9f087b98b8b?raw)
