back_bone · the sukoon platform backendEverything Sukoon did ran through two Lambdas.
Users, experts, calls, payments, WhatsApp, events, games and content for Sukoon Unlimited, an agetech startup for elderly people: one Flask API serves the app and the admin desk, and a scheduler wakes every five minutes to book calls, send reminders and keep experts online.
83api endpoints
2lambda functions
5 minscheduler heartbeat
10kactive users served
01 — the api, by domain83 endpoints, one square each
gamesProcessor is a Flask-RESTful app behind API Gateway, adapted to Lambda with aws-wsgi. Each square below is one /actions/… route, grouped into domains by hand.
sukoon appadmin deskwhatsapp · calls · cashfree
gamesProcessor
flask on lambda
mongodbs3slack · fcm · openai
Payments11
cashfree orders and webhooks, plans, balance, offersContent and AI10
chat, blog, songs, photos, shorts, dall-e, promptsGames10
quiz and card games, leaderboard, winners, rewardsExperts9
profiles, applicants, slots, schedules, scores, vacationsUsers8
profiles, engagement, referrals, clubs, beta testersCalls and escalation7
place calls, call-platform webhooks, escalationsEvents7
workshops, registrations, contributions, interestsAdmin and analytics7
dashboard stats, leads, logs, remarks, historiesWhatsApp6
send, templates, webhooks, historyPush5
fcm tokens and templatesAuth3
otp send and verify, admin login 83 routes · domain split is a hand grouping02 — the schedulerEvery five minutes, the jobs run side by side
A rate(5 minutes) rule fires the scheduler Lambda. A thread pool runs its jobs in parallel, and due calls and messages go back through the API’s own /actions/call and /actions/send_whatsapp, so there is one path for everything.
schedulesrecurring_schedules → schedules → handle_call_job · handle_wa_job
event remindersevents_reminders_lister → event_reminder
expert statusauto_online_job · experts_status_job
emails · db backupemails_reader · db_backup
lane names are labels; each lane lists its real job modules03 — one call, across the platform
Booked here, placed here, scored by mark8
A senior books a slot
In the app, or through ARK-I on WhatsApp.
The schedule is stored
Recurring bookings expand into one-off schedules.
A scheduler tick finds it due
Nudges both people on WhatsApp and pings Slack.
The call is placed
Through /actions/call; the call platform reports back over webhooks.
mark8 reads and scores it
Topics, personas and a conversation score land on the call.
Problems escalate
Escalations reach the team before anyone has to ask.
python · flask-restfulaws lambda · amplify · api gatewayaws-wsgimongodbs3cashfreefirebase fcmopenaiwhatsappslack