> ## Documentation Index
> Fetch the complete documentation index at: https://cubed3-docs-cub-4941.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# GraphQL API reference

> GraphQL API supports the following requests and parameters.

[GraphQL API][ref-graphql-api] supports the following requests and parameters.

## `cube`

```graphql theme={null}
query {
  cube [([cubeQueryArgs])] {
    <cubeName> [([cubeArgs])] {
      <cubeMember>
    }
  }
}
```

| Key | Schema | Description |
| - | - | - |
| `cubeQueryArgs` | [`CubeQueryArgs`](#cubequeryargs) | Options that apply to the entire query |
| `cubeArgs` | [`CubeArgs`](#cubeargs) | Options that apply only to a specific cube |

## Response extensions

In addition to the `data` field, the GraphQL response includes an `extensions`
object with query metadata:

* `annotation` — metadata for the query members (titles, types), the same as the
  `annotation` field of the [REST API][ref-rest-api] response.
* `lastRefreshTime` — an ISO 8601 timestamp indicating when the data was last
  refreshed.
* `usedPreAggregations` — the pre-aggregations the result was served from, the
  same as the `usedPreAggregations` field of the [REST API][ref-rest-api]
  response. Absent when the query hit no pre-aggregation.

## `CubeQueryArgs`

* **`where` ([`RootWhereInput`](#rootwhereinput)):** Represents a SQL `WHERE` clause.
* **`limit` (`Int`):** A [row limit][ref-row-limit] for your query.
* **`offset` (`Int`):** The number of initial rows to be skipped for your query. The default value is `0`.
* **`timezone` (`String`):** The [time zone][ref-time-zone] for your query. You can set the
  desired time zone in the [TZ Database Name](https://en.wikipedia.org/wiki/Tz_database)
  format, e.g., `America/Los_Angeles`.
* **`ungrouped` (`Boolean`):** If set to `true`, Cube will run an
  [ungrouped query][ref-ungrouped-query].

## `RootWhereInput`

| Key | Schema | Description |
| - | - | - |
| `AND` | [`[RootWhereInput!]`](#rootwhereinput) | |
| `OR` | [`[RootWhereInput!]`](#rootwhereinput) | |
| `<cubeName>` | [`CubeWhereInput`](#cubewhereinput) | |

## `CubeArgs`

| Key | Schema | Description |
| - | - | - |
| `where` | [`CubeWhereInput`](#cubewhereinput) | |
| `orderBy` | `CubeOrderByInput` | |

## `CubeWhereInput`

| Key | Schema | Description |
| - | - | - |
| `AND` | [`[RootWhereInput!]`](#rootwhereinput) | |
| `OR` | [`[RootWhereInput!]`](#rootwhereinput) | |
| `<cubeMember>` | [`Filter`](#filter) | |

## `CubeOrderByInput`

| Key | Schema | Description |
| - | - | - |
| `<cubeMember>` | [`OrderBy`](#orderby) | |

## `Filter`

[`DateTimeFilter`](#datetimefilter) | [`FloatFilter`](#floatfilter) |
[`StringFilter`](#stringfilter)

## `DateTimeFilter`

| Key | Schema | Description |
| - | - | - |
| `equals` | `String` | |
| `notEquals` | `String` | |
| `in` | `[String]` | |
| `notIn` | `[String]` | |
| `inDateRange` | `[String]` | |
| `notInDateRange` | `[String]` | |
| `beforeDate` | `String` | |
| `afterDate` | `String` | |
| `set` | `Boolean` | |

## `FloatFilter`

| Key | Schema | Description |
| - | - | - |
| `equals` | `Float` | |
| `notEquals` | `Float` | |
| `in` | `[Float]` | |
| `notIn` | `[Float]` | |
| `set` | `Boolean` | |

## `StringFilter`

| Key | Schema | Description |
| - | - | - |
| `equals` | `String` | |
| `notEquals` | `String` | |
| `in` | `[String]` | |
| `notIn` | `[String]` | |
| `contains` | `String` | |
| `notContains` | `String` | |
| `set` | `Boolean` | |

## `OrderBy`

`asc` | `desc`

[ref-graphql-api]: /reference/core-data-apis/graphql-api

[ref-rest-api]: /reference/core-data-apis/rest-api/reference

[ref-row-limit]: /reference/core-data-apis/queries#row-limit

[ref-time-zone]: /reference/core-data-apis/queries#time-zone

[ref-ungrouped-query]: /reference/core-data-apis/queries#ungrouped-query
