---
title: "Get query optimization recommendations for a query"
method: POST
path: "/account/{account_id}/pg/query/optimize"
tags: ["Service:_PostgreSQL"]
---

# Get query optimization recommendations for a query

`POST /account/{account_id}/pg/query/optimize`

> This endpoint **may be changed or removed at any time**. Don't use it in production environments.

## Path parameters

- `account_id` string, required

## Request body

- PGAccountQueryOptimizeRequestBody — PGAccountQueryOptimizeRequestBody
  - `do_not_store` boolean — Do not store details
  - `flags` string[], required — Optimization flags
  - `pg_version` '18' | '17' | '16' | '15' | '14' | '13' | '12' | '11' | '10' | '9' | '8' | '7', required — An enumeration.
  - `query` string, required — Query
  - `schema_metadata` string — Schema metadata

## Response `200`

Response

- PGAccountQueryOptimizeResponse — PGAccountQueryOptimizeResponse
  - `optimize` object, required — Optimize
    - `existing_recommended_indexes` object[], required — Existing Recommended Indexes
      - `index_definition` string, required — Index definition
    - `index_recommendations` object[], required — Index Recommendations
      - `creation_cmd` string, required — Creation command
      - `table_name` string, required — Table name
    - `optimization_id` string — Optimization ID
    - `optimized_query` string, required — Optimized query in base64 format
    - `original_query` string, required — Original query in base64 format
    - `recommendations` object[], required — Recommendations
      - `bad_practice_sample` string, required — Bad practice sample
      - `best_practice_sample` string, required — Best practice sample
      - `description` string, required — Description
      - `fixable` boolean, required — Fixable
      - `line_number` integer, required — Line number
      - `priority` integer, required — Priority
      - `title` string, required — Title
      - `type` integer, required — Type

## Other responses

- `400` — Invalid request parameters
- `404` — Resource not found

---

[API](https://skmtc.net/aiven/apis/aiven-api-documentation.md) · [All operations](https://skmtc.net/aiven/apis/aiven-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/aiven/aiven-api-documentation/versions/ecaeabf1da31/schema)
