Patron_goals not public

If a campaign’s “display_patron_goals” is set to true, and the user has patron goals set, the “patron_goal” objects are not provided by the API the same way the normal “goal” objects are. Can the “patron_goal” objects be made available with the same permissions as “goal” objects?

Hey Dliebner,
Unfortunately, we don’t have plans to expose goals on the public API any time soon. The API’s core functionality is providing third party developers the answer to the question “who is entitled to what?”. We want to keep the core API focused in this way to help guide developers like yourself into building tools for creators that help them provide long lasting value to patrons.

Thanks for the question,
Spencer
Platform Team

1 Like

You already do expose goals on the API, just not patron goals.

We’re a comic platform. We currently display goals on a comic’s profile if it’s connected to Patreon: http://www.smackjeeves.com/comicprofile.php?id=75498

This adds value to creators by drawing attention to their Patreon page (which is linked) and adds value to our platform by signifying to creators that we’re integrated with Patreon. Some creators who have the “display patron goals” option set to true specifically requested that we display those goals on their comic profile page. Please reconsider.

1 Like

Ah I see! understood! I’ll chat with the team to see how this fits in with our roadmap. Thanks for surfacing this.

2 Likes

Any updates on this?

Hey @dliebner, it turns out we do support this. Just put this in the request params include=patron_goals .

Hope that’s helpful!
-Spencer

1 Like

Awesome, thanks so much! I’ll get on updating our integration.

If I just fetch /current_user I get all of the user info including all relationships, such as campaigns, goals, rewards, etc. What do I need to put in include= to get all of this plus patron_goals? I tried /current_user?include=patron_goals and I just get their basic profile information with none of the aforementioned relationships. We prefer to get everything in one call to minimize the number of API calls we make (we also cache this data).

You’d want to use /current_user?include=campaign.patron_goals because patron_goals are located on the campaign resource instead of the user.

EDIT: Because of a bug in the current_user endpoint, the above will only work if you have multi-campaign permissions. If you don’t, you’ll need to use /current_user/campaigns?include=patron_goals instead.