← Twitter

New Follower of Me from Twitter API

Pipedream makes it easy to connect APIs for Twitter and 700+ other apps remarkably fast.

Trigger workflow on
New Follower of Me from the Twitter API
Next, do this
Connect to 700+ APIs using code and no-code building blocks
No credit card required
Into to Pipedream
Watch us build a workflow
Watch us build a workflow
7 min
Watch now ➜
Trusted by 250,000+ developers from startups to Fortune 500 companies:
Trusted by 250,000+ developers from startups to Fortune 500 companies

Developers Pipedream

Getting Started

Trigger a workflow on New Follower of Me with Twitter API. When you configure and deploy the workflow, it will run on Pipedream's servers 24x7 for free.

  1. Configure the New Follower of Me trigger
    1. Connect your Twitter account
    2. Configure Polling interval
    3. Configure Followers Cache Size
  2. Add steps to connect to 700+ APIs using code and no-code building blocks
  3. Deploy the workflow
  4. Send a test event to validate your setup
  5. Turn on the trigger

Details

This is a pre-built, open source component from Pipedream's GitHub repo. The component is developed by Pipedream and the community, and verified and maintained by Pipedream.

To contribute an update to an existing component or create a new component, create a PR on GitHub. If you're new to Pipedream component development, you can start with quickstarts for trigger span and action development, and then review the component API reference.

New Follower of Me on Twitter
Description:Emit new event when a user follows you on Twitter
Version:0.0.8
Key:twitter-new-follower-of-me

Code

import common from "../common/followers.mjs";

export default {
  ...common,
  key: "twitter-new-follower-of-me",
  name: "New Follower of Me",
  description: "Emit new event when a user follows you on Twitter",
  version: "0.0.8",
  type: "source",
  props: {
    ...common.props,
    followersCacheSize: {
      type: "integer",
      label: "Followers Cache Size",
      description: "The maximum amount of follower ID's that will be cached at any given time",
      min: 10,
      max: 100,
      default: 100,
    },
  },
  methods: {
    ...common.methods,
    _getHasExecuted() {
      return this.db.get("hasExecuted");
    },
    _setHasExecuted(hasExecuted) {
      this.db.set("hasExecuted", hasExecuted);
    },
    _wasComponentExecuted() {
      return !!this._getHasExecuted();
    },
    _markComponentAsExecuted() {
      this._setHasExecuted(true);
    },
    getFollowersCacheSize() {
      return this.followersCacheSize;
    },
    async getRelevantIds() {
      const mostRecentFollowers = this.getFollowersCache();
      if (!this._wasComponentExecuted()) {
        this._markComponentAsExecuted();

        // The first time this event source is executed, it will emit an event
        // for the most recent followers.
        // We reverse the list of new followers so that the event source emits the
        // events for each follower in the same order that the followers followed
        // the account, from least to most recent.
        return mostRecentFollowers.reverse();
      }

      const newFollowersGen = this.scanNewFollowers(mostRecentFollowers);
      const newFollowers = [];
      for await (const id of newFollowersGen) {
        newFollowers.push(id);
      }

      const followersCache = [
        ...newFollowers,
        ...mostRecentFollowers,
      ];
      this.setFollowersCache(followersCache);

      // We reverse the list of new followers so that the event source emits the
      // events for each follower in the same order that the followers followed
      // the account, from least to most recent.
      return newFollowers.reverse();
    },
  },
};

Configuration

This component may be configured based on the props defined in the component code. Pipedream automatically prompts for input values in the UI and CLI.
LabelPropTypeDescription
N/Adb$.service.dbThis component uses $.service.db to maintain state between component invocations.
TwittertwitterappThis component uses the Twitter app.
Polling intervaltimer$.interface.timer

Pipedream will poll the YouTube API on this schedule

Followers Cache SizefollowersCacheSizeinteger

The maximum amount of follower ID's that will be cached at any given time

Authentication

Twitter uses OAuth authentication. When you connect your Twitter account, Pipedream will open a popup window where you can sign into Twitter and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any Twitter API.

Pipedream requests the following authorization scopes when you connect your account:

About Twitter

From breaking news and entertainment to sports and politics, get the full story with all the live commentary.