{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/beatapi/json-schema/beatapi-capability-run-result-schema.json",
  "title": "CapabilityRunResult",
  "description": "Sync data: the capability envelope (such as `social_data.call` or a web result); with `preview` its main list is in `items`. Text: `{object: text.result, model, status, output_text, usage, request_id}`. JEV: `{id, model, answers, usage}`. Async start and status (media, workflows, `data:web.research`): `{data: task, next}` with the task's `id` and `status`; a finished data task carries its result in `data.output`.",
  "x-generated": "2026-10-30",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/beatapi-openapi.json#/components/schemas/CapabilityRunResult",
  "type": "object",
  "additionalProperties": true,
  "properties": {
    "object": {
      "type": "string"
    },
    "id": {
      "type": "string",
      "description": "Task id for async kinds."
    },
    "status": {
      "type": "string",
      "description": "Task status: poll until `succeeded` or `failed`."
    },
    "request_id": {
      "type": "string",
      "description": "Pass to `operation: result` to fetch the stored result."
    },
    "output_text": {
      "type": "string",
      "description": "Text models only."
    },
    "answers": {
      "type": "object",
      "additionalProperties": true,
      "description": "JEV only."
    },
    "items": {
      "type": "array",
      "items": {},
      "description": "With `preview` or `items[]` fields: the elements of the result's main list."
    },
    "items_path": {
      "type": "string",
      "description": "Where the list sits in the full result, such as `data.data.items` or `results`."
    },
    "items_total": {
      "type": "integer",
      "description": "Elements in the full list."
    },
    "items_shown": {
      "type": "integer",
      "description": "Elements in `items`."
    },
    "truncated": {
      "type": "boolean",
      "description": "True when a preview cut the result."
    },
    "result_ref": {
      "type": "object",
      "description": "The stored full result, when a view left anything out.",
      "properties": {
        "request_id": {
          "type": "string",
          "description": "Pass to `operation: result`."
        },
        "expires_at": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "usage": {
      "type": "object",
      "additionalProperties": true
    },
    "data": {
      "description": "The result payload or the wrapped object."
    }
  }
}