{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/getoneprofile-ai/json-schema/getoneprofile-ai-chat-attachment-import-request-schema-schema.json",
  "title": "ChatAttachmentImportRequestSchema",
  "description": "Build a table out of an attached file.",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/getoneprofile-ai-assistant-api-openapi.yml#/components/schemas/ChatAttachmentImportRequestSchema",
  "properties": {
    "header_row": {
      "default": 0,
      "description": "For a file whose first row is a title: the row that holds the column names, numbered as a page of the file's rows numbers them (1 is the first row under the title). The table's columns are named from it and only the rows below it are added. 0 keeps the first row as the header.",
      "minimum": 0.0,
      "title": "Header Row",
      "type": "integer"
    },
    "name": {
      "description": "What to call the table. Unique in the workspace.",
      "maxLength": 255,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    },
    "row_ranges": {
      "anyOf": [
        {
          "items": {
            "$ref": "#/$defs/ImportRowRangeSchema"
          },
          "maxItems": 1000,
          "minItems": 1,
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "description": "Only these rows, the way a print dialog picks pages, numbered as a page of the file's rows numbers them and as `header_row` is: 1 is the row at offset 0, the first under the file's first row, and every row holding any text counts, a row of placeholders like N/A included. So with `header_row` 2 the rows under the column names start at 3. A row the table gets no value from (only placeholders, or the column names and the rows above them) is left out. At most 100 ranges once merged. Omit for every row.",
      "title": "Row Ranges"
    }
  },
  "required": [
    "name"
  ],
  "type": "object",
  "$defs": {
    "ImportRowRangeSchema": {
      "description": "A run of the file's rows to import, both ends included.\n\nRows 21 to 30 are `{\"first\": 21, \"last\": 30}`, and one row is a range whose\nends are the same. The field that carries the ranges says how its rows are\nnumbered.",
      "properties": {
        "first": {
          "description": "The first row of the range, counted from 1.",
          "minimum": 1.0,
          "title": "First",
          "type": "integer"
        },
        "last": {
          "description": "The last row of the range; `first` for one row.",
          "minimum": 1.0,
          "title": "Last",
          "type": "integer"
        }
      },
      "required": [
        "first",
        "last"
      ],
      "title": "ImportRowRangeSchema",
      "type": "object"
    }
  }
}