# GetTablesAndKeys method

Returns:

* The list of tables in an app and the fields inside each table.
* The list of derived fields.
* The list of key fields.

## Parameters

| Name | Description | Mandatory | Type |
| --- | --- | --- | --- |
| qWindowSize | Size of the window that is used to display the results. | Yes | [Size](https://help.qlik.com/en-US/sense-developer/May2026/Subsystems/EngineJSONAPI/Content/models-size.htm) |
| qNullSize |  | Yes | [Size](https://help.qlik.com/en-US/sense-developer/May2026/Subsystems/EngineJSONAPI/Content/models-size.htm) |
| qCellHeight | Height of a cell in a table in pixels. | Yes | Integer |
| qSyntheticMode | One of:<br><br><ul><li><em>true</em> for internal table viewer:Shows a more detailed view on how the Qlik engine defines the relations between fields and the quality of the keys.</li><li><em>false</em> for source table viewer:Shows the natural relation between fields without reference to synthetic keys and resultant linking synthetic tables. Instead synthetic keys are represented by multiple connectors between tables.</li></ul> | Yes | Boolean |
| qIncludeSysVars | If set to true, the system variables are included. | Yes | Boolean |
| qIncludeProfiling | If set to true, profiling information is included. | No | Boolean |

## Returns

| Name | Description | Type |
| --- | --- | --- |
| qtr | List of tables. | Array of [TableRecord](https://help.qlik.com/en-US/sense-developer/May2026/Subsystems/EngineJSONAPI/Content/models-tablerecord.htm) |
| qk | List of keys. | Array of [SourceKeyRecord](https://help.qlik.com/en-US/sense-developer/May2026/Subsystems/EngineJSONAPI/Content/models-sourcekeyrecord.htm) |