{"ok":true,"tool":"Sleep Cycle Calculator","operation":"calculateSleepCycle","description":"Suggest optimal bedtimes (to wake at a given time) or wake-up times (going to bed now) based on 90-minute sleep cycles.","method":"POST","endpoint":"/api/sleep-cycle-calculator","webUrl":"https://ultraquick.tools/tools/sleep-cycle-calculator","parameters":{"type":"object","properties":{"mode":{"type":"string","enum":["wake-at","sleep-now"],"description":"wake-at finds bedtimes for a target wake time; sleep-now finds wake times from a sleep time."},"time":{"type":"string","description":"The anchor time in 24-hour HH:MM format (the wake time for wake-at, or the sleep time for sleep-now)."},"cycleLength":{"type":"number","description":"Length of one sleep cycle in minutes (default 90)."},"fallAsleepMinutes":{"type":"number","description":"Minutes to fall asleep before the first cycle (default 15)."},"minCycles":{"type":"number","description":"Minimum number of cycles to suggest (default 3)."},"maxCycles":{"type":"number","description":"Maximum number of cycles to suggest (default 6)."}},"required":["mode","time"]},"response":{"type":"object","properties":{"mode":{"type":"string","description":"The mode used."},"anchorTime":{"type":"string","description":"The anchor clock time (HH:MM)."},"cycleLength":{"type":"number","description":"Cycle length in minutes."},"fallAsleepMinutes":{"type":"number","description":"Fall-asleep minutes applied."},"results":{"type":"array","description":"Suggested times from most to fewest cycles, each with cycles, sleep minutes, total minutes, clock time, and a recommended flag."},"recommended":{"type":"array","description":"The recommended (5-6 cycle) suggestions."}}},"example":{"request":{"mode":"wake-at","time":"07:00"},"response_shape":{"type":"object","properties":{"mode":{"type":"string","description":"The mode used."},"anchorTime":{"type":"string","description":"The anchor clock time (HH:MM)."},"cycleLength":{"type":"number","description":"Cycle length in minutes."},"fallAsleepMinutes":{"type":"number","description":"Fall-asleep minutes applied."},"results":{"type":"array","description":"Suggested times from most to fewest cycles, each with cycles, sleep minutes, total minutes, clock time, and a recommended flag."},"recommended":{"type":"array","description":"The recommended (5-6 cycle) suggestions."}}}},"howToCall":"POST a JSON body to https://ultraquick.tools/api/sleep-cycle-calculator. Returns {\"ok\":true,\"result\":{...}} on success or {\"ok\":false,\"error\":\"...\"} on failure. No auth, CORS-enabled.","parametersSummary":"  mode (string, required, one of: wake-at|sleep-now) — wake-at finds bedtimes for a target wake time; sleep-now finds wake times from a sleep time.\n  time (string, required) — The anchor time in 24-hour HH:MM format (the wake time for wake-at, or the sleep time for sleep-now).\n  cycleLength (number, optional) — Length of one sleep cycle in minutes (default 90).\n  fallAsleepMinutes (number, optional) — Minutes to fall asleep before the first cycle (default 15).\n  minCycles (number, optional) — Minimum number of cycles to suggest (default 3).\n  maxCycles (number, optional) — Maximum number of cycles to suggest (default 6).","curlExample":"curl -X POST https://ultraquick.tools/api/sleep-cycle-calculator -H \"Content-Type: application/json\" -d '{\"mode\":\"wake-at\",\"time\":\"07:00\"}'"}