<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/">
	<channel>
		<title>I Don&#039;t Always Use Facebook API, but When I Do, It&#039;s Different | Infinum</title>
		<atom:link href="https://infinum.com/blog/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed/feed/" rel="self" type="application/rss+xml" />
		<link>https://infinum.com/blog/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed/</link>
		<description>Building digital products</description>
		<lastBuildDate>Mon, 27 Apr 2026 14:58:27 +0000</lastBuildDate>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>

					<item>
				<image>
					<url>8003https://infinum.com/uploads/2015/07/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed-0.webp</url>
				</image>
				<title>I Don&#039;t Always Use the Facebook API, but When I Do, Everything Has Changed</title>
				<link>https://infinum.com/blog/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed/</link>
				<pubDate>Tue, 24 Mar 2015 08:19:00 +0000</pubDate>
				<dc:creator>Željko Plesac</dc:creator>
				<guid isPermaLink="false">https://infinum.com/the-capsized-eight/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed/</guid>
				<description>
					<![CDATA[<p>Last year, Facebook announced a series of changes to their developer platform and launched API v2.0. </p>
<p>The post <a href="https://infinum.com/blog/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed/">I Don&#039;t Always Use the Facebook API, but When I Do, Everything Has Changed</a> appeared first on <a href="https://infinum.com">Infinum</a>.</p>
]]>
				</description>
				<content:encoded>
					<![CDATA[<div
	class="wrapper"
	data-id="es-169"
	 data-animation-target='inner-items'>
		
			<div class="wrapper__inner">
			<div class="block-blog-content js-block-blog-content">
	
<div class="block-blog-content-sidebar" data-id="es-92">
	</div>

<div class="block-blog-content-main">
	
<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-95"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-93">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-94'
	>
	Last year, Facebook announced a series of changes to their developer platform and launched API v2.0. All Facebook apps have to start using this new API by the end of April 2015. As the big date is drawing near, a lot of questions are beginning to trouble developers.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-98"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-96">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-97'
	>
	With over a billion of users, Facebook is the most popular social network today. It has also become the largest <strong>open repository</strong> of <strong>personal user information</strong>. This data is <strong>publicly available</strong> via the Facebook API and we can use it to enhance the user experience of our mobile and web apps.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-101"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-99"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-100">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2015/07/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed-1.webp"
					class="image__img block-media__image-img"
					alt=""
										height="366"
															width="720"
										loading="lazy"
					 />
					</picture>

	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-104"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-102">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-103'
	>
	We can use it for:</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-107"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="lists" data-id="es-105">
	<ul	class='typography typography--size-16-text-roman js-typography lists__typography'
	data-id='es-106'
	>
	<li>user authentication</li><li>obtaining personal data on our users</li><li>exporting the app data to users’ walls</li></ul></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-110"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-108">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-109'
	>
	Although the Facebook API is <strong>free of charge</strong>, we still need to adhere to <strong>platform policies</strong>. One of these is that the old Facebook API will officially become deprecated and we’ll need to switch to the new one.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-113"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-111">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-112'
	>
	What are the changes?</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-116"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-114">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-115'
	>
	There are a lot of <strong>important differences</strong> between API v1 and API v2:</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-119"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="lists" data-id="es-117">
	<ul	class='typography typography--size-16-text-roman js-typography lists__typography'
	data-id='es-118'
	>
	<li>FQL is officially deprecated from version v2.1, and can no longer be queried</li><li>support for real time updates for Pages</li><li><em>installed</em> permission no longer exists</li><li>user IDs are now app-scoped</li><li>Facebook Login has been drastically improved</li><li>optional permissions &#8211; users can now decline any permission that your app requests. This is done during login, and the only required permission is <em>public_profile</em>.</li></ul></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-122"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-120"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-121">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2015/03/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed-2.webp"
					class="image__img block-media__image-img"
					alt=""
										height="344"
															width="590"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			OMG, not again…		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-125"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-123">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-124'
	>
	The most important changes are connected to the permission management. Every app which asks for more than <em>public_profile</em>, <em>email</em> and <em>user_friends</em> permission needs to be reviewed by Facebook.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-128"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-126">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-127'
	>
	The <em>user_friends</em> permission has undergone many changes. You’ll no longer be allowed to obtain the friend lists of your users. This permission has been completely refactored and will now return only the list of the user’s friends who are using your Facebook app. Also, all <em>friend_</em>* permissions have been removed. This means that it’s no longer possible for an app to see data from your user’s friends. You can see this data only if those friends have also logged into the app and granted permission for the app to see that data.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-131"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-129">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-130'
	>
	Also, a large number of permissions have been completely removed. You can see the full list <a href="https://developers.facebook.com/docs/apps/upgrading">here</a>.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-134"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-132">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-133'
	>
	Do I need to upgrade my apps to API v2?</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-137"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-135">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-136'
	>
	After the deadline, all Facebook apps will <strong>automatically</strong> be migrated to API v2. This could potentially create a lot of problems for developers and end users. Facebook officially states that users who will use our apps after April 30th, 2015 <strong>risk</strong> any of the <strong>following problems</strong>:</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-140"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="lists" data-id="es-138">
	<ul	class='typography typography--size-16-text-roman js-typography lists__typography'
	data-id='es-139'
	>
	<li>Crashes due to the unexpected format of an API call response</li><li>Inability to load your game</li><li>Inability to invite friends</li><li>Broken gameplay due to missing permissions not being handled correctly</li></ul></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-143"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-141">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-142'
	>
	Also, as several of the most popular API calls and permissions will completely change their <strong>responses</strong>, you’ll need to refactor your app behavior in order to preserve your business model. Maybe you’ll need to ask for <strong>new permissions</strong> or even completely refactor some of your screens and actions. You’ll also need to explain to your current users that some <strong>features will no longer be available</strong>. Be prepared for everything.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-146"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-144">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-145'
	>
	OK, now you got me scared. What should I do?</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-149"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-147"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-148">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2015/03/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed-3.webp"
					class="image__img block-media__image-img"
					alt=""
										height="500"
															width="401"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			I’m a little bit scared right now.		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-152"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-150">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-151'
	>
	Although you still have a <strong>lot of time</strong> to implement the necessary migrations, it’s better that you start working on them right now. You also need to take into consideration that maybe you’ll need to ask for <strong>additional permissions</strong> from your users. For every new permission, you’ll need to go through <strong>app review</strong>, which usually takes 3-7 business days. But don’t take this as a hard fact – in the upcoming two months, a large number of apps will apply for an app review, so the duration of this process could potentially increase to more than a week.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-155"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-153">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-154'
	>
	Facebook has already <strong>documented</strong> all the necessary changes and created a <strong>FAQ page</strong> especially targeting migration problems:</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-158"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="lists" data-id="es-156">
	<ul	class='typography typography--size-16-text-roman js-typography lists__typography'
	data-id='es-157'
	>
	<li>https://developers.facebook.com/docs/apps/upgrading</li><li>https://developers.facebook.com/docs/apps/faq</li></ul></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-161"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-159">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-160'
	>
	Conclusion</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-164"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-162">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-163'
	>
	In conclusion, if you have <strong>regularly updated</strong> your applications, you’ll have no problems with the migration to API v2. Facebook has done a really good job with documenting all new functions, permissions and migration strategies. You can also join the <a href="https://developers.facebook.com/">Facebook Developers Community</a> and ask any question you want to further simplify your migration process.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-167"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-165">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-166'
	>
	But don’t get too used to API v2. It’s already deprecated and will only be supported for two more years at most, and will probably be up only until April 30th, 2016.</p></div>	</div>
</div>
</div>		</div>
	</div><p>The post <a href="https://infinum.com/blog/i-dont-always-use-the-facebook-api-but-when-i-do-everything-has-changed/">I Don&#039;t Always Use the Facebook API, but When I Do, Everything Has Changed</a> appeared first on <a href="https://infinum.com">Infinum</a>.</p>
]]>
				</content:encoded>
			</item>
		
	</channel>
</rss>