Ideja je jednostavna: vaša aplikacija objavljuje sadržaj na Facebook stranicu, povlači analitiku ili automatizira nešto što biste inače radili ručno. Facebook (sad Meta) za to ima Graph API — moćan, dobro dokumentiran u teoriji, i potpuno frustrirajući u praksi.
Ne zato što API ne radi. Radi. Problem je sve oko njega.
Početak koji obećava
Registrirate Meta Developer račun, kreirate aplikaciju, dobijete App ID i App Secret za minutu. Graph API Explorer vam čak generira testni token i možete odmah slati zahtjeve. GET /me?fields=id,name vraća vaše ime. Savršeno.
A onda trebate pravu dozvolu — recimo pages_manage_posts da aplikacija može objavljivati na stranicu — i počinje zabava.
Razvojni način rada vs. produkcija
Meta ima koncept razvojnog načina (Development Mode) u kojem aplikacija radi samo za ljude koji su eksplicitno dodani kao testeri ili administratori. Svaki token koji generirate važi 1–2 sata. Za bilo kakvu realnu upotrebu — čak i ako je vaša aplikacija interna i koristi je samo vaša tvrtka — morate proći App Review.
Ovo je prvi šok za mnoge developere: nema prečice. Vaša aplikacija može imati doslovno jednog korisnika (vas) i svejedno morate pisati obrazloženje, snimati screenshotove i čekati review.
App Review — gdje strpljenje umire
App Review proces zahtijeva:
- Detaljno obrazloženje za svaku traženu dozvolu — zašto vam treba, kako je koristite, tko su krajnji korisnici.
- Screencast koji pokazuje tok korištenja — ne samo API pozive, nego da korisnik može vidjeti u vašem UI-u gdje i kako se dozvola koristi.
- Privacy Policy na javno dostupnom URL-u.
- Verifikacija poslovanja — potvrda da ste realna tvrtka, što zahtijeva dokumente, domenu, i ponekad ručnu provjeru.
Na papiru zvuči razumno. U praksi:
- Dokumentacija je razasuta po pet različitih portala. Meta for Developers, Business Help Center, Graph API docs, Permissions Reference i Facebook Login dokumentacija se međusobno referenciraju u krug i ponekad proturječe.
- Review traje tjednima. Službeni Meta FAQ kaže da "cijeli proces može trajati do nekoliko tjedana" — realno 2–4 tjedna, ponekad i više. A ako vas odbiju, idete ispočetka.
- Razlozi odbijanja su često nejasni. Dobijete poruku poput "The screencast does not adequately demonstrate how this permission is used" bez pojašnjenja što konkretno nedostaje.
- Dozvole se mijenjaju između API verzija. Ono što je radilo s Graph API v18.0 može tražiti drugi scope u v21.0. Dokumentacija za prijelaz postoji, ali je zakopana.
Praktičan primjer: objavljivanje posta na Facebook stranicu
Za naš projekt trebali smo relativno jednostavnu stvar: iz vlastite aplikacije objaviti tekst i slike na Facebook stranicu klijenta. Tok je otprilike ovakav:
- Korisnik autorizira aplikaciju (OAuth flow).
- Aplikacija dobije korisnički token.
- Zamijeni ga za Page Access Token s dozvolama
pages_manage_posts,pages_read_engagementipages_show_list. - Pozove
POST /{page-id}/feeds tekstom i slikama.
Četiri koraka. Implementacija funkcionira za sat vremena u razvojnom modu. A onda:
- App Review za
pages_manage_poststraži screenshotove i screencast čak i za interni alat koji nitko osim vlasnika stranice neće koristiti. - Token koji dobijete ima vijek trajanja koji ovisi o vrsti, a dokumentacija o tome kad i zašto token istječe zahtijeva čitanje barem tri različita članka.
- Ako koristite System User token za server-to-server rad (da izbjegnete istek korisničkog tokena), trebate Meta Business Suite, verifikaciju poslovanja, i ponekad razgovor s Meta supportom koji odgovara u rokovima koji bi bili neprihvatljivi za bilo koju drugu SaaS platformu.
Usporedba s LinkedIn API-em
Da ne bude sve crno — kontekst pomaže. LinkedIn API ima svoje probleme (rate limitovi, ugcPosts vs. novi posts endpoint, urn:li:person vs. urn:li:organization razlika koja nije odmah očita), ali:
- App odobrenje je predvidljivije: dodajete "products" u LinkedIn Developer portal, i za većinu slučajeva dozvola je odobrena automatski ili unutar dana.
- Dokumentacija je na jednom mjestu (Microsoft Learn) i relativno konzistentna.
- Osvježavanje tokena je jasno dokumentirano u jednom članku, a ne raspoređeno po pet.
To ne znači da je LinkedIn API savršen — daleko od toga. Ali razlika u iskustvu prilikom postavljanja bude zamjetna.
Zašto je ovo problem za mala poduzeća
Ako ste agencija ili startup koji gradi alat za upravljanje društvenim mrežama, verificirat ćete Meta aplikaciju jednom i živjeti s tim. Ali ako ste malo poduzeće ili obrt koji želi jednostavno automatizirati objave na vlastitu stranicu — tjedni čekanja i birokratski proces su nesrazmjeran teret.
Alternativa je koristiti gotov alat treće strane (Buffer, Hootsuite, Later...) koji je već verificiran. To je često razumniji put — ali znači plaćati mjesečnu pretplatu za nešto što biste tehnički mogli napraviti sami s 50 linija koda, da vam Meta to dopusti bez šestotjednog procesa.
Što možete napraviti da smanjite bol
- Pripremite screencast unaprijed. Snimite kratki Loom video koji pokazuje cijeli tok — od prijave korisnika do objave. Čist UI, bez developer alata na ekranu.
- Privacy Policy stavite na
/privacy-policyprije nego podnesete zahtjev. Meta provjerava URL; ako ga nema, automatski pad. - Koristite Business verification rano. Ne čekajte da vam App Review kaže da trebate — pokrenite Meta Business Verification čim imate aplikaciju.
- Budite eksplicitni u obrazloženjima. Umjesto "We need this to post content", napišite: "Our application allows the authenticated Page admin to publish text and image posts to their own Facebook Page via a scheduled content calendar."
- Držite se najnovije API verzije. Starije verzije gube podršku, a review tim ponekad odbije aplikacije koje koriste deprecated endpointe.
Zaključak
Facebook Graph API je moćan alat, ali je Meta obavila proces pristupa tolikim slojevima verifikacije, nejasne dokumentacije i sporih reviewova da on postaje prepreka, ne pomoć — posebno za manje timove. Dok ne pojednostave onboarding za interne i low-usage aplikacije, realna preporuka za većinu malih poduzeća je: koristite verificirani alat treće strane, ili budite spremni uložiti tjedne strpljenja prije nego vaša integracija zaživi u produkciji.
Povezani članci
Trebate pomoć s ovom temom?
ANIM nudi besplatnu procjenu za mala i srednja poduzeća u Hrvatskoj. Javite nam se i razgovarajmo o vašim potrebama.
Besplatna procjena