Adding contact to list always returns invalid VIDs

I am trying to add a contact to a list but I am always geting the same response no matter what request I make. I can add the same contact via the browser without issue. Here’s an example request that I am making:

POST /contacts/v1/lists/201/add HTTP/1.1
Host: api.hubapi.com
Authorization:<token removed>
Accept-Encoding: gzip, deflate
User-Agent: CData Data Provider Engine - Accepts: gzip
Content-Type: application/json
Content-Length: 23

{ “vids”: [ 6224402 ] }

I’ve also tried the following POST data as well:

{ “emails”: [ “<some email>” ] }
{ “vids”: [ 6224402 ], “emails”: [ “<some email>” ] }

This is the response I am receving for all of these requests:

{“updated”:[],“discarded”:[],“invalidVids”:[6224402],“invalidEmails”:[]}

Notably, the HubSpot server is able to resolve the VID when I just submit the email address so it’s especially weird that the VID is being reported as invalid. Am I missing something that is preventing this request from working?

Hi, @jonathan0wens.

Interesting… I used the same request and was able to add that contact to your list. I’ll DM you with screenshots of the request.

After working with @IsaacTakushi on this, we found that the user I was connecting with was missing the Marketing permission so even though I could see the lists, I couldn’t add to them. In the end, this combination of permissions allowed the request to go through successfully:

Contacts
Admin
Sales
Marketing