with Google Ads and LinkedIn Ads?
Emit new event when a fresh response is received on the event registration form. User needs to configure the prop of the specific event. See the documentation
Emit new event when a new campaign is created. See the documentation
Emit new event when a new lead is captured through a form. See the documentation
Emit new event for new leads on a Lead Form. See the documentation
Adds a contact to a specific customer list in Google Ads. Lists typically update in 6 to 12 hours after operation. See the documentation
Queries the Analytics Finder to get analytics for the specified entity i.e company, account, campaign. See the docs here
Create a new customer list in Google Ads. See the documentation
Sample query using analytics finder that gets analytics for a particular account for date range starting in a given year. See the docs here
Generates a report from your Google Ads data. See the documentation
The Google Ads API lets you programmatically manage your Google Ads data and
campaigns. You can use the API to automate common tasks, such as:
You can also use the API to get information about your campaigns, such as:
The Google Ads API is a powerful tool that lets you manage your Google Ads data
and campaigns programmatically. With the API, you can automate common tasks,
such as creating and managing campaigns, adding and removing keywords, and
adjusting bids. You can also use the API to get information about your
campaigns, such as campaign stats, keyword stats, and ad performance.
The Pipedream components interact with Google Ads API through an interal proxy service, which protects Pipedream's developer token.
The component accepts a standard Google Ads API request object with the following structure:
const googleAdsReq = {
  method: "get|post|put|delete", // HTTP method
  url: "/v21/...", // Google Ads API endpoint path
  headers: {
    Authorization: `Bearer ${this.googleAds.$auth.oauth_access_token}`,
  },
  data: {}, // Optional request body for POST/PUT requests
};
To make different API calls while using the proxy:
url path to match your desired Google Ads API endpointmethod to match the required HTTP methoddata fieldExample for a custom query:
const googleAdsReq = {
  method: "post",
  url: "/v16/customers/1234567890/googleAds:search",
  headers: {
    Authorization: `Bearer ${this.googleAds.$auth.oauth_access_token}`,
  },
  data: {
    query: "SELECT campaign.id, campaign.name FROM campaign",
  },
};
The proxy endpoint will remain the same: https://googleads.m.pipedream.net
To interface with Google Ads via the Connect API Proxy, you need to nest the request like this:
Important notes:
https://googleads.m.pipedream.neturl param in the bodymethod to the Connect Proxy should always be a POST, since it's actually targeting the Google Ads proxy (you can define the method for the Google Ads request in options.body.method)const pd = createBackendClient({
  apiHost: process.env.API_HOST,
  credentials: {
    clientId: process.env.CLIENT_ID,
    clientSecret: process.env.CLIENT_SECRET,
  },
  environment: process.env.ENVIRONMENT,
  projectId: process.env.PROJECT_ID,
});
const pdGoogleAdsUrl = "https://googleads.m.pipedream.net";
const resp = await pd.makeProxyRequest(
  {
    searchParams: {
      external_user_id: process.env.EXTERNAL_USER_ID,
      account_id: process.env.ACCOUNT_ID,
    },
  },
  {
    url: pdGoogleAdsUrl,
    options: {
      method: "POST",
      body: {
        url: "/v19/customers:listAccessibleCustomers",
        method: "GET",
        // data: {} // If you need to send a body with a POST request, define it here
      },
    },
  }
);
https://googleads.m.pipedream.netcurl -X POST "https://api.pipedream.com/v1/connect/{your_project_id}/proxy/{url_safe_base64_encoded_url}?external_user_id={external_user_id}&account_id={apn_xxxxxxx}" \
  -H "Authorization: Bearer {access_token}" \
  -H "x-pd-environment: {development | production}" \
  -d '{
    "url": "/v19/customers:listAccessibleCustomers",
    "method": "GET",
    # "data": {} # If you need to send a body with a POST request, define it here
  }'
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    googleAds: { type: "app", app: "google_ads" }
  },
  async run({ $ }) {
    const googleAdsReq = {
      method: "get",
      url: "/v19/customers:listAccessibleCustomers",
      headers: {
        "Authorization": `Bearer ${this.googleAds.$auth.oauth_access_token}`,
        // "login-customer-id": this.googleAds.$auth.customer_id // optional for this endpoint
      }
    }
    // proxy google ads request
    return await axios($, {
      url: "https://googleads.m.pipedream.net",
      data: googleAdsReq,
    })
  }
})The LinkedIn Ads API on Pipedream enables you to automate and integrate your LinkedIn advertising efforts with other services. Fetch campaign data, manage ad accounts, or automate ad creation and adjustments. With Pipedream, you can trigger workflows with HTTP requests, emails, and on a schedule, and connect to thousands of other apps with minimal effort.
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    linkedin_ads: {
      type: "app",
      app: "linkedin_ads",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.linkedin.com/v2/me`,
      headers: {
        Authorization: `Bearer ${this.linkedin_ads.$auth.oauth_access_token}`,
      },
    })
  },
})