Skip to content

Gets project performance advisors.
experimental

get/v1/projects/{ref}/advisors/performance

This is an experimental endpoint. It is subject to change or removal in future versions. Use it with caution, as it may not remain supported or stable.

OAuth scopes

  • database:read

The fine-grained token must include the following permissions to access this endpoint:

  • advisors_read

Path parameters

  • ref
    Required
    string

    Project ref

Response codes

  • 200
  • 401
  • 403
  • 429

Response (200)

{
"lints": [
{
"name": "unindexed_foreign_keys",
"title": "lorem",
"level": "ERROR",
"facing": "EXTERNAL",
"categories": [
"PERFORMANCE"
],
"description": "lorem",
"detail": "lorem",
"remediation": "lorem",
"metadata": {
"schema": "lorem",
"name": "lorem",
"entity": "lorem",
"type": "table",
"fkey_name": "lorem",
"fkey_columns": [
42
]
},
"cache_key": "lorem",
"observed_at": "4404-02-29T04:24Z"
}
]
}
{
"type": "object",
"properties": {
"lints": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"enum": [
"unindexed_foreign_keys",
"auth_users_exposed",
"auth_rls_initplan",
"no_primary_key",
"unused_index",
"multiple_permissive_policies",
"policy_exists_rls_disabled",
"rls_enabled_no_policy",
"duplicate_index",
"security_definer_view",
"function_search_path_mutable",
"rls_disabled_in_public",
"extension_in_public",
"rls_references_user_metadata",
"materialized_view_in_api",
"foreign_table_in_api",
"unsupported_reg_types",
"auth_otp_long_expiry",
"auth_otp_short_length",
"ssl_not_enforced",
"log_connections_not_enabled",
"network_restrictions_not_set",
"password_requirements_min_length",
"pitr_not_enabled",
"auth_leaked_password_protection",
"auth_insufficient_mfa_options",
"auth_password_policy_missing",
"leaked_service_key",
"no_backup_admin",
"vulnerable_postgres_version",
"db_not_reachable",
"db_connection_failing",
"db_connection_limit_reached",
"instance_telemetry_lost",
"instance_db_down",
"instance_alert_firing",
"log_data_api_error_rate_high",
"log_auth_error_rate_high",
"log_storage_error_rate_high",
"log_edge_function_error_rate_high",
"realtime_authorization_timeouts",
"realtime_postgres_changes_spike",
"realtime_concurrent_users_near_limit",
"project_not_active",
"advisor_check_unavailable"
]
},
"title": {
"type": "string"
},
"level": {
"type": "string",
"enum": [
"ERROR",
"WARN",
"INFO"
]
},
"facing": {
"type": "string",
"enum": [
"EXTERNAL"
]
},
"categories": {
"type": "array",
"items": {
"type": "string",
"enum": [
"PERFORMANCE",
"SECURITY",
"HEALTH"
]
},
"x-ignore-array-items-must-be-objects": true
},
"description": {
"type": "string"
},
"detail": {
"type": "string"
},
"remediation": {
"type": "string"
},
"metadata": {
"type": "object",
"properties": {
"schema": {
"type": "string"
},
"name": {
"type": "string"
},
"entity": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"table",
"view",
"materialized view",
"foreign table",
"auth",
"function",
"extension",
"compliance",
"health"
]
},
"fkey_name": {
"type": "string"
},
"fkey_columns": {
"x-ignore-array-items-must-be-objects": true,
"type": "array",
"items": {
"type": "number"
}
}
}
},
"cache_key": {
"type": "string"
},
"observed_at": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
}
},
"required": [
"name",
"title",
"level",
"facing",
"categories",
"description",
"detail",
"remediation",
"cache_key"
]
}
}
},
"required": [
"lints"
]
}