POST
/
v1
/
scenarios
/
{id}
import Runloop from '@runloop/api-client';

const client = new Runloop({
  bearerToken: process.env['RUNLOOP_API_KEY'], // This is the default and can be omitted
});

async function main() {
  const scenarioView = await client.scenarios.update('id', {
    input_context: { problem_statement: 'problem_statement' },
    is_public: true,
    name: 'name',
    scoring_contract: {
      scoring_function_parameters: [
        {
          name: 'name',
          scorer: { pattern: 'pattern', search_directory: 'search_directory', type: 'ast_grep_scorer' },
          weight: 0,
        },
      ],
    },
  });

  console.log(scenarioView.id);
}

main();
{
  "id": "<string>",
  "name": "<string>",
  "environment": {
    "blueprint_id": "<string>",
    "snapshot_id": "<string>",
    "prebuilt_id": "<string>",
    "launch_parameters": {
      "launch_commands": [
        "<string>"
      ],
      "resource_size_request": "X_SMALL",
      "keep_alive_time_seconds": 123,
      "available_ports": [
        123
      ],
      "after_idle": {
        "idle_time_seconds": 123,
        "on_idle": "shutdown"
      },
      "custom_cpu_cores": 123,
      "custom_gb_memory": 123,
      "architecture": "x86_64",
      "user_parameters": {
        "username": "<string>",
        "uid": 123
      }
    },
    "working_directory": "<string>"
  },
  "input_context": {
    "problem_statement": "<string>",
    "additional_context": {}
  },
  "scoring_contract": {
    "scoring_function_parameters": [
      {
        "name": "<string>",
        "scorer": {
          "lang": "<string>",
          "search_directory": "<string>",
          "pattern": "<string>",
          "type": "ast_grep_scorer"
        },
        "weight": 123
      }
    ]
  },
  "metadata": {},
  "reference_output": "<string>",
  "is_public": true
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

The Scenario ID.

Body

application/json

Response

200 - application/json
OK

A ScenarioDefinitionView represents a repeatable AI coding evaluation test, complete with initial environment and scoring contract.