Patreon / platform-documentation

The API documentation for Patreon
https://docs.patreon.com
Other
29 stars 16 forks source link

API docs use terms that are undefined and unclear. #5

Open michaelnugent opened 6 years ago

michaelnugent commented 6 years ago

Question: I am looking to get a full list of people giving money to a Patreon account owner from the API, preferable with one of the official libraries. The docs talk about "user", "campaign" and "pledge" as well as "patron" and "creator". The python API (to choose the first one I looked at) has functions to fetch "user", "campaign", "campaign and patrons" and "page of pledges".

It seems like the "creator" is the Patreon account owner and the "patron" are people who are currently subscribed to that creator. But then what is a "user"? What exactly is a campaign? Why do I need one? Why are patrons assigned to campaigns and not creators? Do I need to iterate over campaigns and then for each campaign look at all the patrons? What is a pledge? Is that a single transaction or a synonym for a person somehow?

Can you please define these terms or point me at the doc I missed?

Thanks!

jrsun commented 6 years ago

Thanks for the feedback. We'll definitely look at adding some of these definitions to our docs. For your reference,

Some of these definitions are a bit circular, and some are context-dependent (for instance, a User could be a Creator (e.g. have their own campaign) but also be a Patron to another User's Campaign.) What you're looking for is probably the list of pledges to the campaign, and from each pledge you can get the user (really patron) associated with the pledge.

Hopefully this helps!

AraHaan commented 4 years ago

@jrsun is it possible to ask the API what a User's campaign id is if you do not know it if you got their access token from them doing oauth into the stuff for things like listing their valid patrons to see whose payment did not go through (successfully)?

ApacheTech commented 2 years ago

To add to this, what Types are the following; and if they are complex Types, what members do we need to supply? I'm scaffolding all this out into C#, and the docs aren't complete.