direct_send() now uses the same navigation chain in its request header and body for text, links and replies.
- Add optional keyword-only
nav_chain; omitting it preserves the historical body chain. - Support
send_attribute="inbox"alongside the existing attribution values. - Keep navigation overrides local to each request, including overlapping async sends.
- Reject non-printable/non-ASCII chains and leading or trailing whitespace before dispatch.
Thanks @multisteam for the official-app captures that helped establish the request format. Related Direct restrictions remain tracked in instagrapi #2870.