Webhook JSON was changed without notification


#1

So I’m not sure If I didn’t know where to look, or if I just didn’t get the memo, but the JSON body of the webhook for New/Updated/Deleted Members was changed, and I didn’t know.

We’re starting a webshow, with account details on our website depending on the information we receive from Patreon about our Patrons. Fortunately, we are still in development and haven’t launched yet, but I was really surprised when my webhook script stopped working in some areas. It was an easy issue to solve, but if we had launched, I might not have seen the errors till it was a bigger problem.

It might just ignorance on my part, but Is there a Dev Page that I missed that announced this update that I can check regularly for future changes? Is there an email that I can sign up for that would notify me of upcoming updates?

And if not, is this something that can be added soon?


#2

Hey there! We did recently make some changes, and tried to send an email to all affected developers (all developers who had made a webhook) multiple weeks before the changes went out.

Thanks for your patience here, can you send what you’re seeing different in the data so I can confirm if that’s expected or not?


#3

Hey! Sure thing. Honestly, the main thing that changed was where the email for Patrons was listed, other than that, It wasn’t a big deal. As far as the email, I looked back through the emails I received from Patreon before posting this, but didn’t see anything. What was the address it was sent from? I want to prioritize it so I don’t miss it haha

I created a Dummy account to test out my own PHP scripts, so this is the code I received from it. I don’t remember what action it was, but I don’t think it makes any difference right?

This is the old body I received:

   { 
	"data":{
		"attributes":{
			"currently_entitled_amount_cents":249,
			"email":"grobinxxxx@gmail.com",
			"full_name":"Bill Tester",
			"is_follower":false,
			"last_charge_date":null
			,
			"last_charge_status":null,
			"lifetime_support_cents":0,
			"note":"",
			"patron_status":"active_patron",
			"pledge_relationship_start":"2018-09-21T22:22:02.086407+00:00",
			"will_pay_amount_cents":249
		},
		
    		"id":"7700b88e-04d8-40d4-9102-c3fe7840ce2c",
    		
    		"relationships":{
    			
    			"address":{
    				
    				"data":null
    			},
    			
    			
    			"campaign":{
    				
    				"data":{
    					
    					"id":"1750261",
    					"type":"campaign"
    				},
    				
    				"links":{
    					
    					"related":"https://www.patreon.com/api/campaigns/1750261"
    				
    				}
    			},
    			
    			"currently_entitled_rewards":{
    				
    				"data":[
    					
    					{
    						"id":"2702634",
    						"type":"reward"
    					}
    				]
    			},
    			
    			"user":{
    				
    				"data":{
    					
    					"id":"11898269",
    					"type":"user"
    				},
    				
    				"links":{
    					"related":"https://www.patreon.com/api/user/11898269"
    				}
    			}
    		},
    		
    		"type":"member"
    	},
    	
    	"included":[
    		
    		{
    			"attributes":{
    				
    				"created_at":"2018-05-09T22:04:37+00:00",
    				"creation_count":1,
    				"creation_name":"a Web Show about Trains",
    				"discord_server_id":null,
    				"display_patron_goals":false,
    				"earnings_visibility":"private",
    				"image_small_url":"https://c10.patreonusercontent.com/3/eyJoIjo2NDAsInciOjY0MH0%3D/patreon-media/p/campaign/1750261/36f92dcd7236469a83604331c55201fa/3?token-time=2145916800&token-hash=J7bbJbJYCBAsSF4t755AdsJJ0YlYIAkKp2XtrD61CLY%3D",
    				"image_url":"https://c10.patreonusercontent.com/3/eyJwIjoxfQ%3D%3D/patreon-media/p/campaign/1750261/36f92dcd7236469a83604331c55201fa/3?token-time=2145916800&token-hash=AFzIWM1jyRoYL1qCzNmJ963yAZ-21D7wWtc-Aiqio0g%3D",
    				"is_charge_upfront":false,
    				"is_charged_immediately":false,
    				"is_monthly":true,
    				"is_nsfw":false,
    				"is_plural":false,
    				"main_video_embed":null,
    				"main_video_url":null,
    				"one_liner":null,
    				"outstanding_payment_amount_cents":0,
    				"patron_count":1,
    				"pay_per_name":"month",
    				"pledge_sum":224,
    				"pledge_url":"/bePatron?c=1750261",
    				"published_at":"2018-05-09T22:30:36+00:00",
    				"summary":"ABOUT RAILROAD SHOWCASE<br><br>Railroad Showcase is a soon-to-be-released web-based program devoted to railroading of all kinds. Original content, interviews, media review, news, and entertainment will create a varied program geared toward the enthusiast and professional railroader alike. Segments will feature Class 1 railroads, shortlines, museums, tourist railroads, live steam, and model railroads. <br><br>Our goal is to produce four full episodes each month, available to Silver Spike and Gold Spike members. Portions of each episode will be available for free on YouTube, Facebook and elsewhere on the Internet. <br><br>Railroad Showcase is produced by Robinson &amp; Associates. This show is created and produced by the father-and-son team of Greg and Graham Robinson. <br>",
    				"thanks_embed":null,
    				"thanks_msg":"Hey! You pledged without having anything from us at the moment! You are awesome. We'll remember this.",
    				"thanks_video_url":null
    			},
    			
    			"id":"1750261",
    			"type":"campaign"
    		},
    		
    		{
    			"attributes":{
    				"about":null,
    				"created":"2018-06-23T02:47:27+00:00",
    				"email":"grobxxxxxx@gmail.com",
    				"facebook":null,
    				"first_name":"Bill",
    				"full_name":"Bill Tester",
    				"gender":0,
    				"image_url":"https://c8.patreon.com/2/200/11898269",
    				"is_email_verified":true,
    				"last_name":"Tester",
    				"social_connections":{
    					"deviantart":null,
    					"discord":null,
    					"facebook":null,
    					"reddit":null,
    					"spotify":null,
    					"twitch":null,
    					"twitter":null,
    					"youtube":null
    				},
    				
    				"thumb_url":"https://c8.patreon.com/2/100/11898269",
    				"twitch":null,
    				"twitter":null,
    				"url":"https://www.patreon.com/user?u=11898269",
    				"vanity":null,
    				"youtube":null
    			},
    			"id":"11898269",
    			"type":"user"
    		},
    		{
    			"attributes":{
    				"amount":249,
    				"amount_cents":249,
    				"created_at":"2018-06-23T02:51:31.448713+00:00",
    				"description":"",
    				"discord_role_ids":null,
    				"edited_at":"2018-07-30T20:45:20.597237+00:00"
    				,"image_url":null,"patron_count":1,
    				"post_count":null,
    				"published":true,
    				"published_at":"2018-07-30T20:45:20.587367+00:00",
    				"remaining":null,
    				"requires_shipping":false,
    				"title":"Silver Spike Member",
    				"unpublished_at":null,
    				"url":"/bePatron?c=1750261&rid=2702634",
    				"user_limit":null
    			},
    			
    			"id":"2702634",
    			"relationships":{
    				"items":{
    					"data":[
    						
    					]
    				}
    			},
    			
    			"type":"reward"
    		}
    	],
    	
    	"links":{
    		"self":"https://www.patreon.com/api/members/7700b88e-04d8-40d4-9102-c3fe7840ce2c"
    	}
    }

And this is the new JSON:

{
	"data":{
		"attributes":{
			"currently_entitled_amount_cents":499,
			"email":"grobinxxxx@gmail.com",
			"full_name":"Bill Tester",
			"is_follower":false,
			"last_charge_date":"2018-10-02T07:34:39+00:00",
			"last_charge_status":"Paid",
			"lifetime_support_cents":249
			,"note":"",
			"patron_status":"active_patron",
			"pledge_relationship_start":"2018-12-14T05:22:39.413134+00:00",
			"will_pay_amount_cents":499
		},
		"id":"7700b88e-04d8-40d4-9102-c3fe7840ce2c",
		"relationships":{
			"address":{
				"data":null
			},
			"campaign":{
				"data":{
					"id":"1750261",
					"type":"campaign"
				},
				"links":{
					"related":"https://www.patreon.com/api/oauth2/v2/campaigns/1750261"
				}
			},
			"currently_entitled_tiers":{
				"data":[{
					"id":"2702635",
					"type":"tier"
				}
					   ]
			},
			"user":{
				"data":{
					"id":"11898269",
					"type":"user"
				}
			}
		},
		"type":"member"},
	"included":[{
		"attributes":{
			"created_at":"2018-05-09T22:04:37+00:00",
			"creation_name":"a Web Show about Trains",
			"discord_server_id":null
			,"google_analytics_id":null,
			"has_rss":false,
			"has_sent_rss_notify":false,
			"image_small_url":"https://c10.patreonusercontent.com/3/eyJoIjo2NDAsInciOjY0MH0%3D/patreon-media/p/campaign/1750261/36f92dcd7236469a83604331c55201fa/4?token-time=2145916800&token-hash=ealP5Jr-MYRGpIUX--XSCrL7qYnfP1mwBEbmQxSqWqE%3D",
			"image_url":"https://c10.patreonusercontent.com/3/eyJ3IjoxOTIwfQ%3D%3D/patreon-media/p/campaign/1750261/36f92dcd7236469a83604331c55201fa/4?token-time=2145916800&token-hash=F0fVjDPUlFBebrXRX4_NsX2D_8R8K-JL4kSqE0QIjQ4%3D",
			"is_charged_immediately":false,
			"is_monthly":true,
			"is_nsfw":false,
			"main_video_embed":null,
			"main_video_url":null,
			"one_liner":null,
			"patron_count":1,
			"pay_per_name":"month",
			"pledge_url":"/join/rrshowcase",
			"published_at":"2018-05-09T22:30:36+00:00",
			"rss_artwork_url":null,
			"rss_feed_title":null
			,"summary":"ABOUT RAILROAD SHOWCASE<br><br>Railroad Showcase is a soon-to-be-released web-based program devoted to railroading of all kinds. Original content, interviews, media review, news, and entertainment will create a varied program geared toward the enthusiast and professional railroader alike. Segments will feature Class 1 railroads, shortlines, museums, tourist railroads, live steam, and model railroads. <br><br>Our goal is to produce four full episodes each month, available to Silver Spike and Gold Spike members. Portions of each episode will be available for free on YouTube, Facebook and elsewhere on the Internet. <br><br>Railroad Showcase is produced by Robinson &amp; Associates. This show is created and produced by the father-and-son team of Greg and Graham Robinson. <br>",
			"thanks_embed":null,
			"thanks_msg":"Hey! You pledged without having anything from us at the moment! You are awesome. We'll remember this.",
			"thanks_video_url":null},
		"id":"1750261",
		"type":"campaign"
	},
				{
					"attributes":{
						"about":null
						,"created":"2018-06-23T02:47:27+00:00",
						"first_name":"Bill",
						"full_name":"Bill Tester"
						,"hide_pledges":false,
						"image_url":"https://c8.patreon.com/2/200/11898269",
						"last_name":"Tester","like_count":0,
						"social_connections":{
							"discord":null,
							"facebook":null,
							"reddit":null,
							"twitch":null,
							"twitter":null,
							"youtube":null
						},
						"thumb_url":"https://c8.patreon.com/2/100/11898269",
						"url":"https://www.patreon.com/user?u=11898269",
						"vanity":null
					},
					"id":"11898269"
					,"type":"user"
				},
				{
					"attributes":{
						"amount_cents":499,
						"created_at":"2018-06-23T02:51:54.352402+00:00",
						"description":"",
						"discord_role_ids":null,
						"edited_at":"2018-06-28T19:37:43.145945+00:00",
						"image_url":null,
						"patron_count":1,
						"post_count":0,
						"published":true,
						"published_at":"2018-06-28T19:37:43.138710+00:00",
						"remaining":null,
						"requires_shipping":false,
						"title":"Gold Spike Member",
						"unpublished_at":null,
						"url":"/join/rrshowcase/checkout?rid=2702635",
						"user_limit":null
					},
					"id":"2702635",
					"type":"tier"
				}
			   ],
	"links":{
		"self":"https://www.patreon.com/api/oauth2/v2/members/7700b88e-04d8-40d4-9102-c3fe7840ce2c"
	}
}

#4

Thanks for sharing that! Those changes are expected, as we bring webhooks in line with the APIv2 resources listed on https://docs.patreon.com. If there are fields missing from the new responses that you need for your development, please let us know.