A Facebook API használata Power BI-ban

Facebookon rengeteg adat áll rendelkezésünkre oldalainkról, hirdetéseinkről. Ezek az adatok nagy jelentőséggel bírnak, megfelelően felhasználva őket sokat mondóak tudnak lenni és hozzájárulhatnak vállalkozásunk fejlődéséhez. Ebben a blogposztban azt fogjuk megmutatni, hogy hogyan lehet adatforrásként használni Facebook oldalainkat a Power BI-ban.

Elemzési adatainkat a Facebook business suite-jából is le lehet tölteni manuálisan, de ezek az adatok nem fognak meguktól frissülni, ezért sokkal előnyösebb a Facebook Graph API-n keresztül kötni be az adatainkat a Power BI reportunkba. Ezt közvetlenül meg lehet tenni, nincs szükség semmilyen közbülső lépésre (pl.: excel fájl, vagy adatbázis).

Először létre kell hoznunk egy alkalmazást a https://developers.facebook.com/apps oldalon. Jobb felső sarokban a a zöld Create App gomb megnyomásával ezt meg is tudjuk tenni. Ki kell választani a felugró ablakban azt az opciót, hogy “Vállalkozás”.

Következő lépésben adni kell az alkalmazásnak egy nevet (ez lehet tetszőleges, rajtunk kívül ezt senki sem nem fogja látni), itt meg kell adni az e-mail címünket, ki kell választanunk, hogy saját vagy ügyfeleink oldalához szeretnénk-e az alkalmazást használni, és végül hozzáadhatjuk Business Manager fiókunkat is, de ez a lépés nem kötelező.

Ezek után a Create App gombbal tudjuk létrehozni az applikációt. Itt felkínálja, hogy adjunk hozzá az alkalmazás típusát, itt válasszuk ki a Graph API-t és az Analytics-ot.

 

 

Következő lépésként az appunk Settings-->Basic menüpontjában nézzük meg az App ID-t és az App Secret-et és ezeket mentsük ki egy jegyzetbe, mert szükségünk lesz még rájuk a kesőbbiekben.

Fent a Tools fülön válasszuk ki a Graph API Explorer-t, így megnyílik a felület ahol az API hívásokat lehet készíteni. Generáljunk egy Access Token-t (ez csak egy ideiglenes) és állítsuk be, hogy milyen Permission-ök társuljanak egy alkalmazáshoz (a Graph API dokumentációjában megtaláljuk részletesen, hogy miket kell itt kiválasztanunk attól függően, hogy milyen adatokat szeretnétek lekérni).

 

Mielőtt az első API hívás megtörténne, tegyük véglegessé az Access Token-t, mert különben a későbbiekben ha a token lejár, akkor nem fogjuk tudnni elérni az adatainkat a Power BI-jal.

A következő két linket egészítsük ki a saját adatainkkal a kapcsos zárójelek { } között és hívjuk meg őket a böngészőnk egy új lapján.

 

https://graph.facebook.com/oauth/access_token?client_id={app id}&client_secret={app secret}&grant_type=fb_exchange_token&fb_exchange_token={access token}   (Így kapjuk meg a long lived access token-t)

 

https://graph.facebook.com/me/accounts?access_token={long lived access token}

 

Most jöhet az API hívás a Graph API Explorerben. Adjuk meg az újonnan készített access token-t és a felső sorba írjunk egy hívást. Egy hívást teljesen személyre lehet szabni attól függően, hogy mire van szükségünk.

A lentiekben egy példa hívást láthatunk, ami egy kampány hirdetéseiről adja vissza a következő információkat:

  • átkattintások száma,
  • hány embert ért el,
  • mennyibe került,
  • és mikor lett létrehozva

 

act_{campaign_id}/insights?level=adset&fields=outbound_clicks,reach,created_time,spend&limit=10000000&time_range={"since":"2020-01-01","until":"2099-12-31"}

 

Innen már nincs sok hátra, ez könnyen importálható a Power BI-ba táblázatként. Miután megvan az API hívás és visszaadta az adatokat, alul a get code gombra kell kattintani, majd kiválasztani a "c-url" fült.

Abból a kódból amit kapunk, arra lesz szükségünk, ami a “ ” között van, ezt másoljuk ki, majd megnyitva a Power BI-t a Get data alatt válasszuk ki a "Web" adatkapcsolatot és illeszük be amit az előbb kimásoltunk. Ezzel a lépéssel meg is jelennek a lekért adatok Query editor-ban és tudunk velük dolgozni.

Fontos megemlíteni, hogy a végleges token-re és az alkalmalmazás App secret-jére érdemes vigyázni és nem megosztani senkivel!

Ezzel mondhatni az első nehézségen már túl vagyunk, de sajnos a Facebook néha elég kaotikus tud lenni, így valószínűleg még sok időt el fogunk vele tölteni, amíg egy jól használható és látványos reportot kapunk, de az így elérhető lehetőségek ismeretében, mindeképpen megéri az időt ráfordítani.