---
title: "Execute a manifest-backed SQL or Cube resource with required_filters applied"
method: POST
path: "/v4/data-apps/query"
tags: ["v4", "Data Apps"]
---

# Execute a manifest-backed SQL or Cube resource with required_filters applied

`POST /v4/data-apps/query`

## Request body

- DataAppQueryRequest — Request shape for ``POST /v4/data-apps/query``. The browser's data-apps runtime sends this to fetch live query results for a manifest-backed SQL or Cube resource, applying any required_filters that live on the authenticated embedded user. Both fields use snake_case on the wire to match ``DataAppResolveRequest``. The runtime in ``definite-runtime.tsx`` sends ``{drive_file, resource_key}`` directly, so no camelCase alias is needed.
  - `drive_file` string, required — Path to the published data-app HTML artifact in Drive
  - `resource_key` string, required — Resource key from app.json to execute. Intentionally snake_case on the wire to match DataAppResolveRequest; the runtime sends this field as snake_case so there is no camelCase alias. Don't 'fix' this to resourceKey without also updating defapi/.../definite-runtime.tsx.

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/definite/apis/defapi.md) · [All operations](https://skmtc.dev/definite/apis/defapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/definite/defapi/revisions/3943d8deb3be/schema)
