Skip to content

Facebook Profile Events API

Events hosted by a public Facebook Page, upcoming ones first, with past events where Facebook still lists them, eight per page; pass pagination.cursor back for the next eight. Each carries start time, place, host and the cover photo. Calls cost 1 credit each. A cache hit is free, and a failed or empty response is never charged.

Try it

Prefilled with the request that produced the example below. No key yet? Get a free key.

Request

GET/v1/facebook/profile-events
ParameterTypeRequiredDescription
urlstringyesPage URL, @handle, slug, or numeric page id
cursorstringnopagination.cursor from a previous response

Also accepts cache_max_age (a hit costs 0 credits) and include_raw (returns the untouched upstream payload under raw).

curl
curl "$API/v1/facebook/profile-events?url=https%3A%2F%2Fwww.facebook.com%2Fmetmuseum&cache_max_age=7d" \
  -H "x-api-key: $KEY"
JavaScript
const query = new URLSearchParams({
  url: 'https://www.facebook.com/metmuseum',
  cache_max_age: '7d',
});

const response = await fetch(`${API}/v1/facebook/profile-events?${query}`, {
  headers: { 'x-api-key': KEY },
});

const body = await response.json();
if (!body.success) throw new Error(body.error.code);

// 1 credit, 0 on a cache hit
console.log(body.data, body.meta.creditsCharged);
Python
import os, httpx

r = httpx.get(
    f"{os.environ['API']}/v1/facebook/profile-events",
    params={
        "url": "https://www.facebook.com/metmuseum",
        "cache_max_age": "7d",
    },
    headers={"x-api-key": os.environ["KEY"]},
    timeout=30,
)

body = r.json()
if not body["success"]:
    raise RuntimeError(body["error"]["code"])

print(body["data"], body["meta"]["creditsCharged"])

Example response

Captured on , with raw removed and lists cut to two items. A live call returns current data.

response
{
  "success": true,
  "data": {
    "items": [
      {
        "platform": "facebook",
        "id": "1096800594759087",
        "name": "Teens Take The Met! (Ages 13–18) ",
        "url": "https://www.facebook.com/events/1096800594759087/",
        "description": null,
        "startsAt": "2024-05-31T20:00:00.000Z",
        "endsAt": null,
        "timeText": "Fri, May 31, 2024",
        "isOnline": false,
        "isCanceled": false,
        "isPast": true,
        "place": {
          "id": "842192351286754",
          "name": "1000 5th Ave, New York, NY, United States, New York 10028",
          "address": null,
          "latitude": null,
          "longitude": null
        },
        "hostId": "100064879894574",
        "hostName": "The Metropolitan Museum of Art, New York",
        "hostUrl": "https://www.facebook.com/metmuseum",
        "thumbnailUrl": "https://scontent.fsin17-1.fna.fbcdn.net/v/t39.30808-6/485768529_1070082381831082_888722756516245932_n.jpg?stp=c177.0.1566.1080a_dst-jpg_tt6&cstp=mx1566x1080&ctp=s118x90&_nc_cat=102&_nc_map=urlgen_bucketless&ccb=1-7&_nc_sid=239fc6&_nc_ohc=cr4e7czKSdUQ7kNvwHkx5my&_nc_oc=AdqILOIyYpcu57b9i52zuXQmxpz0I7kdcmXNvjfYv6PK5usDH9CYsGCU_L50gC7A7AQ&_nc_zt=23&_nc_ht=scontent.fsin17-1.fna&_nc_gid=h-HEUtJeuI2n4N2E2qOlIQ&_nc_ss=70289&oh=00_AQNDlggdZ1rRKfRSkAPQpAjKqmbhG3sxeb7LE6PScA1eEQ&oe=6ADDE9CE",
        "ticketPriceText": null,
        "interestedCount": null,
        "fetchedAt": "2026-10-21T01:52:13.333Z"
      },
      {
        "platform": "facebook",
        "id": "1333058394763810",
        "name": "The Harlem Renaissance and Transatlantic Modernism: A Creative Convening",
        "url": "https://www.facebook.com/events/1333058394763810/",
        "description": null,
        "startsAt": "2024-04-27T08:30:00.000Z",
        "endsAt": null,
        "timeText": "Sat, Apr 27, 2024",
        "isOnline": false,
        "isCanceled": false,
        "isPast": true,
        "place": {
          "id": "833661905473132",
          "name": "1000 5th Ave, New York, NY, United States, New York 10028",
          "address": null,
          "latitude": null,
          "longitude": null
        },
        "hostId": "100064879894574",
        "hostName": "The Metropolitan Museum of Art, New York",
        "hostUrl": "https://www.facebook.com/metmuseum",
        "thumbnailUrl": "https://scontent.fsin17-1.fna.fbcdn.net/v/t39.30808-6/485673075_1069691248536862_1370405422331951648_n.jpg?stp=c0.12.1572.1084a_cp6_dst-jpg_tt6&cstp=mx1572x1084&ctp=s118x90&_nc_cat=109&_nc_map=urlgen_bucketless&ccb=1-7&_nc_sid=239fc6&_nc_ohc=kN43yWlRyGQQ7kNvwH9IogA&_nc_oc=Adr12QnvTItGWeFqLRtpG0wqjjux8aAYIrAyXLk2inKTLO_sy860RjTYcWvAiLoy98s&_nc_zt=23&_nc_ht=scontent.fsin17-1.fna&_nc_gid=h-HEUtJeuI2n4N2E2qOlIQ&_nc_ss=70289&oh=00_AQM6IRUg-ve6nOgL5SSP9FXCUp_B8YEIkVbgDHOQuW2iTQ&oe=6ADDF44F",
        "ticketPriceText": null,
        "interestedCount": null,
        "fetchedAt": "2026-10-21T01:52:13.333Z"
      }
    ]
  },
  "pagination": {
    "cursor": "WyJZWEJ3WDJOdmJHeGxZM1JwYjI0NmNHWmlhV1F3VFZGTGFYSkdPVkpWTlZCdWVuRjJRbWRxY1dwTVZqYzJSVWhHVlhsNGJYcHJVVFJqYjFNM2FYQXlWRzFSUzJsVFlXaDZRMjV2V0hkaGRERnRlbU5IYmpaVVdXaENiVXhOUm1SRk5EUTFhelpIWWtSeE1VczROWGxWTjBnMk4ydz0iLCJBUUhUaHVVSmotTkd2VDdGdkJXN1BFYUNEbE1IY3VBY0k5a05nQWF2RHMwUEZnUklmcnBPejZZUjk3NVE1MmRLdWJPcFN3YnB3bFI3dldmOXJyREUxaUtWMlEiXQ.g9D1NdRb6b3X30q7kviFbA",
    "hasMore": true,
    "count": 8
  },
  "meta": {
    "platform": "facebook",
    "endpoint": "facebook.profileEvents",
    "creditsCharged": 1,
    "cached": false,
    "cacheAgeSeconds": null,
    "durationMs": 3516,
    "requestId": "req_gg8hhzuwyufky1lqq7ld"
  }
}

Returns

Returns a list of object in data.items.

Fields
FieldTypePresentDescription
platform"facebook"always
idstringalways
namestring | nullalways
urlstringalways
descriptionstring | nullalways
startsAtstring | nullalwaysISO 8601, UTC.
endsAtstring | nullalwaysISO 8601, UTC. Null when the event has no end time.
timeTextstring | nullalwaysFacebook's own rendering of the time, e.g. "Sat, Sep 5 at 3:00 PM MDT". It carries the event's LOCAL timezone, which the epoch timestamps do not.
isOnlineboolean | nullalways
isCanceledboolean | nullalways
isPastboolean | nullalways
placeobject | nullalways
place.idstring | nullalways
place.namestring | nullalways
place.addressstring | nullalways
place.latitudenumber | nullalways
place.longitudenumber | nullalways
hostIdstring | nullalways
hostNamestring | nullalways
hostUrlstring | nullalways
thumbnailUrlstring | nullalways
ticketPriceTextstring | nullalways
interestedCountnumber | nullalwaysPeople who marked the event Interested or Going. In list results above a thousand, Facebook's rounded figure ("1.2K").
fetchedAtstringalways

Cost and behaviour

Credits1 per live request, 0 on a cache hit
Cacheableyes: cache_max_age accepts a cached copy
Batchableyes: usable as a target in POST /v1/jobs/batch
Subscribableyes: as often as every 3600 seconds, firing a webhook only on a change

Other Facebook endpoints