# Schema

The schema in cQube is a json object which needs to be defined in a specific format. cQube expects a schema to validate the data file provided by the state team. The current cQube schema should be defined as follows.&#x20;

{​​&#x20;

&#x20;   "program": "string",&#x20;

&#x20;   "input": {​​&#x20;

&#x20;       "type": "object",&#x20;

&#x20;       "properties": {​​&#x20;

&#x20;           "column\_name": {​​&#x20;

&#x20;               "type": "string || number",&#x20;

&#x20;               "shouldnotnull": true&#x20;

&#x20;           }&#x20;

&#x20;       },&#x20;

&#x20;       "required": \[&#x20;

&#x20;           "column\_name"&#x20;

&#x20;       ]&#x20;

&#x20;   }&#x20;

}&#x20;

&#x20;<br>

The properties consist of the column names present in the data file. We can specify the type of the column. It currently supports two types: string and number. The shouldnotnull property indicates that null values are not allowed. The required key indicates that the column names specified inside an array are mandatory and should be present in the data file.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cqube.sunbird.org/use-cqube/getting-started-1/schema.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
