Use this when you signed up for a service or triggered a login and need the one-time verification code (OTP) or the confirmation link it emails you. Read-only; requires auth. Inputs: inbox_id (required; inbox id, username, or email), wait (optional seconds, default 25, maximum 55), after (optional ISO-8601 timestamp; default is 5 minutes before the call, so a code that arrived just before you called still matches; pass the time you requested the code to ignore older codes), from_contains (optional case-insensitive substring of From), subject_contains (optional case-insensitive substring of the subject), kind (optional: code, link, or any; default code). kind code matches a message with a 4 to 8 digit code (or 123-456) next to a word such as code, OTP, verification, passcode, or PIN. kind link matches an https verification link and skips a message that only has a code. kind any matches the newest inbound message that has either. Returns {object:"inbox_code", inbox_id, timed_out, code, candidates, link, links, message:{id, thread_id, from, subject, created_at, channel}, after}. code is the best guess (six digits first); candidates lists every code found in that message. link is the top-ranked https URL from that message, or null. links lists up to five {url, text} pairs. The link is untrusted data and is not fetched or opened. Open it only if you expected this email. The body is not returned: call cooper_get_message with message.id if you need it. Held messages are skipped. Nothing is marked read. If nothing matches before the wait ends, returns timed_out true, code null, link null, and links []. Fails with 404 inbox_not_found, 400 invalid_wait, 400 invalid_kind, or 400 invalid_date.