system-prompts-and-models-o.../dealix/docs/architecture/API_MAP.md
2026-05-01 14:03:52 +03:00

14 KiB

Dealix API Map

Auto-generated from api/routers/*.py. Total: 145 endpoints.

Method Path Router Function Description
GET /api/v1/admin/approvals/pending admin approvals_pending
POST /api/v1/admin/approvals/request admin approvals_request
GET /api/v1/admin/approvals/stats admin approvals_stats
GET /api/v1/admin/approvals/{request_id} admin approvals_get
POST /api/v1/admin/approvals/{request_id}/decide admin approvals_decide Trigger a Sentry test error — verify DSN is live.
GET /api/v1/admin/cache/stats admin cache_stats Semantic cache hit/miss stats.
GET /api/v1/admin/costs admin costs Aggregate LLM spend over the last N hours.
GET /api/v1/admin/dlq/stats admin dlq_stats Dead-letter queue depth and last errors across all queues.
POST /api/v1/admin/dlq/{queue}/drain admin dlq_drain Remove up to limit items from a DLQ. Caller is responsible for replay.
GET /api/v1/admin/dlq/{queue}/peek admin dlq_peek Inspect the first N items in a DLQ without removing them.
GET /api/v1/admin/sentry-check admin sentry_check Trigger a Sentry test error — verify DSN is live.
POST /api/v1/agents/icp-match agents run_icp_match
POST /api/v1/agents/intake agents run_intake
POST /api/v1/agents/pain-extractor agents run_pain_extractor
POST /api/v1/agents/research agents run_research
POST /api/v1/automation/daily-targeting/run automation run_daily_targeting
POST /api/v1/automation/followups/run automation run_followups
POST /api/v1/automation/reply/classify automation classify_reply_endpoint Health summary — counts of today's sends, replies, suppressions.
GET /api/v1/automation/status automation automation_status Health summary — counts of today's sends, replies, suppressions.
POST /api/v1/compliance/check-outreach automation compliance_check
GET /api/v1/admin/db-diag autonomous db_diag Show DATABASE_URL prefix (redacted) + try a simple query.
POST /api/v1/admin/init-db autonomous admin_init_db Force-create all tables. Idempotent. Public for debug — secure in prod.
POST /api/v1/admin/test-insert autonomous admin_test_insert Insert one test row and report exact error if it fails.
POST /api/v1/channels/policy autonomous channel_policy
POST /api/v1/companies/intake autonomous company_intake
POST /api/v1/conversations autonomous create_conversation
GET /api/v1/conversations autonomous list_conversations
POST /api/v1/customers/onboard autonomous customer_onboard Mark customer onboarding milestone.
GET /api/v1/dashboard/metrics autonomous dashboard_metrics
POST /api/v1/deals autonomous create_deal
GET /api/v1/deals autonomous list_deals
PATCH /api/v1/deals/{deal_id} autonomous update_deal
POST /api/v1/integrations/google-lead-form autonomous alias_google_lead
POST /api/v1/integrations/meta-lead-form autonomous alias_meta_lead
POST /api/v1/leads/import/google-ads autonomous import_google_lead
POST /api/v1/leads/import/meta autonomous import_meta_lead
POST /api/v1/outreach/queue autonomous queue_outreach Add an outreach item to queue (one-by-one human-final-send model for restricted channels).
GET /api/v1/outreach/queue autonomous list_queue
PATCH /api/v1/outreach/queue/{queue_id} autonomous update_queue_item
POST /api/v1/partners/intake autonomous partner_intake Add a partner (agency / implementation / referral / strategic).
POST /api/v1/payments/manual-request autonomous manual_payment_request Mark deal as payment_requested + create matching task.
POST /api/v1/payments/mark-paid autonomous mark_paid Mark deal as paid + auto-create customer onboarding.
POST /api/v1/tasks autonomous create_task
GET /api/v1/tasks autonomous list_tasks
PATCH /api/v1/tasks/{task_id} autonomous update_task
GET /api/v1/data/accounts data list_accounts
GET /api/v1/data/accounts/{account_id} data get_account
POST /api/v1/data/accounts/{account_id}/score data score_account Recompute score from current data in the graph.
POST /api/v1/data/import data create_import
POST /api/v1/data/import/{import_id}/dedupe data dedupe_import Match accounts created by this import against the existing graph.
POST /api/v1/data/import/{import_id}/enrich data enrich_import
POST /api/v1/data/import/{import_id}/normalize data normalize_import
GET /api/v1/data/import/{import_id}/report data import_report
GET /api/v1/data/imports data list_imports
GET /api/v1/data/sources/catalog data list_data_sources Compliance-graded Saudi business data source catalog.
POST /api/v1/data/suppression data add_suppression
GET /api/v1/data/suppression data list_suppression
POST /api/v1/accounts/{account_id}/brief dominance account_brief
POST /api/v1/automation/score-tuner/run dominance score_tuner_run
POST /api/v1/customers/{customer_id}/proof-pack dominance customer_proof_pack
GET /api/v1/dashboard/dominance dominance dashboard_dominance
GET /api/v1/objections/bank dominance objections_bank Return all 13 objection categories with response drafts.
POST /api/v1/offers/route dominance offers_route
POST /api/v1/partners/revenue-machine/run dominance partners_revenue_machine_run
GET /api/v1/signals/account/{account_id} dominance get_signals_for_account Return persisted SignalRecord rows + freshly-detected signals.
POST /api/v1/automation/daily-report/generate drafts automation_daily_report_generate
GET /api/v1/automation/revenue-machine/export drafts revenue_machine_export
POST /api/v1/automation/revenue-machine/run drafts revenue_machine_run
GET /api/v1/dashboard/revenue-machine/history drafts dashboard_revenue_machine_history Last N days of revenue machine output (default 14).
GET /api/v1/dashboard/revenue-machine/today drafts dashboard_revenue_machine_today
POST /api/v1/gmail/drafts/create drafts gmail_drafts_create Create a single Gmail draft. Body: to_email, subject, body_plain, account_id.
POST /api/v1/gmail/drafts/create-batch drafts gmail_drafts_create_batch
GET /api/v1/gmail/drafts/today drafts gmail_drafts_today
POST /api/v1/linkedin/drafts/create drafts linkedin_drafts_create Create a LinkedIn draft. NEVER auto-sent. Body: company_name, message_ar, optional rest.
GET /api/v1/linkedin/drafts/today drafts linkedin_drafts_today
POST /api/v1/linkedin/drafts/{draft_id}/manual-capture drafts linkedin_drafts_manual_capture
PATCH /api/v1/linkedin/drafts/{draft_id}/mark-sent drafts linkedin_drafts_mark_sent Sami marks 'I sent this manually'. Updates status + sent_at.
POST /api/v1/replies/respond drafts replies_respond
POST /api/v1/replies/route drafts replies_route
POST /api/v1/email/connect/gmail email_send connect_gmail Returns the exact 8-step OAuth setup Sami runs once locally.
POST /api/v1/email/replies/sync email_send replies_sync
POST /api/v1/email/send-approved email_send send_approved
POST /api/v1/email/send-batch email_send send_batch
GET /api/v1/email/status email_send email_status
POST /api/v1/os/bulk-process full_os os_bulk_process
POST /api/v1/os/process full_os os_process
POST /api/v1/os/process-and-act full_os os_process_and_act
GET /api/v1/os/stages full_os list_stages Show all 12 stages + allowed transitions.
POST /api/v1/os/test-send full_os os_test_send
GET /api/v1/os/whatsapp-providers full_os whatsapp_providers_status Which WhatsApp providers are configured + the smart-fallback chain order.
GET /_test_sentry health test_sentry Deliberate error to verify Sentry integration.
GET /health health health Liveness + config summary.
GET /health/deep health health_deep Deep health check — verifies DB, Redis, LLM providers.
GET /healthz health healthz Standard healthz alias for UptimeRobot/K8s probes.
GET /live health live Liveness probe.
GET /ready health ready Readiness probe.
POST /api/v1/leads leads create_lead Submit a new lead — runs through the full acquisition pipeline.
POST /api/v1/leads/discover/local leads discover_local_endpoint Saudi local lead engine — chains Google Places → SerpApi → Apify → static.
GET /api/v1/leads/discover/local-industries leads list_local_industries Saudi local lead engine — chains Google Places → SerpApi → Apify → static.
POST /api/v1/leads/discover/web leads discover_web_endpoint Web lead discovery via SearchProvider chain (Google CSE → Tavily → static).
POST /api/v1/leads/enrich/batch leads enrich_batch_endpoint
POST /api/v1/leads/enrich/full leads enrich_full_endpoint
POST /api/v1/outreach/prepare-from-data outreach prepare_from_data
GET /api/v1/outreach/queue outreach list_queue
POST /api/v1/outreach/queue/{queue_id}/approve outreach approve_queue
POST /api/v1/outreach/queue/{queue_id}/skip outreach skip_queue
POST /api/v1/checkout pricing create_checkout
GET /api/v1/pricing/plans pricing list_plans List available plans. Not linked from landing — required for approval-gated quotes.
POST /api/v1/webhooks/moyasar pricing moyasar_webhook
POST /api/v1/prospect/bulk-enrich prospect bulk_enrich
POST /api/v1/prospect/contacts prospect contacts
POST /api/v1/prospect/demo prospect demo Canned demo response for landing UI preview. No LLM call.
POST /api/v1/prospect/discover prospect discover
POST /api/v1/prospect/enrich-domain prospect enrich_domain
POST /api/v1/prospect/enrich-tech prospect enrich_tech
POST /api/v1/prospect/inbound/email prospect inbound_email
POST /api/v1/prospect/inbound/form prospect inbound_form
POST /api/v1/prospect/inbound/handle prospect inbound_handle
POST /api/v1/prospect/inbound/linkedin prospect inbound_linkedin
POST /api/v1/prospect/inbound/sms prospect inbound_sms
POST /api/v1/prospect/inbound/whatsapp prospect inbound_whatsapp
POST /api/v1/prospect/message prospect message_endpoint
POST /api/v1/prospect/route prospect route_endpoint
POST /api/v1/prospect/score prospect score_endpoint
POST /api/v1/prospect/search prospect search
GET /api/v1/prospect/search-diag prospect search_diag Diagnose env var presence without revealing values.
GET /api/v1/prospect/use-cases prospect list_use_cases
POST /api/v1/public/demo-request public demo_request Public landing form — captures demo request and returns Calendly booking URL.
GET /api/v1/public/health public public_health Unauthenticated health probe for landing page to show live status.
POST /api/v1/public/partner-application public partner_application Public partner signup — for agencies/freelancers/consultants.
POST /api/v1/customers/daily-report revenue customers_daily_report
POST /api/v1/leads/score revenue score_lead_body
POST /api/v1/negotiation/respond revenue negotiation_respond
POST /api/v1/partners/deal revenue partners_deal
POST /api/v1/partners/outreach revenue partners_outreach
POST /api/v1/sales/proposal sales generate_proposal Generate a proposal on demand (outside the pipeline).
POST /api/v1/sales/script sales build_script Return a bilingual sales script for a given sector + type.
GET /api/v1/sectors/best/opportunity sectors best_opportunity Return the highest-leverage sector.
POST /api/v1/sectors/content sectors generate_content Generate a content piece for a sector topic.
GET /api/v1/sectors/target/list sectors target_sectors Our top-5 target sectors.
GET /api/v1/sectors/{sector} sectors sector_intel Deep intel for one Saudi sector.
POST /api/v1/webhooks/calendly webhooks calendly_webhook Receive Calendly event lifecycle notifications.
POST /api/v1/webhooks/hubspot webhooks hubspot_webhook Receive HubSpot subscription events.
GET /api/v1/webhooks/whatsapp webhooks whatsapp_verify Meta WhatsApp webhook verification.
POST /api/v1/webhooks/whatsapp webhooks whatsapp_incoming Handle incoming WhatsApp messages — route them as leads.

By router

  • admin: 11 endpoints
  • agents: 4 endpoints
  • automation: 5 endpoints
  • autonomous: 25 endpoints
  • data: 12 endpoints
  • dominance: 8 endpoints
  • drafts: 14 endpoints
  • email_send: 5 endpoints
  • full_os: 6 endpoints
  • health: 6 endpoints
  • leads: 6 endpoints
  • outreach: 4 endpoints
  • pricing: 3 endpoints
  • prospect: 18 endpoints
  • public: 3 endpoints
  • revenue: 5 endpoints
  • sales: 2 endpoints
  • sectors: 4 endpoints
  • webhooks: 4 endpoints