# Webhooks and events

Member activity reaches your systems today in two ways: live callbacks from the SDKs inside your app or page, and scheduled exports to BigQuery, Mixpanel, or Amazon S3. Server webhooks for account events are part of the proposed Business Account API (see [Business Account API: provisioning, OAuth, and the resource map](https://begenuin.com/developers/get-started/any-business/business-account-api-provisioning-oauth-and-the-resource-map)) and are not available yet.

## Available today

| Path | What you get | Reference |
| --- | --- | --- |
| SDK callbacks | Watch, engagement, and navigation events from Genuin views, delivered to your code as they happen | [Receive engagement events in your own analytics](https://begenuin.com/developers/developer-resources/sdk/receive-engagement-events-in-your-own-analytics) |
| BigQuery | Your social experience's event rows in a genuin_data table on a daily, weekly, or monthly schedule | [Receive zero-party data in BigQuery](https://begenuin.com/developers/developer-resources/guides/connect-bigquery-to-the-brand-control-center-to-receive-zero-party-data), [Query Genuin event data in BigQuery](https://begenuin.com/developers/developer-resources/api/integrate-google-bigquery-with-brand-control-center) |
| Mixpanel | Engagement events synced to your Mixpanel project on a schedule | [Push analytics data to Mixpanel](https://begenuin.com/developers/developer-resources/guides/integrate-mixpanel-with-brand-control-center) |
| Amazon S3 | Analytics exports as CSV or Parquet files in your bucket | [Push analytics data to Amazon S3](https://begenuin.com/developers/developer-resources/guides/how-do-i-integrate-amazon-s3-bucket-with-brand-control-center-to-push-analytics-data) |

**Proposed** ([Business Account API: provisioning, OAuth, and the resource map](https://begenuin.com/developers/get-started/any-business/business-account-api-provisioning-oauth-and-the-resource-map), flagged for engineering confirmation)

| Event | When |
| --- | --- |
| video.published, video.removed | A video is published or removed |
| post.created, post.moderated | A member posts; moderation decides |
| partner.requested, partner.accepted | Partnership lifecycle |
| package.purchased, package.delivered | Package and AdCP buys |
| conversion.attributed | Attribution credits an outcome |
| payout.scheduled, payout.sent | Payout lifecycle |

## API & SDK

Access: the calls in the table are the proposed Business Account API (see [Business Account API: provisioning, OAuth, and the resource map](https://begenuin.com/developers/get-started/any-business/business-account-api-provisioning-oauth-and-the-resource-map)), authenticated with a key scoped to the account and a role or an OAuth client acting for it; every confirmation in this article becomes a proposal you can approve by API (`POST /proposals/{proposalId}:approve`). Live today, the server API under `/api/thirdparty` authenticates with a `gn-access-token` (see [Generate an access token](https://begenuin.com/developers/developer-resources/api/generate-access-token-using-authentication-api)), and [Live API today and the Business Account API roadmap](https://begenuin.com/developers/developer-resources/guides/live-api-today-and-the-business-account-api-roadmap) maps what is live to what is proposed.

| Call | Purpose |
| --- | --- |
| POST /accounts/{accountId}/webhooks | Subscribe to events (proposal.created, placement.published, member.subscribed, revenue.posted, moderation.flagged, …) |
| GET /events | Event catalog and delivery log with retries |

```js
// proposed server SDK (Business Account API)
import { Genuin } from '@genuin/sdk';
const genuin = new Genuin({ apiKey: process.env.GENUIN_KEY });
await genuin.webhooks.create(accountId, { url, events: ['proposal.created'] });
await genuin.events.list({ since });
```

Live today: [Embed the Genuin Web SDK on your website](https://begenuin.com/developers/developer-resources/sdk/how-do-you-embed-and-configure-the-genuin-web-sdk-on-your-website) · [Integrate the Genuin iOS SDK](https://begenuin.com/developers/developer-resources/sdk/developer/genuin-sdk/native-compatibility/ios/how-to-integrate-and-power-your-brand-community-in-ios-apps) · [Receive engagement events in your own analytics](https://begenuin.com/developers/developer-resources/sdk/receive-engagement-events-in-your-own-analytics).

SDKs: Web SDK (see [Embed the Genuin Web SDK on your website](https://begenuin.com/developers/developer-resources/sdk/how-do-you-embed-and-configure-the-genuin-web-sdk-on-your-website)), iOS SDK (see [Integrate the Genuin iOS SDK](https://begenuin.com/developers/developer-resources/sdk/developer/genuin-sdk/native-compatibility/ios/how-to-integrate-and-power-your-brand-community-in-ios-apps)), Android SDK (see [Integrate the Genuin Android SDK](https://begenuin.com/developers/developer-resources/sdk/how-to-integrate-and-power-your-brand-community-in-android-apps)), React Native (see [Integrate the Genuin SDK with React Native apps](https://begenuin.com/developers/developer-resources/sdk/how-do-you-integrate-the-genuin-react-native-sdk-into-your-application)), and Flutter (see [Integrate the Genuin SDK with Flutter apps](https://begenuin.com/developers/developer-resources/sdk/how-do-you-integrate-the-genuin-flutter-sdk-into-your-application)) render Genuin and sign members in; the Node (`@genuin/sdk`) and Python (`genuin`) server SDKs are proposed with [Business Account API: provisioning, OAuth, and the resource map](https://begenuin.com/developers/get-started/any-business/business-account-api-provisioning-oauth-and-the-resource-map).
