{"ok":true,"cached":true,"plan":{"sql":"SELECT full_name, title, total_users_30d, runs30_total, hard_failure_rate, months_since_modified, opportunity_score, CASE WHEN pricing_model = 'FREE' OR COALESCE(price_usd, 0) <= 0 THEN 0.0 WHEN pricing_model = 'FLAT_PRICE_PER_MONTH' THEN COALESCE(total_users_30d, 0) * 0.15 * COALESCE(price_usd, 0) WHEN pricing_model = 'PRICE_PER_DATASET_ITEM' THEN (COALESCE(runs30_total, 0) * (1 - LEAST(GREATEST(COALESCE(hard_failure_rate, 0), 0), 1))) * 50 * COALESCE(price_usd, 0) * 0.80 WHEN pricing_model = 'PAY_PER_EVENT' THEN CASE WHEN CASE WHEN COALESCE(price_usd, 0) >= 10 THEN COALESCE(total_users_30d, 0) * 1 * COALESCE(price_usd, 0) * 0.80 WHEN COALESCE(price_usd, 0) >= 1 THEN COALESCE(total_users_30d, 0) * 10 * COALESCE(price_usd, 0) * 0.80 ELSE NULL END IS NULL THEN ((COALESCE(runs30_total, 0) * (1 - LEAST(GREATEST(COALESCE(hard_failure_rate, 0), 0), 1))) * CASE WHEN COALESCE(price_usd, 0) >= 1 THEN 1 WHEN COALESCE(price_usd, 0) >= 0.1 THEN 2 WHEN COALESCE(price_usd, 0) >= 0.01 THEN 10 ELSE 50 END * COALESCE(price_usd, 0) * 0.80) ELSE LEAST(((COALESCE(runs30_total, 0) * (1 - LEAST(GREATEST(COALESCE(hard_failure_rate, 0), 0), 1))) * CASE WHEN COALESCE(price_usd, 0) >= 1 THEN 1 WHEN COALESCE(price_usd, 0) >= 0.1 THEN 2 WHEN COALESCE(price_usd, 0) >= 0.01 THEN 10 ELSE 50 END * COALESCE(price_usd, 0) * 0.80), CASE WHEN COALESCE(price_usd, 0) >= 10 THEN COALESCE(total_users_30d, 0) * 1 * COALESCE(price_usd, 0) * 0.80 WHEN COALESCE(price_usd, 0) >= 1 THEN COALESCE(total_users_30d, 0) * 10 * COALESCE(price_usd, 0) * 0.80 ELSE NULL END) END ELSE 0.0 END AS est_monthly_revenue, pricing_model, allows_agentic_users, categories, target_platform, volatility_risk, url, (detail_embedding <=> '<qvec>'::vector) AS distance FROM apify.actor WHERE detail_embedding IS NOT NULL ORDER BY detail_embedding <=> '<qvec>'::vector LIMIT 10","mode":"vector","view":"auto","limit":10,"notes":["sql path failed (DatabaseError: {'S': 'ERROR', 'V': 'ERROR', 'C': '42803', 'M': 'column \"actor.detail_embedding\" must appear in the GROUP BY clause or be used in an aggregate function', 'P': '369', 'F': 'parse_agg.c', 'L': '1439', 'R': 'check_ungrouped_columns_walker'}); fell back to vector"],"offset":0,"rationale":"pg vector path (Text-to-SQL / vector over pgvector)"},"results":[{"key":"https://apify.com/apify/rental-to-pay-per-event-calculator","url":"https://apify.com/apify/rental-to-pay-per-event-calculator","score":0.4697,"title":"apify/rental-to-pay-per-event-calculator","runs_30d":73,"users_30d":33,"categories":"[\"DEVELOPER_TOOLS\"]","pricing_model":"FREE","hard_failure_rate":0.164384,"opportunity_score":0.0224,"allowsAgenticUsers":false,"months_since_modified":0.42707,"estimated_monthly_revenue":0},{"key":"https://apify.com/lukaskrivka/rental-as-ppe-example","url":"https://apify.com/lukaskrivka/rental-as-ppe-example","score":0.4558,"title":"lukaskrivka/rental-as-ppe-example","runs_30d":29,"users_30d":2,"categories":"[\"OTHER\", \"OPEN_SOURCE\"]","pricing_model":"PAY_PER_EVENT","hard_failure_rate":0,"opportunity_score":0.0249,"allowsAgenticUsers":true,"estimated_monthly_revenue":0.0115999997069594},{"key":"https://apify.com/vivid_astronaut/dynamic-pricing","url":"https://apify.com/vivid_astronaut/dynamic-pricing","score":0.4132,"title":"vivid_astronaut/dynamic-pricing","runs_30d":29,"users_30d":2,"categories":"[\"DEVELOPER_TOOLS\"]","pricing_model":"PAY_PER_EVENT","hard_failure_rate":0,"opportunity_score":0.0249,"allowsAgenticUsers":true,"estimated_monthly_revenue":0.0579999985347968},{"key":"https://apify.com/adept-training-center/real-estate-gentrification-permit-ai","url":"https://apify.com/adept-training-center/real-estate-gentrification-permit-ai","score":0.3971,"title":"adept-training-center/real-estate-gentrification-permit-ai","runs_30d":29,"users_30d":1,"categories":"[\"AGENTS\", \"AI\", \"REAL_ESTATE\"]","pricing_model":"PAY_PER_EVENT","hard_failure_rate":0,"opportunity_score":0.0235,"allowsAgenticUsers":true,"estimated_monthly_revenue":0.521999991033226},{"key":"https://apify.com/silentflow/trulia-rental-scraper-ppe","url":"https://apify.com/silentflow/trulia-rental-scraper-ppe","score":0.3959,"title":"silentflow/trulia-rental-scraper-ppe","runs_30d":37,"users_30d":1,"categories":"[\"REAL_ESTATE\", \"LEAD_GENERATION\", \"AUTOMATION\"]","pricing_model":"PAY_PER_EVENT","hard_failure_rate":0.0540541,"opportunity_score":0.0248,"allowsAgenticUsers":true,"estimated_monthly_revenue":2.2399999403134},{"key":"https://apify.com/apify/openrouter","url":"https://apify.com/apify/openrouter","score":0.393,"title":"apify/openrouter","runs_30d":18477,"users_30d":187,"categories":"[\"AI\", \"AGENTS\"]","pricing_model":"PAY_PER_EVENT","hard_failure_rate":0.0030308,"opportunity_score":0.0571,"allowsAgenticUsers":false,"months_since_modified":0.492773,"estimated_monthly_revenue":73.683998131502},{"key":"https://apify.com/malikgen/rental-cars-price-scraper","url":"https://apify.com/malikgen/rental-cars-price-scraper","score":0.3913,"title":"malikgen/rental-cars-price-scraper","runs_30d":112,"users_30d":7,"categories":"[\"TRAVEL\", \"ECOMMERCE\", \"BUSINESS\"]","pricing_model":"PAY_PER_EVENT","hard_failure_rate":0,"opportunity_score":0.0329,"allowsAgenticUsers":false,"months_since_modified":0.262812,"estimated_monthly_revenue":40.3199982643127},{"key":"https://apify.com/sian.agency/str-investor-market-lens","url":"https://apify.com/sian.agency/str-investor-market-lens","score":0.3894,"title":"sian.agency/str-investor-market-lens","runs_30d":28,"users_30d":1,"categories":"[\"REAL_ESTATE\", \"AUTOMATION\", \"LEAD_GENERATION\"]","pricing_model":"PAY_PER_EVENT","hard_failure_rate":0,"opportunity_score":0.0243,"allowsAgenticUsers":true,"estimated_monthly_revenue":8.95999979972839},{"key":"https://apify.com/neatrat/upwork-job-scraper","url":"https://apify.com/neatrat/upwork-job-scraper","score":0.389,"title":"neatrat/upwork-job-scraper","runs_30d":250620,"users_30d":620,"categories":"[\"AUTOMATION\", \"LEAD_GENERATION\", \"JOBS\"]","pricing_model":"PAY_PER_EVENT","hard_failure_rate":0.00353124,"opportunity_score":0.0692,"allowsAgenticUsers":false,"months_since_modified":0.492773,"estimated_monthly_revenue":34962.9010802628},{"key":"https://apify.com/lukaskrivka/actor-costs","url":"https://apify.com/lukaskrivka/actor-costs","score":0.387,"title":"lukaskrivka/actor-costs","runs_30d":2,"users_30d":2,"categories":"[\"AUTOMATION\", \"DEVELOPER_TOOLS\", \"OPEN_SOURCE\"]","pricing_model":"FREE","hard_failure_rate":0.5,"opportunity_score":0.0074,"allowsAgenticUsers":false,"estimated_monthly_revenue":0}],"answer":null,"meta":{"q":"actors+forced+to+migrate+from+rental+to+pay-per-usage","mode":"query","view":"auto","page":1,"limit":10}}