Facebook CAPI
@mrlevyelad
code:
data:privatelast updated:2 years ago
today
Build integrations remarkably fast!
You're viewing a public workflow template.
Sign up to customize, add steps, modify code and more.
Join 1,000,000+ developers using the Pipedream platform
steps.
trigger
HTTP API
Deploy to generate unique URL
This workflow runs on Pipedream's servers and is triggered by HTTP / Webhook requests.
steps.
nodejs
auth
to use OAuth tokens and API keys in code via theauths object
code
Write any Node.jscodeand use anynpm package. You can alsoexport datafor use in later steps via return or this.key = 'value', pass input data to your code viaparams, and maintain state across executions with$checkpoint.
async (event, steps) => {
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
}
33

const access_token = 'ACCESS_TOKEN';
const pixel_id = 'PIXEL_ID';
const test_event_code = 'TEST12345'; // Optional, used for debugging, leave empty otherwise

let current_timestamp = Math.floor(new Date() / 1000);

const body = 
[{
         "event_name": steps.trigger.event.body.event,
         "event_time": current_timestamp,
         "event_source_url": steps.trigger.event.body.url,
         "action_source": "website",
         "custom_data" : steps.trigger.event.body.event_data || null,
         "user_data": {
            "client_ip_address": steps.trigger.event.client_ip,
            "client_user_agent": steps.trigger.event.body.user_agent,
            "fbp": steps.trigger.event.body.fbp,
            "fbc": steps.trigger.event.body.fbclid
         }
   
}];


return  {
  pixel_id : pixel_id,
  access_token : access_token,
  body : body,
  current_timestamp: current_timestamp,
  test_event_code : test_event_code
}
steps.
send_http_request
Make an HTTP or webhook request and return the response as a step export.
params
URL
https://graph.facebook.com/v13.0/{{steps.nodejs.$return_value.pixel_id}}/events?access_token={{steps.nodejs.$return_value.access_token}}
string ·params.url
Method
string ·params.method
Query

Add query parameters as key-value pairs

data
{{steps.nodejs.$return_value.body}}
test_event_code
{{steps.nodejs.$return_value.test_event_code}}
object ·params.query
Optional
code
async params => {
1
2
3
4
5
6
7
8
9
10
11
}
12
const config = {
  method: params.method,
  url: params.url,
  params: params.query,
  headers: params.headers,
  responseType: params.responseType,
  data: params.data,
}
if (params.auth) config.auth = params.auth
return await require("@pipedreamhq/platform").axios(this, config)