{"registry_version":"2026.1025.387","generated_at":"2026-10-25T06:27:00Z","content_sha256":"089d16f627d9365e3d0663cc8069203706d7cb23a76c332226e29686968811a5","signed":true,"signature":{"key_id":"ed25519:74ca19268e364242","algorithm":"ed25519","expires_at":"2026-11-24T06:27:09Z","expired":false,"manifest":"/registry/manifest.json"},"entry_sha256":"f69a732387f99ced0eef95bb8afd2060698fb24c09dc7726e12bb8205193d2c0","entry":{"id":"meta/developer-app","name":"Meta Developer Account and App","vendor":"Meta","summary":"Register as a Meta developer with your Facebook account, then create an app in the App Dashboard to get an App ID and App Secret. New apps start in Development mode, usable only by people with a role on the app, until App Review approves permissions and the app is switched to Live.","aliases":["Facebook developer account","Meta for Developers","App Dashboard","Facebook app"],"category":"social","group":"B","homepage":"https://developers.facebook.com/","docs":["https://developers.facebook.com/docs/development/register","https://developers.facebook.com/docs/development/create-an-app"],"status":"researched","last_verified":null,"last_researched":"2026-10-25","sources":[{"id":"register","url":"https://developers.facebook.com/docs/development/register","title":"Register as a Meta Developer (Meta for Developers)","accessed":"2026-10-25","supports":"Needs a Facebook account; agree to Platform Terms and Developer Policies; confirmation codes to phone and email; choose occupation; contact details get developer notifications.","kind":"official"},{"id":"create","url":"https://developers.facebook.com/docs/development/create-an-app","title":"Create an App (Meta for Developers)","accessed":"2026-10-25","supports":"Creation URL; app name and contact email; use cases can be added but not removed; app without a use case; business portfolio choice and when one is required; App Review when non-role users use the app; limit of 15 apps per developer when not connected to a verified business, archived apps count.","kind":"official"},{"id":"basic","url":"https://developers.facebook.com/docs/development/create-an-app/app-dashboard/basic-settings","title":"Basic Settings (Meta for Developers)","accessed":"2026-10-25","supports":"App ID and App Secret in Basic Settings; keep secret server-side; reset if compromised; cannot be rotated programmatically; fields required for Live mode; display name trademark rules; contact email receives notifications.","kind":"official"},{"id":"modes","url":"https://developers.facebook.com/docs/development/build-and-test/app-modes","title":"App Modes (Meta for Developers)","accessed":"2026-10-25","supports":"Development vs Live mode behaviour; new apps start in Development; admins switch with the toolbar toggle after App Review; test data becomes public on Live.","kind":"official"},{"id":"terms","url":"https://developers.facebook.com/terms/","title":"Meta Platform Terms","accessed":"2026-10-25","supports":"Prohibited practices (selling/licensing/purchasing Platform Data, profiles without consent, eligibility decisions, surveillance); deletion duties; privacy policy requirement; audits; enforcement at any time; unused permissions removable after 28 days.","kind":"official"},{"id":"devpolicy","url":"https://developers.facebook.com/devpolicy/","title":"Meta Developer Policies","accessed":"2026-10-25","supports":"Build and manage your app with an authentic account; obtain consent before acting for people; don't deceive or mislead; enforcement action for non-compliance.","kind":"official"},{"id":"duc-faq","url":"https://developers.facebook.com/documentation/resp-plat-initiatives/individual-processes/data-use-checkup/faq","title":"Data Use Checkup FAQ (Meta for Developers)","accessed":"2026-10-25","supports":"Annual checkup; notice 60 days before due with reminders at 30, 10 and 3 days; app deactivated if missed, no extensions; any one admin can certify.","kind":"official"},{"id":"duc","url":"https://developers.facebook.com/docs/resp-plat-initiatives/individual-processes/data-use-checkup","title":"Data Use Checkup (Meta for Developers)","accessed":"2026-10-25","supports":"Annual assessment for apps live with a use case or holding advanced access; not needed for standard-access-only or development-mode apps.","kind":"official"}],"allowed_domains":["developers.facebook.com","facebook.com"],"account_model":{"summary":"The developer account is your personal Facebook account with developer registration switched on. Apps are created by a developer and can be connected to a company's business portfolio, which then owns them. People get roles (admin, developer, tester) on each app.","accounts":[{"name":"Facebook account","kind":"personal","owned_by":"the person","required":true,"note":"Must be the person's own authentic account; the Developer Policies say to develop and manage apps with an authentic account."},{"name":"Meta developer registration","kind":"developer","owned_by":"the person","parent":"Facebook account","required":true},{"name":"Meta app (App ID)","kind":"project","owned_by":"the company (once connected to its business portfolio)","parent":"Meta developer registration","required":true,"note":"A developer can hold a developer or admin role on at most 15 apps not connected to a verified business; archived apps count."},{"name":"Business portfolio","kind":"organisation","owned_by":"the company","required":false,"note":"Required if the app accesses data you don't own or manage; can be connected during creation or later."}],"notes":["Add a second admin to every production app so access survives one person leaving or being locked out."]},"prerequisites":[{"need":"A personal Facebook account in good standing","note":"Registration happens while logged in to Facebook."},{"entry":"meta/business-portfolio","note":"Optional at creation, but needed for apps that access data you don't own or manage, and for business verification."}],"identity_requires":["app_name","support_email","privacy_policy_url","terms_url","app_icon_url"],"have_ready":[{"kind":"phone_for_2fa","description":"A mobile phone that can receive Meta's confirmation code.","why":"Registration sends confirmation codes to the phone and email you give; they also get important developer notifications.","needed_for":["register"],"auto_check":"none","source":"register"},{"kind":"domain_email","description":"A monitored email address for developer notifications and the app's contact email.","why":"Developer alerts, App Review results and Data Use Checkup deadlines go to it.","needed_for":["register","create-app"],"auto_check":"domain_email_mx","source":"basic"},{"kind":"app_icon","description":"An app icon without Meta trademarks or logos (meta/app-review asks for 1024x1024).","why":"Required before switching to Live mode.","needed_for":["basic-settings"],"auto_check":"none","source":"basic"},{"kind":"app_privacy_policy_url","description":"A public HTTPS privacy policy explaining what Meta data you process, why, and how users can ask for deletion.","why":"Required by Platform Terms section 4 and shown to users during Meta login.","needed_for":["basic-settings"],"auto_check":"website_live","source":"terms"},{"kind":"other","description":"A Terms of Service URL, an app category and the app purpose (your own business, or clients).","why":"Required fields before switching to Live mode.","needed_for":["basic-settings"],"auto_check":"none","source":"basic"}],"steps":[{"id":"register","title":"Register as a Meta developer","summary":"While logged in to Facebook, open the developer registration, agree to the Platform Terms and Developer Policies, enter the codes sent to your phone and email, and choose your occupation.","route":"guided","depends_on":[],"gate":"human_terms","url":"https://developers.facebook.com/","lead_time":{"typical_minutes":5},"recovery":[{"hiccup":"Confirmation code does not arrive.","fix":"Check the phone number and email you entered; these also receive developer notifications, so use ones you monitor.","source":"register"}],"sources":["register"]},{"id":"create-app","title":"Create the app","summary":"Go to the app creation page, enter the app name and a contact email, pick the use cases you need (they can't be removed later), choose a business portfolio (or skip for now), review requirements such as App Review, and open the dashboard.","route":"copilot","depends_on":["register"],"gate":"human_submit","url":"https://developers.facebook.com/apps/creation/","fields":[{"label":"App name","from_profile":"app_name","note":"Must not include Facebook, FB, Instagram, WhatsApp or imply Meta endorsement."},{"label":"App contact email","from_profile":"support_email"}],"preflight":["domain_has_mx"],"recovery":[{"hiccup":"You can't create another app because you've hit the app limit.","fix":"You can hold roles on at most 15 apps not connected to a verified business (archived apps count). Connect eligible apps to a verified business portfolio, remove unused apps, or remove yourself from apps you no longer work on.","source":"create"},{"hiccup":"Picked the wrong use case.","fix":"Use cases can't be removed once added. Create a new app with the right use cases.","source":"create"}],"sources":["create"]},{"id":"capture-credentials","title":"Copy the App ID and App Secret","summary":"In App Dashboard > Settings > Basic, copy the App ID and reveal the App Secret. Keep the secret on your server only.","route":"copilot","depends_on":["create-app"],"gate":"human_login","url":"https://developers.facebook.com/apps/","recovery":[{"hiccup":"The App Secret was exposed (committed to a repo, shipped in a client).","fix":"Reset it in Basic Settings straight away; it can't be rotated programmatically, and update your server config.","source":"basic"}],"capture":{"env":"META_APP_SECRET","kind":"secret"},"sources":["basic"]},{"id":"basic-settings","title":"Complete Basic Settings","summary":"Fill in display name, contact email, privacy policy URL, terms of service URL, user data deletion instructions, app icon, category and app purpose. These are needed before Live mode and App Review.","route":"copilot","depends_on":["create-app"],"gate":"human_submit","url":"https://developers.facebook.com/apps/","fields":[{"label":"Display name","from_profile":"app_name"},{"label":"Contact email","from_profile":"support_email"},{"label":"Privacy Policy URL","from_profile":"privacy_policy_url"},{"label":"Terms of Service URL","from_profile":"terms_url"}],"preflight":["privacy_policy_reachable","app_icon_present"],"recovery":[{"hiccup":"Display name rejected.","fix":"Remove Facebook, FB, Instagram, WhatsApp, Oculus or look-alikes such as Face or Book, and anything implying Meta partnership.","source":"basic"}],"sources":["basic","terms"]},{"id":"connect-business","title":"Connect the app to your business portfolio","summary":"In Settings > Basic > Verification, connect the app to the company's business portfolio (needed if the app touches data you don't own and for advanced access).","route":"guided","depends_on":["create-app"],"gate":"human_submit","url":"https://developers.facebook.com/apps/","optional":true,"sources":["create"]},{"id":"add-roles","title":"Add teammates and testers","summary":"Give colleagues admin, developer or tester roles. In Development mode only people with a role can use the app.","route":"guided","depends_on":["create-app"],"gate":"human_submit","optional":true,"sources":["modes"]},{"id":"go-live","title":"Switch to Live mode after App Review","summary":"Once App Review approves what you need, an app admin flips the mode toggle in the dashboard toolbar. Test data made in Development mode becomes visible to everyone.","route":"guided","depends_on":["basic-settings"],"gate":"human_submit","recovery":[{"hiccup":"Toggle to Live is blocked by the Data Use Checkup.","fix":"An app admin must complete the Data Use Checkup before an app can move from Development to Live.","source":"duc"}],"optional":true,"sources":["modes","duc"]}],"outputs":[{"name":"META_APP_ID","description":"Public App ID, included in every Graph API call and in client SDK config.","secret":false,"example_format":"1234567890123456","from_step":"capture-credentials"},{"name":"META_APP_SECRET","description":"App Secret used to generate app access tokens; server-side only.","secret":true,"example_format":"app secret string, e.g. 0123abcd…","from_step":"capture-credentials"}],"terms_notes":[{"kind":"rules_say","severity":"red","title":"Never sell or buy Platform Data","text":"Platform Terms 3.a forbid selling, licensing or purchasing Platform Data, building profiles without consent, re-identifying data, and using it for eligibility decisions (housing, jobs, credit, insurance) or surveillance.","source":"terms"},{"kind":"rules_say","severity":"red","title":"Meta can suspend at any time","text":"Meta may suspend or remove your app or account, require deletion of Platform Data, or end the agreement, at any time and with or without notice, if it suspects a breach or you don't respond to audit requests.","source":"terms"},{"kind":"rules_say","severity":"red","title":"Authentic account and honest behaviour","text":"Develop and manage your app with an authentic account, get consent before acting for people, and don't deceive, mislead or spam anyone.","source":"devpolicy"},{"kind":"rules_say","severity":"amber","title":"Privacy policy and deletion are required","text":"Keep a public privacy policy URL in the dashboard explaining what you process and how users request deletion, and delete Platform Data promptly when users or Meta ask or when you no longer need it.","source":"terms"},{"kind":"rules_say","severity":"amber","title":"Material changes need fresh review","text":"Material changes to app functionality or to the scope of data processing need re-submission through App Review.","source":"terms"},{"kind":"rules_say","severity":"yellow","title":"Unused permissions can be removed","text":"Meta may end access to APIs, permissions or features you haven't used for 28 days.","source":"terms"}],"renewals":[{"what":"Data Use Checkup for apps that are Live with a use case or hold advanced access. Notice 60 days before the due date, reminders at 30, 10 and 3 days; a missed deadline deactivates the app with no extensions.","every":"1 year","every_days":365,"source":"duc-faq"}],"pricing_notes":{"notes":"No developer registration or app fee is mentioned in the registration or app creation docs.","source":"register"},"stripe_projects":false,"api_provisioning":{"available":"unknown","notes":"App creation is documented only through the App Dashboard; the App Secret cannot be rotated programmatically [to verify whether any app-creation API exists].","source":"basic"},"detect":{"env_names":["META_APP_ID","META_APP_SECRET","FACEBOOK_APP_ID","FACEBOOK_APP_SECRET","FB_APP_ID"]}}}