Agent not appearing in catalog
Check in this order.
1. Status
draft and inactive agents are filtered from the public catalog.
curl https://api.fleapo.ai/agents/by-slug/<slug> | jq '.data.status'
Should be active or coming_soon for it to show up. Update via POST /agents/:id { status: 'active' }.
2. Frontend cache
The marketplace UI uses React Query with staleTime: 60s on catalog. Hard refresh:
- Chrome: ⌘+Shift+R.
- DevTools → Application → Storage → Clear site data.
3. CDN cache
Cloudflare Pages caches HTML. After a deploy, force purge:
npx wrangler pages deployment list
# Or via dashboard: Pages → project → Settings → Purge cache
4. Tag mismatch
If you visited /agents?tag=<slug> and your agent doesn't have that tag, it won't appear. Drop the tag filter or attach the tag.
5. featured / isNew flags
If you expect it on the homepage featured strip, featured: true must be set.
POST /agents/<id>
{ "featured": true }
The homepage's featured carousel filters on featured AND status === 'active'.
6. Search query
The header search input filters the catalog client-side. If you have a query active, the agent must match it. Clear the search box.
7. The agent exists but no pricing tiers
The detail page renders fine without pricing, but the catalog cards show a pricing badge. If pricing is missing the card may render unexpectedly. Create at least one tier.
8. Mock data is shadowing the live API
Check src/data/agents.ts for a mock entry with the same slug. The live API takes precedence when present, but a stale mock might confuse you while debugging.
9. The build didn't pick up your changes
Verify the deployed bundle has your changes:
- Network tab → check the JS bundle hash matches the latest deploy.
- View source → grep for a string you added recently.
10. The user doesn't have access
If you're testing as an org_member and the agent is in a state visible only to admins (e.g. draft), the API returns it filtered. Sign in as platform_admin and try /admin/agents — if it appears there, the issue is status visibility.
11. Database write failed silently
Confirm the row actually exists:
SELECT id, slug, status FROM agents WHERE slug = '<slug>';
If absent, the POST request returned an error envelope. Re-run with the response logged.
12. CORS / network failure swallowed the response
DevTools → Network tab. If the catalog endpoint shows a CORS error, the request never reached the server. See CORS and cookies.