{"openapi":"3.1.0","info":{"title":"Where Where Public Query API","version":"1.0.0","description":"Authenticated site, keyword, tags, and relationship queries. Free accounts receive complete records aged 12 UTC calendar months or older and an identical pro_required placeholder for restricted list rows; Pro accounts receive all records. Authenticated reads are limited to 3,000 per user per rolling hour across session and personal API keys. Null values mean unavailable source data, never zero or false."},"servers":[{"url":"https://wherewhere.money"}],"security":[{"apiKey":[]},{"sessionCookie":[]}],"components":{"schemas":{},"parameters":{},"securitySchemes":{"apiKey":{"type":"apiKey","in":"header","name":"x-api-key"},"sessionCookie":{"type":"apiKey","in":"cookie","name":"better-auth.session_token"}}},"paths":{"/api/v1/free/sites":{"get":{"operationId":"listFreeSites","tags":["Sites"],"summary":"List the free homepage sites","security":[],"responses":{"200":{"description":"A fixed, unpaginated preview of up to 24 sites.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"domain":{"type":"string"},"name":{"type":["string","null"]},"meta_description":{"type":["string","null"]},"primary_language":{"type":["string","null"]},"site_status":{"type":"string","enum":["active","closed","redirect"]},"site_type":{"type":"object","properties":{"brand":{"type":"boolean"},"emd":{"type":"boolean"}},"required":["brand","emd"]},"traffic_visits":{"type":["number","null"]},"growth_mom_pct":{"type":["number","null"]},"growth_3m_pct":{"type":["number","null"]},"dr":{"type":["number","null"]},"has_ads":{"type":["boolean","null"]},"is_paid":{"type":["boolean","null"]},"created_at":{"type":"string"},"page_title":{"type":["string","null"]},"regist_date":{"type":["string","null"]},"robots_index":{"type":["boolean","null"]},"redirect_target":{"type":["string","null"]},"redirect_type":{"type":["string","null"]},"redirect_from":{"type":["string","null"]},"traffic_organic_visits":{"type":["number","null"]},"traffic_bounce_pct":{"type":["number","null"]},"traffic_pages_per_visit":{"type":["number","null"]},"traffic_time_on_site":{"type":["number","null"]},"traffic_source_search_organic_pct":{"type":["number","null"]},"fingerprint_ga4_id":{"type":["string","null"]},"fingerprint_gtm_id":{"type":["string","null"]},"fingerprint_plausible_id":{"type":["string","null"]},"fingerprint_umami_id":{"type":["string","null"]},"fingerprint_adsense_id":{"type":["string","null"]},"traffic_source_direct_pct":{"type":["number","null"]},"traffic_source_mail_pct":{"type":["number","null"]},"traffic_source_referrals_pct":{"type":["number","null"]},"traffic_source_social_organic_pct":{"type":["number","null"]},"traffic_source_social_paid_pct":{"type":["number","null"]},"traffic_source_search_paid_pct":{"type":["number","null"]},"traffic_source_gen_ai_pct":{"type":["number","null"]},"traffic_source_affiliate_pct":{"type":["number","null"]},"traffic_source_display_ads_pct":{"type":["number","null"]},"traffic_high_value_pct":{"type":["number","null"]},"backlinks_count":{"type":["number","null"]},"backlinks_ref_domains":{"type":["number","null"]},"backlinks_dofollow_pct":{"type":["number","null"]}},"required":["domain","name","meta_description","primary_language","site_status","site_type","traffic_visits","growth_mom_pct","growth_3m_pct","dr","has_ads","is_paid","created_at","page_title","regist_date","robots_index","redirect_target","redirect_type","redirect_from","traffic_organic_visits","traffic_bounce_pct","traffic_pages_per_visit","traffic_time_on_site","traffic_source_search_organic_pct","fingerprint_ga4_id","fingerprint_gtm_id","fingerprint_plausible_id","fingerprint_umami_id","fingerprint_adsense_id","traffic_source_direct_pct","traffic_source_mail_pct","traffic_source_referrals_pct","traffic_source_social_organic_pct","traffic_source_social_paid_pct","traffic_source_search_paid_pct","traffic_source_gen_ai_pct","traffic_source_affiliate_pct","traffic_source_display_ads_pct","traffic_high_value_pct","backlinks_count","backlinks_ref_domains","backlinks_dofollow_pct"]}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"]},"total":{"type":"integer"}},"required":["limit","has_more","next_cursor","total"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/free/sites/{domain}":{"get":{"operationId":"getFreeSite","tags":["Sites"],"summary":"Get details for a free homepage site","security":[],"parameters":[{"schema":{"type":"string","description":"URL-encoded domain."},"required":true,"description":"URL-encoded domain.","name":"domain","in":"path"}],"responses":{"200":{"description":"Details for a site currently in the 24 free homepage results.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"domain":{"type":"string"},"name":{"type":["string","null"]},"meta_description":{"type":["string","null"]},"primary_language":{"type":["string","null"]},"site_status":{"type":"string","enum":["active","closed","redirect"]},"site_type":{"type":"object","properties":{"brand":{"type":"boolean"},"emd":{"type":"boolean"}},"required":["brand","emd"]},"traffic_visits":{"type":["number","null"]},"growth_mom_pct":{"type":["number","null"]},"growth_3m_pct":{"type":["number","null"]},"dr":{"type":["number","null"]},"has_ads":{"type":["boolean","null"]},"is_paid":{"type":["boolean","null"]},"created_at":{"type":"string"},"page_title":{"type":["string","null"]},"regist_date":{"type":["string","null"]},"robots_index":{"type":["boolean","null"]},"redirect_target":{"type":["string","null"]},"redirect_type":{"type":["string","null"]},"redirect_from":{"type":["string","null"]},"traffic_organic_visits":{"type":["number","null"]},"traffic_bounce_pct":{"type":["number","null"]},"traffic_pages_per_visit":{"type":["number","null"]},"traffic_time_on_site":{"type":["number","null"]},"traffic_source_search_organic_pct":{"type":["number","null"]},"fingerprint_ga4_id":{"type":["string","null"]},"fingerprint_gtm_id":{"type":["string","null"]},"fingerprint_plausible_id":{"type":["string","null"]},"fingerprint_umami_id":{"type":["string","null"]},"fingerprint_adsense_id":{"type":["string","null"]},"traffic_source_direct_pct":{"type":["number","null"]},"traffic_source_mail_pct":{"type":["number","null"]},"traffic_source_referrals_pct":{"type":["number","null"]},"traffic_source_social_organic_pct":{"type":["number","null"]},"traffic_source_social_paid_pct":{"type":["number","null"]},"traffic_source_search_paid_pct":{"type":["number","null"]},"traffic_source_gen_ai_pct":{"type":["number","null"]},"traffic_source_affiliate_pct":{"type":["number","null"]},"traffic_source_display_ads_pct":{"type":["number","null"]},"traffic_high_value_pct":{"type":["number","null"]},"backlinks_count":{"type":["number","null"]},"backlinks_ref_domains":{"type":["number","null"]},"backlinks_dofollow_pct":{"type":["number","null"]},"traffic_monthly":{"type":["array","null"],"items":{"type":"object","properties":{"month":{"type":"string"},"visits":{"type":["number","null"]},"est_organic":{"type":["number","null"]}},"required":["month","visits"]}},"traffic_country_shares":{"type":["array","null"],"items":{"type":"object","properties":{"country":{"type":"string"},"share":{"type":"number"}},"required":["country","share"]}},"tags":{"type":"array","items":{"type":"object","properties":{"tag_type":{"type":"string"},"tag_value":{"type":"string"}},"required":["tag_type","tag_value"]}},"top_keywords":{"type":["array","null"],"items":{"type":"object","properties":{"keyword":{"type":"string"},"volume":{"type":["number","null"]},"cpc":{"type":["number","null"]},"estimated_value":{"type":["number","null"]}},"required":["keyword"]}}},"required":["domain","name","meta_description","primary_language","site_status","site_type","traffic_visits","growth_mom_pct","growth_3m_pct","dr","has_ads","is_paid","created_at","page_title","regist_date","robots_index","redirect_target","redirect_type","redirect_from","traffic_organic_visits","traffic_bounce_pct","traffic_pages_per_visit","traffic_time_on_site","traffic_source_search_organic_pct","fingerprint_ga4_id","fingerprint_gtm_id","fingerprint_plausible_id","fingerprint_umami_id","fingerprint_adsense_id","traffic_source_direct_pct","traffic_source_mail_pct","traffic_source_referrals_pct","traffic_source_social_organic_pct","traffic_source_social_paid_pct","traffic_source_search_paid_pct","traffic_source_gen_ai_pct","traffic_source_affiliate_pct","traffic_source_display_ads_pct","traffic_high_value_pct","backlinks_count","backlinks_ref_domains","backlinks_dofollow_pct","traffic_monthly","traffic_country_shares","tags","top_keywords"]}},"required":["data"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/free/stats":{"get":{"operationId":"getFreeStats","tags":["Stats"],"summary":"Get public dataset totals","security":[],"responses":{"200":{"description":"Total collected sites and keywords, plus sites collected in the past seven days.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"sites_total":{"type":"integer","minimum":0},"keywords_total":{"type":"integer","minimum":0},"sites_added_7d":{"type":"integer","minimum":0}},"required":["sites_total","keywords_total","sites_added_7d"]}},"required":["data"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/me/plan":{"get":{"operationId":"getMyPlan","tags":["Account"],"summary":"Get the account plan and current gifted Pro expiry","security":[{"sessionCookie":[]}],"responses":{"200":{"description":"Effective Free/Pro plan from the logged-in session.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"plan":{"type":"string","enum":["free","pro"]},"pro_until":{"type":["string","null"]}},"required":["plan","pro_until"]}},"required":["data"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/me/activation-codes/redeem":{"post":{"operationId":"redeemActivationCode","tags":["Account"],"summary":"Redeem a one-time Pro activation code","security":[{"sessionCookie":[]}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","maxLength":64,"pattern":"^\\s*[Ww]{2}-[A-Fa-f0-9]{48}\\s*$","description":"WW- followed by 48 hexadecimal characters; surrounding whitespace is trimmed."}},"required":["code"]}}}},"responses":{"200":{"description":"Effective plan after successful redemption.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"plan":{"type":"string","enum":["free","pro"]},"pro_until":{"type":["string","null"]}},"required":["plan","pro_until"]}},"required":["data"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/sites":{"get":{"operationId":"listSites","tags":["Sites"],"summary":"List sites","security":[{"apiKey":[]},{"sessionCookie":[]}],"parameters":[{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Normalized domain."},"required":false,"description":"Normalized domain.","name":"domain","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether domain is present (true) or null (false)."},"required":false,"description":"Filter by whether domain is present (true) or null (false).","name":"domain_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose domain matches any listed value."},"required":false,"description":"Exclude rows whose domain matches any listed value.","name":"domain_not","in":"query"},{"schema":{"type":"string","description":"Domain substring match. Treated as a literal value."},"required":false,"description":"Domain substring match. Treated as a literal value.","name":"domain_contains","in":"query"},{"schema":{"type":"string","description":"Site name substring match. Treated as a literal value."},"required":false,"description":"Site name substring match. Treated as a literal value.","name":"name_contains","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether name is present (true) or null (false)."},"required":false,"description":"Filter by whether name is present (true) or null (false).","name":"name_exists","in":"query"},{"schema":{"type":"string","description":"Page title substring match. Treated as a literal value."},"required":false,"description":"Page title substring match. Treated as a literal value.","name":"page_title_contains","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether page_title is present (true) or null (false)."},"required":false,"description":"Filter by whether page_title is present (true) or null (false).","name":"page_title_exists","in":"query"},{"schema":{"type":"string","description":"Meta description substring match. Treated as a literal value."},"required":false,"description":"Meta description substring match. Treated as a literal value.","name":"meta_description_contains","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether meta_description is present (true) or null (false)."},"required":false,"description":"Filter by whether meta_description is present (true) or null (false).","name":"meta_description_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Canonical ISO 639-1 language code."},"required":false,"description":"Canonical ISO 639-1 language code.","name":"primary_language","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether primary_language is present (true) or null (false)."},"required":false,"description":"Filter by whether primary_language is present (true) or null (false).","name":"primary_language_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose primary_language matches any listed value."},"required":false,"description":"Exclude rows whose primary_language matches any listed value.","name":"primary_language_not","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["active","closed","redirect"]},{"type":"array","items":{"type":"string","enum":["active","closed","redirect"]}}],"description":"Site lifecycle status. When no site_status filter is provided, site lists return active sites only."},"required":false,"description":"Site lifecycle status. When no site_status filter is provided, site lists return active sites only.","name":"site_status","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether site_status is present (true) or null (false)."},"required":false,"description":"Filter by whether site_status is present (true) or null (false).","name":"site_status_exists","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["active","closed","redirect"]},{"type":"array","items":{"type":"string","enum":["active","closed","redirect"]}}],"description":"Exclude rows whose site_status matches any listed value."},"required":false,"description":"Exclude rows whose site_status matches any listed value.","name":"site_status_not","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["301","302","307","308","meta"]},{"type":"array","items":{"type":"string","enum":["301","302","307","308","meta"]}}],"description":"Redirect mechanism."},"required":false,"description":"Redirect mechanism.","name":"redirect_type","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether redirect_type is present (true) or null (false)."},"required":false,"description":"Filter by whether redirect_type is present (true) or null (false).","name":"redirect_type_exists","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["301","302","307","308","meta"]},{"type":"array","items":{"type":"string","enum":["301","302","307","308","meta"]}}],"description":"Exclude rows whose redirect_type matches any listed value."},"required":false,"description":"Exclude rows whose redirect_type matches any listed value.","name":"redirect_type_not","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["true","false","null"]},{"type":"array","items":{"type":"string","enum":["true","false","null"]}}],"description":"Whether advertising was detected."},"required":false,"description":"Whether advertising was detected.","name":"has_ads","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["true","false","null"]},{"type":"array","items":{"type":"string","enum":["true","false","null"]}}],"description":"Whether the site is paid."},"required":false,"description":"Whether the site is paid.","name":"is_paid","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["true","false","null"]},{"type":"array","items":{"type":"string","enum":["true","false","null"]}}],"description":"Whether robots permits indexing."},"required":false,"description":"Whether robots permits indexing.","name":"robots_index","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["true","false","null"]},{"type":"array","items":{"type":"string","enum":["true","false","null"]}}],"description":"Whether the domain is classified as a brand."},"required":false,"description":"Whether the domain is classified as a brand.","name":"domain_type_brand","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["true","false","null"]},{"type":"array","items":{"type":"string","enum":["true","false","null"]}}],"description":"Whether the domain is an exact-match domain."},"required":false,"description":"Whether the domain is an exact-match domain.","name":"domain_type_emd","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"GA4 fingerprint."},"required":false,"description":"GA4 fingerprint.","name":"fingerprint_ga4_id","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether fingerprint_ga4_id is present (true) or null (false)."},"required":false,"description":"Filter by whether fingerprint_ga4_id is present (true) or null (false).","name":"fingerprint_ga4_id_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose fingerprint_ga4_id matches any listed value."},"required":false,"description":"Exclude rows whose fingerprint_ga4_id matches any listed value.","name":"fingerprint_ga4_id_not","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"GTM fingerprint."},"required":false,"description":"GTM fingerprint.","name":"fingerprint_gtm_id","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether fingerprint_gtm_id is present (true) or null (false)."},"required":false,"description":"Filter by whether fingerprint_gtm_id is present (true) or null (false).","name":"fingerprint_gtm_id_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose fingerprint_gtm_id matches any listed value."},"required":false,"description":"Exclude rows whose fingerprint_gtm_id matches any listed value.","name":"fingerprint_gtm_id_not","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"PLAUSIBLE fingerprint."},"required":false,"description":"PLAUSIBLE fingerprint.","name":"fingerprint_plausible_id","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether fingerprint_plausible_id is present (true) or null (false)."},"required":false,"description":"Filter by whether fingerprint_plausible_id is present (true) or null (false).","name":"fingerprint_plausible_id_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose fingerprint_plausible_id matches any listed value."},"required":false,"description":"Exclude rows whose fingerprint_plausible_id matches any listed value.","name":"fingerprint_plausible_id_not","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"UMAMI fingerprint."},"required":false,"description":"UMAMI fingerprint.","name":"fingerprint_umami_id","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether fingerprint_umami_id is present (true) or null (false)."},"required":false,"description":"Filter by whether fingerprint_umami_id is present (true) or null (false).","name":"fingerprint_umami_id_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose fingerprint_umami_id matches any listed value."},"required":false,"description":"Exclude rows whose fingerprint_umami_id matches any listed value.","name":"fingerprint_umami_id_not","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"ADSENSE fingerprint."},"required":false,"description":"ADSENSE fingerprint.","name":"fingerprint_adsense_id","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether fingerprint_adsense_id is present (true) or null (false)."},"required":false,"description":"Filter by whether fingerprint_adsense_id is present (true) or null (false).","name":"fingerprint_adsense_id_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose fingerprint_adsense_id matches any listed value."},"required":false,"description":"Exclude rows whose fingerprint_adsense_id matches any listed value.","name":"fingerprint_adsense_id_not","in":"query"},{"schema":{"type":"string","description":"Registration date. Lower bound, inclusive."},"required":false,"description":"Registration date. Lower bound, inclusive.","name":"regist_date_min","in":"query"},{"schema":{"type":"string","description":"Registration date. Upper bound, inclusive."},"required":false,"description":"Registration date. Upper bound, inclusive.","name":"regist_date_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether regist_date is present (true) or null (false)."},"required":false,"description":"Filter by whether regist_date is present (true) or null (false).","name":"regist_date_exists","in":"query"},{"schema":{"type":"string","description":"Record creation timestamp. Lower bound, inclusive."},"required":false,"description":"Record creation timestamp. Lower bound, inclusive.","name":"created_at_min","in":"query"},{"schema":{"type":"string","description":"Record creation timestamp. Upper bound, inclusive."},"required":false,"description":"Record creation timestamp. Upper bound, inclusive.","name":"created_at_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether created_at is present (true) or null (false)."},"required":false,"description":"Filter by whether created_at is present (true) or null (false).","name":"created_at_exists","in":"query"},{"schema":{"type":"number","description":"Monthly visits. Lower bound, inclusive."},"required":false,"description":"Monthly visits. Lower bound, inclusive.","name":"traffic_visits_min","in":"query"},{"schema":{"type":"number","description":"Monthly visits. Upper bound, inclusive."},"required":false,"description":"Monthly visits. Upper bound, inclusive.","name":"traffic_visits_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_visits is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_visits is present (true) or null (false).","name":"traffic_visits_exists","in":"query"},{"schema":{"type":"number","description":"Monthly organic visits. Lower bound, inclusive."},"required":false,"description":"Monthly organic visits. Lower bound, inclusive.","name":"traffic_organic_visits_min","in":"query"},{"schema":{"type":"number","description":"Monthly organic visits. Upper bound, inclusive."},"required":false,"description":"Monthly organic visits. Upper bound, inclusive.","name":"traffic_organic_visits_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_organic_visits is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_organic_visits is present (true) or null (false).","name":"traffic_organic_visits_exists","in":"query"},{"schema":{"type":"number","description":"Bounce rate percentage. Lower bound, inclusive."},"required":false,"description":"Bounce rate percentage. Lower bound, inclusive.","name":"traffic_bounce_pct_min","in":"query"},{"schema":{"type":"number","description":"Bounce rate percentage. Upper bound, inclusive."},"required":false,"description":"Bounce rate percentage. Upper bound, inclusive.","name":"traffic_bounce_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_bounce_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_bounce_pct is present (true) or null (false).","name":"traffic_bounce_pct_exists","in":"query"},{"schema":{"type":"number","description":"Pages per visit. Lower bound, inclusive."},"required":false,"description":"Pages per visit. Lower bound, inclusive.","name":"traffic_pages_per_visit_min","in":"query"},{"schema":{"type":"number","description":"Pages per visit. Upper bound, inclusive."},"required":false,"description":"Pages per visit. Upper bound, inclusive.","name":"traffic_pages_per_visit_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_pages_per_visit is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_pages_per_visit is present (true) or null (false).","name":"traffic_pages_per_visit_exists","in":"query"},{"schema":{"type":"number","description":"Average time on site. Lower bound, inclusive."},"required":false,"description":"Average time on site. Lower bound, inclusive.","name":"traffic_time_on_site_min","in":"query"},{"schema":{"type":"number","description":"Average time on site. Upper bound, inclusive."},"required":false,"description":"Average time on site. Upper bound, inclusive.","name":"traffic_time_on_site_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_time_on_site is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_time_on_site is present (true) or null (false).","name":"traffic_time_on_site_exists","in":"query"},{"schema":{"type":"number","description":"Month-over-month growth percentage. Lower bound, inclusive."},"required":false,"description":"Month-over-month growth percentage. Lower bound, inclusive.","name":"growth_mom_pct_min","in":"query"},{"schema":{"type":"number","description":"Month-over-month growth percentage. Upper bound, inclusive."},"required":false,"description":"Month-over-month growth percentage. Upper bound, inclusive.","name":"growth_mom_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether growth_mom_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether growth_mom_pct is present (true) or null (false).","name":"growth_mom_pct_exists","in":"query"},{"schema":{"type":"number","description":"Three-month growth percentage. Lower bound, inclusive."},"required":false,"description":"Three-month growth percentage. Lower bound, inclusive.","name":"growth_3m_pct_min","in":"query"},{"schema":{"type":"number","description":"Three-month growth percentage. Upper bound, inclusive."},"required":false,"description":"Three-month growth percentage. Upper bound, inclusive.","name":"growth_3m_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether growth_3m_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether growth_3m_pct is present (true) or null (false).","name":"growth_3m_pct_exists","in":"query"},{"schema":{"type":"number","description":"High-value traffic percentage. Lower bound, inclusive."},"required":false,"description":"High-value traffic percentage. Lower bound, inclusive.","name":"traffic_high_value_pct_min","in":"query"},{"schema":{"type":"number","description":"High-value traffic percentage. Upper bound, inclusive."},"required":false,"description":"High-value traffic percentage. Upper bound, inclusive.","name":"traffic_high_value_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_high_value_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_high_value_pct is present (true) or null (false).","name":"traffic_high_value_pct_exists","in":"query"},{"schema":{"type":"number","description":"Domain Rating. Lower bound, inclusive."},"required":false,"description":"Domain Rating. Lower bound, inclusive.","name":"dr_min","in":"query"},{"schema":{"type":"number","description":"Domain Rating. Upper bound, inclusive."},"required":false,"description":"Domain Rating. Upper bound, inclusive.","name":"dr_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether dr is present (true) or null (false)."},"required":false,"description":"Filter by whether dr is present (true) or null (false).","name":"dr_exists","in":"query"},{"schema":{"type":"number","description":"Number of backlinks. Lower bound, inclusive."},"required":false,"description":"Number of backlinks. Lower bound, inclusive.","name":"backlinks_count_min","in":"query"},{"schema":{"type":"number","description":"Number of backlinks. Upper bound, inclusive."},"required":false,"description":"Number of backlinks. Upper bound, inclusive.","name":"backlinks_count_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether backlinks_count is present (true) or null (false)."},"required":false,"description":"Filter by whether backlinks_count is present (true) or null (false).","name":"backlinks_count_exists","in":"query"},{"schema":{"type":"number","description":"Number of referring domains. Lower bound, inclusive."},"required":false,"description":"Number of referring domains. Lower bound, inclusive.","name":"backlinks_ref_domains_min","in":"query"},{"schema":{"type":"number","description":"Number of referring domains. Upper bound, inclusive."},"required":false,"description":"Number of referring domains. Upper bound, inclusive.","name":"backlinks_ref_domains_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether backlinks_ref_domains is present (true) or null (false)."},"required":false,"description":"Filter by whether backlinks_ref_domains is present (true) or null (false).","name":"backlinks_ref_domains_exists","in":"query"},{"schema":{"type":"number","description":"Dofollow backlink percentage. Lower bound, inclusive."},"required":false,"description":"Dofollow backlink percentage. Lower bound, inclusive.","name":"backlinks_dofollow_pct_min","in":"query"},{"schema":{"type":"number","description":"Dofollow backlink percentage. Upper bound, inclusive."},"required":false,"description":"Dofollow backlink percentage. Upper bound, inclusive.","name":"backlinks_dofollow_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether backlinks_dofollow_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether backlinks_dofollow_pct is present (true) or null (false).","name":"backlinks_dofollow_pct_exists","in":"query"},{"schema":{"type":"number","description":"Direct traffic percentage. Lower bound, inclusive."},"required":false,"description":"Direct traffic percentage. Lower bound, inclusive.","name":"traffic_source_direct_pct_min","in":"query"},{"schema":{"type":"number","description":"Direct traffic percentage. Upper bound, inclusive."},"required":false,"description":"Direct traffic percentage. Upper bound, inclusive.","name":"traffic_source_direct_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_direct_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_direct_pct is present (true) or null (false).","name":"traffic_source_direct_pct_exists","in":"query"},{"schema":{"type":"number","description":"Mail traffic percentage. Lower bound, inclusive."},"required":false,"description":"Mail traffic percentage. Lower bound, inclusive.","name":"traffic_source_mail_pct_min","in":"query"},{"schema":{"type":"number","description":"Mail traffic percentage. Upper bound, inclusive."},"required":false,"description":"Mail traffic percentage. Upper bound, inclusive.","name":"traffic_source_mail_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_mail_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_mail_pct is present (true) or null (false).","name":"traffic_source_mail_pct_exists","in":"query"},{"schema":{"type":"number","description":"Referral traffic percentage. Lower bound, inclusive."},"required":false,"description":"Referral traffic percentage. Lower bound, inclusive.","name":"traffic_source_referrals_pct_min","in":"query"},{"schema":{"type":"number","description":"Referral traffic percentage. Upper bound, inclusive."},"required":false,"description":"Referral traffic percentage. Upper bound, inclusive.","name":"traffic_source_referrals_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_referrals_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_referrals_pct is present (true) or null (false).","name":"traffic_source_referrals_pct_exists","in":"query"},{"schema":{"type":"number","description":"Organic social traffic percentage. Lower bound, inclusive."},"required":false,"description":"Organic social traffic percentage. Lower bound, inclusive.","name":"traffic_source_social_organic_pct_min","in":"query"},{"schema":{"type":"number","description":"Organic social traffic percentage. Upper bound, inclusive."},"required":false,"description":"Organic social traffic percentage. Upper bound, inclusive.","name":"traffic_source_social_organic_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_social_organic_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_social_organic_pct is present (true) or null (false).","name":"traffic_source_social_organic_pct_exists","in":"query"},{"schema":{"type":"number","description":"Paid social traffic percentage. Lower bound, inclusive."},"required":false,"description":"Paid social traffic percentage. Lower bound, inclusive.","name":"traffic_source_social_paid_pct_min","in":"query"},{"schema":{"type":"number","description":"Paid social traffic percentage. Upper bound, inclusive."},"required":false,"description":"Paid social traffic percentage. Upper bound, inclusive.","name":"traffic_source_social_paid_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_social_paid_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_social_paid_pct is present (true) or null (false).","name":"traffic_source_social_paid_pct_exists","in":"query"},{"schema":{"type":"number","description":"Organic search traffic percentage. Lower bound, inclusive."},"required":false,"description":"Organic search traffic percentage. Lower bound, inclusive.","name":"traffic_source_search_organic_pct_min","in":"query"},{"schema":{"type":"number","description":"Organic search traffic percentage. Upper bound, inclusive."},"required":false,"description":"Organic search traffic percentage. Upper bound, inclusive.","name":"traffic_source_search_organic_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_search_organic_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_search_organic_pct is present (true) or null (false).","name":"traffic_source_search_organic_pct_exists","in":"query"},{"schema":{"type":"number","description":"Paid search traffic percentage. Lower bound, inclusive."},"required":false,"description":"Paid search traffic percentage. Lower bound, inclusive.","name":"traffic_source_search_paid_pct_min","in":"query"},{"schema":{"type":"number","description":"Paid search traffic percentage. Upper bound, inclusive."},"required":false,"description":"Paid search traffic percentage. Upper bound, inclusive.","name":"traffic_source_search_paid_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_search_paid_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_search_paid_pct is present (true) or null (false).","name":"traffic_source_search_paid_pct_exists","in":"query"},{"schema":{"type":"number","description":"Generative AI traffic percentage. Lower bound, inclusive."},"required":false,"description":"Generative AI traffic percentage. Lower bound, inclusive.","name":"traffic_source_gen_ai_pct_min","in":"query"},{"schema":{"type":"number","description":"Generative AI traffic percentage. Upper bound, inclusive."},"required":false,"description":"Generative AI traffic percentage. Upper bound, inclusive.","name":"traffic_source_gen_ai_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_gen_ai_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_gen_ai_pct is present (true) or null (false).","name":"traffic_source_gen_ai_pct_exists","in":"query"},{"schema":{"type":"number","description":"Affiliate traffic percentage. Lower bound, inclusive."},"required":false,"description":"Affiliate traffic percentage. Lower bound, inclusive.","name":"traffic_source_affiliate_pct_min","in":"query"},{"schema":{"type":"number","description":"Affiliate traffic percentage. Upper bound, inclusive."},"required":false,"description":"Affiliate traffic percentage. Upper bound, inclusive.","name":"traffic_source_affiliate_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_affiliate_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_affiliate_pct is present (true) or null (false).","name":"traffic_source_affiliate_pct_exists","in":"query"},{"schema":{"type":"number","description":"Display advertising traffic percentage. Lower bound, inclusive."},"required":false,"description":"Display advertising traffic percentage. Lower bound, inclusive.","name":"traffic_source_display_ads_pct_min","in":"query"},{"schema":{"type":"number","description":"Display advertising traffic percentage. Upper bound, inclusive."},"required":false,"description":"Display advertising traffic percentage. Upper bound, inclusive.","name":"traffic_source_display_ads_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether traffic_source_display_ads_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether traffic_source_display_ads_pct is present (true) or null (false).","name":"traffic_source_display_ads_pct_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Related keyword; a site matches when it has any requested keyword."},"required":false,"description":"Related keyword; a site matches when it has any requested keyword.","name":"keyword","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose keyword matches any listed value."},"required":false,"description":"Exclude rows whose keyword matches any listed value.","name":"keyword_not","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Tag filter formatted as type:value. Allowed types: category, language, monetization, growth_tactic. Values of the same type are OR, different types are AND. Fetch the values currently present in the database from GET /api/v1/tags (grouped by tag type). category, monetization, and growth_tactic are controlled vocabularies: a value outside the vocabulary returns 400 (code=invalid_param, param=tag). language, framework, and ai_model_family have no fixed vocabulary: an unmatched value just returns an empty list. An unknown tag type or a value that is not formatted as type:value also returns 400. Values are lowercased before matching."},"required":false,"description":"Tag filter formatted as type:value. Allowed types: category, language, monetization, growth_tactic. Values of the same type are OR, different types are AND. Fetch the values currently present in the database from GET /api/v1/tags (grouped by tag type). category, monetization, and growth_tactic are controlled vocabularies: a value outside the vocabulary returns 400 (code=invalid_param, param=tag). language, framework, and ai_model_family have no fixed vocabulary: an unmatched value just returns an empty list. An unknown tag type or a value that is not formatted as type:value also returns 400. Values are lowercased before matching.","name":"tag","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose tag matches any listed value."},"required":false,"description":"Exclude rows whose tag matches any listed value.","name":"tag_not","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":100,"description":"Page size (1–100). Defaults to 20."},"required":false,"description":"Page size (1–100). Defaults to 20.","name":"limit","in":"query"},{"schema":{"type":"string","description":"Opaque pagination cursor bound to the current filters."},"required":false,"description":"Opaque pagination cursor bound to the current filters.","name":"cursor","in":"query"},{"schema":{"type":"string","enum":["domain","regist_date","created_at","traffic_visits","traffic_organic_visits","traffic_bounce_pct","traffic_pages_per_visit","traffic_time_on_site","growth_mom_pct","growth_3m_pct","traffic_high_value_pct","dr","backlinks_count","backlinks_ref_domains","backlinks_dofollow_pct","traffic_source_direct_pct","traffic_source_mail_pct","traffic_source_referrals_pct","traffic_source_social_organic_pct","traffic_source_social_paid_pct","traffic_source_search_organic_pct","traffic_source_search_paid_pct","traffic_source_gen_ai_pct","traffic_source_affiliate_pct","traffic_source_display_ads_pct"],"description":"Sort field. Sorting by a field other than the default excludes rows where that field is null."},"required":false,"description":"Sort field. Sorting by a field other than the default excludes rows where that field is null.","name":"sort","in":"query"},{"schema":{"type":"string","enum":["asc","desc"],"description":"Sort direction."},"required":false,"description":"Sort direction.","name":"order","in":"query"}],"responses":{"200":{"description":"A paginated list of sites.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"domain":{"type":"string"},"name":{"type":["string","null"]},"meta_description":{"type":["string","null"]},"primary_language":{"type":["string","null"]},"site_status":{"type":"string","enum":["active","closed","redirect"]},"site_type":{"type":"object","properties":{"brand":{"type":"boolean"},"emd":{"type":"boolean"}},"required":["brand","emd"]},"traffic_visits":{"type":["number","null"]},"growth_mom_pct":{"type":["number","null"]},"growth_3m_pct":{"type":["number","null"]},"dr":{"type":["number","null"]},"has_ads":{"type":["boolean","null"]},"is_paid":{"type":["boolean","null"]},"created_at":{"type":"string"},"page_title":{"type":["string","null"]},"regist_date":{"type":["string","null"]},"robots_index":{"type":["boolean","null"]},"redirect_target":{"type":["string","null"]},"redirect_type":{"type":["string","null"]},"redirect_from":{"type":["string","null"]},"traffic_organic_visits":{"type":["number","null"]},"traffic_bounce_pct":{"type":["number","null"]},"traffic_pages_per_visit":{"type":["number","null"]},"traffic_time_on_site":{"type":["number","null"]},"traffic_source_search_organic_pct":{"type":["number","null"]},"fingerprint_ga4_id":{"type":["string","null"]},"fingerprint_gtm_id":{"type":["string","null"]},"fingerprint_plausible_id":{"type":["string","null"]},"fingerprint_umami_id":{"type":["string","null"]},"fingerprint_adsense_id":{"type":["string","null"]},"traffic_source_direct_pct":{"type":["number","null"]},"traffic_source_mail_pct":{"type":["number","null"]},"traffic_source_referrals_pct":{"type":["number","null"]},"traffic_source_social_organic_pct":{"type":["number","null"]},"traffic_source_social_paid_pct":{"type":["number","null"]},"traffic_source_search_paid_pct":{"type":["number","null"]},"traffic_source_gen_ai_pct":{"type":["number","null"]},"traffic_source_affiliate_pct":{"type":["number","null"]},"traffic_source_display_ads_pct":{"type":["number","null"]},"traffic_high_value_pct":{"type":["number","null"]},"backlinks_count":{"type":["number","null"]},"backlinks_ref_domains":{"type":["number","null"]},"backlinks_dofollow_pct":{"type":["number","null"]}},"required":["domain","name","meta_description","primary_language","site_status","site_type","traffic_visits","growth_mom_pct","growth_3m_pct","dr","has_ads","is_paid","created_at","page_title","regist_date","robots_index","redirect_target","redirect_type","redirect_from","traffic_organic_visits","traffic_bounce_pct","traffic_pages_per_visit","traffic_time_on_site","traffic_source_search_organic_pct","fingerprint_ga4_id","fingerprint_gtm_id","fingerprint_plausible_id","fingerprint_umami_id","fingerprint_adsense_id","traffic_source_direct_pct","traffic_source_mail_pct","traffic_source_referrals_pct","traffic_source_social_organic_pct","traffic_source_social_paid_pct","traffic_source_search_paid_pct","traffic_source_gen_ai_pct","traffic_source_affiliate_pct","traffic_source_display_ads_pct","traffic_high_value_pct","backlinks_count","backlinks_ref_domains","backlinks_dofollow_pct"]},{"type":"object","properties":{"code":{"type":"string","enum":["pro_required"]},"message":{"type":"string","enum":["This data is available with Pro access."]}},"required":["code","message"]}]}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"]},"total":{"type":"integer"}},"required":["limit","has_more","next_cursor","total"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/sites/{domain}":{"get":{"operationId":"getSite","tags":["Sites"],"summary":"Get a site","security":[{"apiKey":[]},{"sessionCookie":[]}],"parameters":[{"schema":{"type":"string","description":"URL-encoded domain."},"required":true,"description":"URL-encoded domain.","name":"domain","in":"path"}],"responses":{"200":{"description":"A site.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"domain":{"type":"string"},"name":{"type":["string","null"]},"meta_description":{"type":["string","null"]},"primary_language":{"type":["string","null"]},"site_status":{"type":"string","enum":["active","closed","redirect"]},"site_type":{"type":"object","properties":{"brand":{"type":"boolean"},"emd":{"type":"boolean"}},"required":["brand","emd"]},"traffic_visits":{"type":["number","null"]},"growth_mom_pct":{"type":["number","null"]},"growth_3m_pct":{"type":["number","null"]},"dr":{"type":["number","null"]},"has_ads":{"type":["boolean","null"]},"is_paid":{"type":["boolean","null"]},"created_at":{"type":"string"},"page_title":{"type":["string","null"]},"regist_date":{"type":["string","null"]},"robots_index":{"type":["boolean","null"]},"redirect_target":{"type":["string","null"]},"redirect_type":{"type":["string","null"]},"redirect_from":{"type":["string","null"]},"traffic_organic_visits":{"type":["number","null"]},"traffic_bounce_pct":{"type":["number","null"]},"traffic_pages_per_visit":{"type":["number","null"]},"traffic_time_on_site":{"type":["number","null"]},"traffic_source_search_organic_pct":{"type":["number","null"]},"fingerprint_ga4_id":{"type":["string","null"]},"fingerprint_gtm_id":{"type":["string","null"]},"fingerprint_plausible_id":{"type":["string","null"]},"fingerprint_umami_id":{"type":["string","null"]},"fingerprint_adsense_id":{"type":["string","null"]},"traffic_source_direct_pct":{"type":["number","null"]},"traffic_source_mail_pct":{"type":["number","null"]},"traffic_source_referrals_pct":{"type":["number","null"]},"traffic_source_social_organic_pct":{"type":["number","null"]},"traffic_source_social_paid_pct":{"type":["number","null"]},"traffic_source_search_paid_pct":{"type":["number","null"]},"traffic_source_gen_ai_pct":{"type":["number","null"]},"traffic_source_affiliate_pct":{"type":["number","null"]},"traffic_source_display_ads_pct":{"type":["number","null"]},"traffic_high_value_pct":{"type":["number","null"]},"backlinks_count":{"type":["number","null"]},"backlinks_ref_domains":{"type":["number","null"]},"backlinks_dofollow_pct":{"type":["number","null"]},"traffic_monthly":{"type":["array","null"],"items":{"type":"object","properties":{"month":{"type":"string"},"visits":{"type":["number","null"]},"est_organic":{"type":["number","null"]}},"required":["month","visits"]}},"traffic_country_shares":{"type":["array","null"],"items":{"type":"object","properties":{"country":{"type":"string"},"share":{"type":"number"}},"required":["country","share"]}},"tags":{"type":"array","items":{"type":"object","properties":{"tag_type":{"type":"string"},"tag_value":{"type":"string"}},"required":["tag_type","tag_value"]}},"top_keywords":{"type":["array","null"],"items":{"type":"object","properties":{"keyword":{"type":"string"},"volume":{"type":["number","null"]},"cpc":{"type":["number","null"]},"estimated_value":{"type":["number","null"]}},"required":["keyword"]}}},"required":["domain","name","meta_description","primary_language","site_status","site_type","traffic_visits","growth_mom_pct","growth_3m_pct","dr","has_ads","is_paid","created_at","page_title","regist_date","robots_index","redirect_target","redirect_type","redirect_from","traffic_organic_visits","traffic_bounce_pct","traffic_pages_per_visit","traffic_time_on_site","traffic_source_search_organic_pct","fingerprint_ga4_id","fingerprint_gtm_id","fingerprint_plausible_id","fingerprint_umami_id","fingerprint_adsense_id","traffic_source_direct_pct","traffic_source_mail_pct","traffic_source_referrals_pct","traffic_source_social_organic_pct","traffic_source_social_paid_pct","traffic_source_search_paid_pct","traffic_source_gen_ai_pct","traffic_source_affiliate_pct","traffic_source_display_ads_pct","traffic_high_value_pct","backlinks_count","backlinks_ref_domains","backlinks_dofollow_pct","traffic_monthly","traffic_country_shares","tags","top_keywords"]}},"required":["data"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/sites/{domain}/keywords":{"get":{"operationId":"listSiteKeywords","tags":["Relationships"],"summary":"List a site's keywords","security":[{"apiKey":[]},{"sessionCookie":[]}],"parameters":[{"schema":{"type":"string","description":"URL-encoded domain."},"required":true,"description":"URL-encoded domain.","name":"domain","in":"path"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether domain is present (true) or null (false)."},"required":false,"description":"Filter by whether domain is present (true) or null (false).","name":"domain_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Related keyword."},"required":false,"description":"Related keyword.","name":"keyword","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether keyword is present (true) or null (false)."},"required":false,"description":"Filter by whether keyword is present (true) or null (false).","name":"keyword_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose keyword matches any listed value."},"required":false,"description":"Exclude rows whose keyword matches any listed value.","name":"keyword_not","in":"query"},{"schema":{"type":"string","description":"Related keyword substring match. Treated as a literal value."},"required":false,"description":"Related keyword substring match. Treated as a literal value.","name":"keyword_contains","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["site_snapshot","serp"]},{"type":"array","items":{"type":"string","enum":["site_snapshot","serp"]}}],"description":"Relation source."},"required":false,"description":"Relation source.","name":"source","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether source is present (true) or null (false)."},"required":false,"description":"Filter by whether source is present (true) or null (false).","name":"source_exists","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["site_snapshot","serp"]},{"type":"array","items":{"type":"string","enum":["site_snapshot","serp"]}}],"description":"Exclude rows whose source matches any listed value."},"required":false,"description":"Exclude rows whose source matches any listed value.","name":"source_not","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":100,"description":"Page size (1–100). Defaults to 20."},"required":false,"description":"Page size (1–100). Defaults to 20.","name":"limit","in":"query"},{"schema":{"type":"string","description":"Opaque pagination cursor bound to the current filters."},"required":false,"description":"Opaque pagination cursor bound to the current filters.","name":"cursor","in":"query"},{"schema":{"type":"string","enum":["domain","keyword","source"],"description":"Sort field. Sorting by a field other than the default excludes rows where that field is null."},"required":false,"description":"Sort field. Sorting by a field other than the default excludes rows where that field is null.","name":"sort","in":"query"},{"schema":{"type":"string","enum":["asc","desc"],"description":"Sort direction."},"required":false,"description":"Sort direction.","name":"order","in":"query"}],"responses":{"200":{"description":"A paginated list of relationship edges.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"domain":{"type":"string"},"keyword":{"type":"string"},"source":{"type":"string","enum":["site_snapshot","serp"]}},"required":["domain","keyword","source"]},{"type":"object","properties":{"code":{"type":"string","enum":["pro_required"]},"message":{"type":"string","enum":["This data is available with Pro access."]}},"required":["code","message"]}]}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"]},"total":{"type":"integer"}},"required":["limit","has_more","next_cursor","total"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/keywords":{"get":{"operationId":"listKeywords","tags":["Keywords"],"summary":"List keywords","security":[{"apiKey":[]},{"sessionCookie":[]}],"parameters":[{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Normalized keyword."},"required":false,"description":"Normalized keyword.","name":"keyword","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether keyword is present (true) or null (false)."},"required":false,"description":"Filter by whether keyword is present (true) or null (false).","name":"keyword_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose keyword matches any listed value."},"required":false,"description":"Exclude rows whose keyword matches any listed value.","name":"keyword_not","in":"query"},{"schema":{"type":"string","description":"Keyword substring match. Treated as a literal value."},"required":false,"description":"Keyword substring match. Treated as a literal value.","name":"keyword_contains","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Related domain; a keyword matches when any requested domain has this relation."},"required":false,"description":"Related domain; a keyword matches when any requested domain has this relation.","name":"domain","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose domain matches any listed value."},"required":false,"description":"Exclude rows whose domain matches any listed value.","name":"domain_not","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["low","medium","high"]},{"type":"array","items":{"type":"string","enum":["low","medium","high"]}}],"description":"Advertising competition level."},"required":false,"description":"Advertising competition level.","name":"ads_competition","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether ads_competition is present (true) or null (false)."},"required":false,"description":"Filter by whether ads_competition is present (true) or null (false).","name":"ads_competition_exists","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["low","medium","high"]},{"type":"array","items":{"type":"string","enum":["low","medium","high"]}}],"description":"Exclude rows whose ads_competition matches any listed value."},"required":false,"description":"Exclude rows whose ads_competition matches any listed value.","name":"ads_competition_not","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Intent value contained in the JSON intent array."},"required":false,"description":"Intent value contained in the JSON intent array.","name":"intent","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether intent is present (true) or null (false)."},"required":false,"description":"Filter by whether intent is present (true) or null (false).","name":"intent_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose intent matches any listed value."},"required":false,"description":"Exclude rows whose intent matches any listed value.","name":"intent_not","in":"query"},{"schema":{"type":"number","description":"SEO difficulty. Lower bound, inclusive."},"required":false,"description":"SEO difficulty. Lower bound, inclusive.","name":"kd_min","in":"query"},{"schema":{"type":"number","description":"SEO difficulty. Upper bound, inclusive."},"required":false,"description":"SEO difficulty. Upper bound, inclusive.","name":"kd_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether kd is present (true) or null (false)."},"required":false,"description":"Filter by whether kd is present (true) or null (false).","name":"kd_exists","in":"query"},{"schema":{"type":"number","description":"Global monthly search volume. Lower bound, inclusive."},"required":false,"description":"Global monthly search volume. Lower bound, inclusive.","name":"search_volume_min","in":"query"},{"schema":{"type":"number","description":"Global monthly search volume. Upper bound, inclusive."},"required":false,"description":"Global monthly search volume. Upper bound, inclusive.","name":"search_volume_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether search_volume is present (true) or null (false)."},"required":false,"description":"Filter by whether search_volume is present (true) or null (false).","name":"search_volume_exists","in":"query"},{"schema":{"type":"number","description":"US monthly search volume. Lower bound, inclusive."},"required":false,"description":"US monthly search volume. Lower bound, inclusive.","name":"search_volume_us_min","in":"query"},{"schema":{"type":"number","description":"US monthly search volume. Upper bound, inclusive."},"required":false,"description":"US monthly search volume. Upper bound, inclusive.","name":"search_volume_us_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether search_volume_us is present (true) or null (false)."},"required":false,"description":"Filter by whether search_volume_us is present (true) or null (false).","name":"search_volume_us_exists","in":"query"},{"schema":{"type":"number","description":"Advertising cost per click. Lower bound, inclusive."},"required":false,"description":"Advertising cost per click. Lower bound, inclusive.","name":"ads_cpc_min","in":"query"},{"schema":{"type":"number","description":"Advertising cost per click. Upper bound, inclusive."},"required":false,"description":"Advertising cost per click. Upper bound, inclusive.","name":"ads_cpc_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether ads_cpc is present (true) or null (false)."},"required":false,"description":"Filter by whether ads_cpc is present (true) or null (false).","name":"ads_cpc_exists","in":"query"},{"schema":{"type":"number","description":"Seven-day trend growth percentage. Lower bound, inclusive."},"required":false,"description":"Seven-day trend growth percentage. Lower bound, inclusive.","name":"trend_growth_7d_pct_min","in":"query"},{"schema":{"type":"number","description":"Seven-day trend growth percentage. Upper bound, inclusive."},"required":false,"description":"Seven-day trend growth percentage. Upper bound, inclusive.","name":"trend_growth_7d_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether trend_growth_7d_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether trend_growth_7d_pct is present (true) or null (false).","name":"trend_growth_7d_pct_exists","in":"query"},{"schema":{"type":"number","description":"30-day trend growth percentage. Lower bound, inclusive."},"required":false,"description":"30-day trend growth percentage. Lower bound, inclusive.","name":"trend_growth_30d_pct_min","in":"query"},{"schema":{"type":"number","description":"30-day trend growth percentage. Upper bound, inclusive."},"required":false,"description":"30-day trend growth percentage. Upper bound, inclusive.","name":"trend_growth_30d_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether trend_growth_30d_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether trend_growth_30d_pct is present (true) or null (false).","name":"trend_growth_30d_pct_exists","in":"query"},{"schema":{"type":"number","description":"90-day trend growth percentage. Lower bound, inclusive."},"required":false,"description":"90-day trend growth percentage. Lower bound, inclusive.","name":"trend_growth_90d_pct_min","in":"query"},{"schema":{"type":"number","description":"90-day trend growth percentage. Upper bound, inclusive."},"required":false,"description":"90-day trend growth percentage. Upper bound, inclusive.","name":"trend_growth_90d_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether trend_growth_90d_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether trend_growth_90d_pct is present (true) or null (false).","name":"trend_growth_90d_pct_exists","in":"query"},{"schema":{"type":"number","description":"180-day trend growth percentage. Lower bound, inclusive."},"required":false,"description":"180-day trend growth percentage. Lower bound, inclusive.","name":"trend_growth_180d_pct_min","in":"query"},{"schema":{"type":"number","description":"180-day trend growth percentage. Upper bound, inclusive."},"required":false,"description":"180-day trend growth percentage. Upper bound, inclusive.","name":"trend_growth_180d_pct_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether trend_growth_180d_pct is present (true) or null (false)."},"required":false,"description":"Filter by whether trend_growth_180d_pct is present (true) or null (false).","name":"trend_growth_180d_pct_exists","in":"query"},{"schema":{"type":"string","description":"Record creation timestamp. Lower bound, inclusive."},"required":false,"description":"Record creation timestamp. Lower bound, inclusive.","name":"created_at_min","in":"query"},{"schema":{"type":"string","description":"Record creation timestamp. Upper bound, inclusive."},"required":false,"description":"Record creation timestamp. Upper bound, inclusive.","name":"created_at_max","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether created_at is present (true) or null (false)."},"required":false,"description":"Filter by whether created_at is present (true) or null (false).","name":"created_at_exists","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":100,"description":"Page size (1–100). Defaults to 20."},"required":false,"description":"Page size (1–100). Defaults to 20.","name":"limit","in":"query"},{"schema":{"type":"string","description":"Opaque pagination cursor bound to the current filters."},"required":false,"description":"Opaque pagination cursor bound to the current filters.","name":"cursor","in":"query"},{"schema":{"type":"string","enum":["keyword","kd","search_volume","search_volume_us","ads_cpc","trend_growth_7d_pct","trend_growth_30d_pct","trend_growth_90d_pct","trend_growth_180d_pct","created_at"],"description":"Sort field. Sorting by a field other than the default excludes rows where that field is null."},"required":false,"description":"Sort field. Sorting by a field other than the default excludes rows where that field is null.","name":"sort","in":"query"},{"schema":{"type":"string","enum":["asc","desc"],"description":"Sort direction."},"required":false,"description":"Sort direction.","name":"order","in":"query"}],"responses":{"200":{"description":"A paginated list of keywords.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"keyword":{"type":"string"},"product_opportunity_value":{"type":["string","null"],"enum":["worthwhile","not_worthwhile",null]},"kd":{"type":["number","null"]},"intent":{"type":["array","null"],"items":{"type":"string"}},"search_volume":{"type":["number","null"]},"search_volume_us":{"type":["number","null"]},"ads_cpc":{"type":["number","null"]},"ads_competition":{"type":["string","null"]},"trend_growth_7d_pct":{"type":["number","null"]},"trend_growth_30d_pct":{"type":["number","null"]},"trend_growth_90d_pct":{"type":["number","null"]},"trend_growth_180d_pct":{"type":["number","null"]},"created_at":{"type":"string"}},"required":["keyword","product_opportunity_value","kd","intent","search_volume","search_volume_us","ads_cpc","ads_competition","trend_growth_7d_pct","trend_growth_30d_pct","trend_growth_90d_pct","trend_growth_180d_pct","created_at"]},{"type":"object","properties":{"code":{"type":"string","enum":["pro_required"]},"message":{"type":"string","enum":["This data is available with Pro access."]}},"required":["code","message"]}]}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"]},"total":{"type":"integer"}},"required":["limit","has_more","next_cursor","total"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/keywords/{keyword}":{"get":{"operationId":"getKeyword","tags":["Keywords"],"summary":"Get a keyword","security":[{"apiKey":[]},{"sessionCookie":[]}],"parameters":[{"schema":{"type":"string","description":"URL-encoded keyword."},"required":true,"description":"URL-encoded keyword.","name":"keyword","in":"path"}],"responses":{"200":{"description":"A keyword.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"keyword":{"type":"string"},"product_opportunity_value":{"type":["string","null"],"enum":["worthwhile","not_worthwhile",null]},"kd":{"type":["number","null"]},"intent":{"type":["array","null"],"items":{"type":"string"}},"search_volume":{"type":["number","null"]},"search_volume_us":{"type":["number","null"]},"ads_cpc":{"type":["number","null"]},"ads_competition":{"type":["string","null"]},"trend_growth_7d_pct":{"type":["number","null"]},"trend_growth_30d_pct":{"type":["number","null"]},"trend_growth_90d_pct":{"type":["number","null"]},"trend_growth_180d_pct":{"type":["number","null"]},"created_at":{"type":"string"},"monthly_searches":{"type":["array","null"],"items":{"type":"object","properties":{"month":{"type":"string"},"volume":{"type":"number"},"volume_us":{"type":"number"}},"required":["month","volume"]}},"trend_series_7d":{"type":["array","null"],"items":{"type":"object","properties":{"t":{"type":"string"},"v":{"type":"number"}},"required":["t","v"]}},"trend_series_180d":{"type":["array","null"],"items":{"type":"object","properties":{"t":{"type":"string"},"v":{"type":"number"}},"required":["t","v"]}},"top_regions":{"type":["array","null"],"items":{"type":"object","properties":{"geo":{"type":"string"},"value":{"type":"number"}},"required":["geo","value"]}},"rising_queries":{"type":["array","null"],"items":{"type":"object","properties":{"query":{"type":"string"},"growth_pct":{"type":"number"}},"required":["query","growth_pct"]}},"related_keywords":{"type":["array","null"],"items":{"type":"object","properties":{"keyword":{"type":"string"},"volume":{"type":"number"}},"required":["keyword","volume"]}},"serp_results":{"type":["array","null"],"items":{"type":"object","properties":{"position":{"type":"integer","minimum":1,"description":"Result position, starting at 1."},"title":{"type":"string","description":"Result title."},"url":{"type":"string","description":"Result URL."},"domain":{"type":"string","description":"Result domain."},"snippet":{"type":["string","null"],"description":"Result snippet, when reported."},"result_type":{"type":["string","null"],"description":"Result type, when reported."},"is_paid":{"type":["boolean","null"],"description":"Whether the result is a paid placement."}},"required":["position","title","url","domain"],"additionalProperties":false}}},"required":["keyword","product_opportunity_value","kd","intent","search_volume","search_volume_us","ads_cpc","ads_competition","trend_growth_7d_pct","trend_growth_30d_pct","trend_growth_90d_pct","trend_growth_180d_pct","created_at","monthly_searches","trend_series_7d","trend_series_180d","top_regions","rising_queries","related_keywords","serp_results"]}},"required":["data"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/keywords/{keyword}/sites":{"get":{"operationId":"listKeywordSites","tags":["Relationships"],"summary":"List a keyword's sites","security":[{"apiKey":[]},{"sessionCookie":[]}],"parameters":[{"schema":{"type":"string","description":"URL-encoded keyword."},"required":true,"description":"URL-encoded keyword.","name":"keyword","in":"path"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Related site domain."},"required":false,"description":"Related site domain.","name":"domain","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether domain is present (true) or null (false)."},"required":false,"description":"Filter by whether domain is present (true) or null (false).","name":"domain_exists","in":"query"},{"schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Exclude rows whose domain matches any listed value."},"required":false,"description":"Exclude rows whose domain matches any listed value.","name":"domain_not","in":"query"},{"schema":{"type":"string","description":"Related site domain substring match. Treated as a literal value."},"required":false,"description":"Related site domain substring match. Treated as a literal value.","name":"domain_contains","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether keyword is present (true) or null (false)."},"required":false,"description":"Filter by whether keyword is present (true) or null (false).","name":"keyword_exists","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["site_snapshot","serp"]},{"type":"array","items":{"type":"string","enum":["site_snapshot","serp"]}}],"description":"Relation source."},"required":false,"description":"Relation source.","name":"source","in":"query"},{"schema":{"type":"string","enum":["true","false"],"description":"Filter by whether source is present (true) or null (false)."},"required":false,"description":"Filter by whether source is present (true) or null (false).","name":"source_exists","in":"query"},{"schema":{"anyOf":[{"type":"string","enum":["site_snapshot","serp"]},{"type":"array","items":{"type":"string","enum":["site_snapshot","serp"]}}],"description":"Exclude rows whose source matches any listed value."},"required":false,"description":"Exclude rows whose source matches any listed value.","name":"source_not","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":100,"description":"Page size (1–100). Defaults to 20."},"required":false,"description":"Page size (1–100). Defaults to 20.","name":"limit","in":"query"},{"schema":{"type":"string","description":"Opaque pagination cursor bound to the current filters."},"required":false,"description":"Opaque pagination cursor bound to the current filters.","name":"cursor","in":"query"},{"schema":{"type":"string","enum":["domain","keyword","source"],"description":"Sort field. Sorting by a field other than the default excludes rows where that field is null."},"required":false,"description":"Sort field. Sorting by a field other than the default excludes rows where that field is null.","name":"sort","in":"query"},{"schema":{"type":"string","enum":["asc","desc"],"description":"Sort direction."},"required":false,"description":"Sort direction.","name":"order","in":"query"}],"responses":{"200":{"description":"A paginated list of relationship edges.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"domain":{"type":"string"},"keyword":{"type":"string"},"source":{"type":"string","enum":["site_snapshot","serp"]}},"required":["domain","keyword","source"]},{"type":"object","properties":{"code":{"type":"string","enum":["pro_required"]},"message":{"type":"string","enum":["This data is available with Pro access."]}},"required":["code","message"]}]}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"]},"total":{"type":"integer"}},"required":["limit","has_more","next_cursor","total"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}},"/api/v1/tags":{"get":{"operationId":"listTags","tags":["Tags"],"summary":"List the tag vocabulary","security":[{"apiKey":[]},{"sessionCookie":[]}],"responses":{"200":{"description":"The tag vocabulary grouped by tag type.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}}},"required":["data"]}}}},"400":{"description":"Bad request","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"401":{"description":"Unauthorized","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"403":{"description":"Forbidden","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"404":{"description":"Not found","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"405":{"description":"Method not allowed","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"409":{"description":"Immutable payload, result id, or source snapshot conflict","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"413":{"description":"Payload too large","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"429":{"description":"Too many requests","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."},"Retry-After":{"schema":{"type":"string","description":"Seconds until the next authenticated read can be retried."},"required":false,"description":"Seconds until the next authenticated read can be retried."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"500":{"description":"Internal error","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}},"503":{"description":"Service unavailable","headers":{"cf-ray":{"schema":{"type":"string","description":"Cloudflare request id, for correlating a report with edge logs."},"required":false,"description":"Cloudflare request id, for correlating a report with edge logs."}},"content":{"application/problem+json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["about:blank"]},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","enum":["invalid_request","invalid_param","unknown_param","invalid_cursor","unauthorized","forbidden","pro_required","rate_limited","not_found","method_not_allowed","payload_too_large","batch_too_large","invalid_result","empty_result","cross_group_field","write_conflict","result_id_conflict","summary_conflict","source_snapshot_changed","decision_conflict","product_requires_root","invalid_source","invalid_decision","internal_error"]},"param":{"type":"string"},"allowed":{"type":"array","items":{"type":"string"}}},"required":["type","title","status","detail","code"]}}}}}}}}}