Query API
Execute an ad-hoc query (simple)
This API endpoint returns bindings for the variables in the query.
For more complex JSON queries, use POST /v1/query instead.
get/v1/query
Query parameters
qstring required
The URL-encoded ad-hoc query to execute.
prettyboolean
If true, response will be in a human-readable format.
explainstring
If set to full, response will include query explanations in addition to the result.
metricsboolean
If true, compiler performance metrics will be returned in the response.
Response
Success
Example response
{
"result": [
{
"id": "example2",
"raw": "package opa.examples\\n\\nimport data.servers\\n\\nviolations[server] {\\n\\tserver = servers[_]\\n\\tserver.protocols[_] = \\\"http\\\"\\n\\tpublic_servers[server]\\n}\\n",
"ast": {
"package": {
"path": [
{
"type": "import",
"value": "data.opa.example"
}
]
},
"rules": [
{
"head": {
"name": "violations",
"key": {
"type": "var",
"value": "$0"
}
},
"body": [
{
"index": 1,
"terms": [
{
"type": "var"
}
]
}
]
}
]
}
}
],
"metrics": {
"timer_rego_input_parse_ns": 69994,
"timer_rego_query_parse_ns": 4096,
"timer_rego_query_compile_ns": 4096,
"timer_rego_query_eval_ns": 69994,
"timer_rego_module_parse_ns": 12345,
"timer_rego_module_compile_ns": 69994,
"timer_server_handler_ns": 631000,
"timer_server_read_bytes_ns": 631000,
"timer_query_compile_stage_build_comprehension_index_ns": 43000,
"timer_query_compile_stage_check_safety_ns": 852000,
"timer_query_compile_stage_check_types_ns": 577000,
"timer_query_compile_stage_check_undefined_funcs_ns": 426000,
"timer_query_compile_stage_check_unsafe_builtins_ns": 14000,
"timer_query_compile_stage_resolve_refs_ns": 3000,
"timer_query_compile_stage_rewrite_comprehension_terms_ns": 329000,
"timer_query_compile_stage_rewrite_dynamic_terms_ns": 27000,
"timer_query_compile_stage_rewrite_expr_terms_ns": 40000,
"timer_query_compile_stage_rewrite_local_vars_ns": 187000,
"timer_query_compile_stage_rewrite_to_capture_value_ns": 1178000,
"timer_query_compile_stage_rewrite_with_values_ns": 23000
},
"explanation": [
{
"op": "enter",
"type": "expr",
"node": {
"terms": [
{
"type": "var",
"value": "$term1"
}
]
}
}
]
}