Relationships not showing up in JSON response

I’m in the process of testing Patreon oauth on my project with different accounts. So far, I have set up a creator account and added a 7 day trial tier. On the second account, I have pledged to the 7 day trial tier. I’m not sure if its because my card hasn’t been charged yet (I was hoping to test without making any charges) but when I see the response for the second account it doesn’t include the relationships or included fields.

{
  data: {
    attributes: {
      ...
    },
    id: 'xxxx',
    relationships: {}, <-- this is missing
    type: 'user'
  },
  included: [], <-- this is missing
  links: { self: 'https://www.patreon.com/api/user/xxxx' }
}

As a follow up question, I’m using the “relationships.pledges.data” part of the response to see if a creator’s pledge id is included. Is this the proper way of verifying that a patron is pledged to a specific creator?

Try to make sure that the token that you are using has the proper scopes (permissions) for those resources. The scopes must be acquired at the moment when the user or the creator authorizes the token in the oauth flow.

I have the scopes set as: “identity identity.memberships” when I connect through Patreon on my own account and get a response back with the relationships field included (I’m pledged to another creator).

When trying with the test account (the one pledged to myself), I then have to remove the scopes, because I then get a 403 Forbidden error when allowing access.

Not sure why, but I added identity[email] to scope and that appears to solve my issue.

Email is a scope that must be explicitly requested, yes. If you omitted it, the email wouldnt come in.