Guest API POST /api/v2/conversations/messaging/contacts returns 403 Forbidden

I’m trying to bypass the standard Messenger widget to send messages directly via the Guest API for a custom internal tool. The docs say I just need to POST to /api/v2/conversations/messaging/contacts with my org ID and a user profile.

Here is the payload I’m sending:

{
 "profileName": "TestGuest",
 "orgId": "my-org-id"
}

I’m getting a 403 Forbidden error immediately. I thought I only needed the OAuth token with the messaging:contact:create scope, which I have. Is there another permission I’m missing or is the endpoint different for pure API usage without the webchat UI?