Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

馃幆New Source Connector Request: Facebook Marketing Source Connector #315

Open
ehisakhile opened this issue Apr 3, 2023 · 0 comments
Labels
good first issue Good for newcomers help wanted Extra attention is needed source connector

Comments

@ehisakhile
Copy link
Contributor

ehisakhile commented Apr 3, 2023

Source Connector Facebook Marketing

What is a Vanus Connector

Vanus Connect allows you to skip the complex integration with external services by offering out-of-the-box connectors. Each connector acts as a proxy between outside services and your system, enabling users to have faster integrations with no codes. All data produced or processed by our connectors conform to the CloudEvents specification, which helps enterprises leverage event-driven architecture to do business in the age of events.

What is a Source Connector

A Source connector obtains data from an underlying data producer and delivers it to the target after the original data has been transformed into a CloudEvents. For example:

  • MySQL Source: extracts data from the Binlog, transforms it into CloudEvents, and sends it to the target.

  • GitHub Source: uses a Webhook server to receive the event from GitHub, transform them to CloudEvents, and send them to the target.

  • AWS S3 Source: Uses the AWS SDK to get the data, transforms it into CloudEvents, and sends them to the target.

There are two types of connectors push or pull connectors.

  • A push connector is passive and only does its logic when it receives an event
  • A pull connector must pull the data in an interval. We use a push method when it鈥檚 possible

Features of this Source Connector

Receive events from Facebook Marketing API for Ad Campaigns, Ads

Specific data needed

Ads Campaign

  • Campaign ID: A unique identifier for the Ad Campaign.
  • Campaign Name: The name of the Ad Campaign.
  • Campaign Objective: The objective of the Ad Campaign, such as brand awareness, lead generation, or website traffic.
  • Campaign Status: The current status of the Ad Campaign, such as active, paused, or deleted.
  • Campaign Delivery Insights: Insights into the delivery and performance of the Ad Campaign, including metrics like reach, impressions, frequency, and cost per result.
  • Campaign Spend: The amount of money spent on the Ad Campaign.
  • Campaign Budget: The budget allocated to the Ad Campaign.
  • Campaign Schedule: The start and end dates of the Ad Campaign.
  • Ad Account ID: The ID of the Ad Account associated with the Ad Campaign.
  • Campaign Objective Details: Additional details about the Ad Campaign objective, such as the specific action the campaign is optimized for, such as app installs or page likes.
  • Campaign Insights: Detailed insights into the performance of the Ad Campaign, including metrics like click-through rate, conversion rate, and cost per conversion.

Ads

  • Ad ID: A unique identifier for the Ad.
  • Ad Name: The name of the Ad.
  • Ad Creative: The content and design of the Ad, including images, videos, and text.
  • Ad Format: The format of the Ad, such as single image, carousel, or video.
  • Ad Placement: The placement of the Ad, such as News Feed, Instagram Stories, or Audience Network.
  • Ad Delivery Insights: Insights into the delivery and performance of the Ad, including metrics like reach, impressions, frequency, and cost per result.
  • Ad Spend: The amount of money spent on the Ad.
  • Ad Schedule: The start and end dates of the Ad.
  • Ad Status: The current status of the Ad, such as active, paused, or deleted.
  • Ad Creative Insights: Detailed insights into the performance of the Ad creative, including metrics like click-through rate, engagement rate, and conversion rate.
  • Ad Targeting: The targeting criteria used for the Ad, including demographic, geographic, and interest-based targeting.
  • Ad Performance Metrics: Performance metrics for the Ad, including metrics like impressions, clicks, conversions, and cost per result.

How to create a new connector

  • Fork the vanus-connect repo.
  • Create a source_twitter_proposal.md based on the source_proposal_example.md under the vanus-connect/proposals directory. The proposal will introduce how a developer tends to implement the connector in detail. The proposal PR must be approved and merged before going to the next step.
  • Copy one of the source templates (Golang template, Java template) to vanus-connect/connectors/ and rename it as source-twitter.
  • Implement your connector and submit a PR.
  • Wait for the connector to be reviewed and approved.

How to claim to implement this connector

If you want to solve this issue, please leave a comment on this issue like:

I'd like to implement the connector, please assign it to me.

Vanus community will assign the issue to you on time.

@Michaelg22 Michaelg22 added help wanted Extra attention is needed source connector good first issue Good for newcomers labels Apr 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers help wanted Extra attention is needed source connector
Projects
None yet
Development

No branches or pull requests

2 participants