Webhooks

Reo.Dev’s Webhooks feature enables real-time data transmission from Reo.Dev to external systems. This unlocks powerful automation workflows, allowing sales and marketing teams to:

  • Get instant Slack alerts when high-intent accounts or developers enter a segment.

  • Automatically add new leads to dynamic email sequences tools or LinkedIn outreach campaigns.

  • Sync new accounts with CRM systems like Salesforce, HubSpot, or Pipedrive.

  • Enrich advertising audiences by syncing accounts to LinkedIn Ads or other ad platforms.

  • Contextualize outreach using activity-based triggers, such as a developer initiating a package installation.

Note: This feature is only available for customers with Data Out API Add-on (Product API, Zapier, Webhooks, etc) in their plans.

To enable Webhooks, contact your Customer Success Representative via Slack or email us at [email protected]


  1. Go to: Settings → Integrations.

  2. Find the Webhooks tile and click "Configure".

You will see the Webhooks dashboard listing all created webhooks, their status, and last updated activity time.


Creating a Webhook

Only users with Admin role permissions in Reo.Dev can create and map Webhooks.

To create a webhook, follow these steps:

  1. Click "Create Webhook" on the Webhooks dashboard.

  2. Fill in the required details:

    • Webhook Name → Give a descriptive name.

    • Payload Type → Choose from Accounts, Developers, or Activities.

    • Destination URL → Enter the external system’s API endpoint (e.g., a Zapier webhook URL).

  3. Click "Submit" to create the Webhook.


Webhook Triggers & Events

Reo.Dev currently supports four types of Webhook triggers:

Event

Trigger Type

Frequency

New Account added to an account segment

Account Segment

Once per day

New Developer added to a developer segment

Developer Segment

Once per day

New activity in an account segment

Account Activity

Instant

New activity in a developer segment

Developer Activity

Instant

  • Account & Developer Segments → Data refreshes every 24 hours, so new accounts/developers are added once a day.

  • Activity Webhooks → Trigger instantly whenever an activity occurs.

Best Practice:


Testing Webhooks & Sample Payloads

Before using a Webhook, test if data is reaching the destination URL:

  • Open the Webhooks dashboard.

  • Click the Test Webhook icon next to a created Webhook.

  • The system will send a sample payload to the configured destination URL.

  • If successful, you will see a confirmation message.

  • If the URL is incorrect or unreachable, an error message appears:

To fix it: Check if the URL is correct and the endpoint is configured to accept data.

Note:

  • The test only verifies if the sample payload is successfully received at the destination URL.

  • It does NOT test webhook behavior after mapping it to a segment.

  • Even if a Webhook is mapped to a segment, the Test Webhook function will not send actual segment data but will always use Reo.Dev’s predefined sample payload for testing.


Sample Payloads

Account Payload Example

{
    "org_id": "03e19e88-5b3e-4f58-b21b-aa7d737d8d19",
    "account_linkedin_link": "https://www.linkedin.com/company/reo-dev",
    "account_name": "Reo.Dev",
    "account_domain": "reo.dev",
    "country": "United States",
    "first_activity_date": "2024-12-31 19:00:01",
    "last_activity_date": "2025-02-15 21:00:01",
    "customer_fit": "STRONG",
    "activity_score": "HIGH",
    "activity_score_numeric": 70,
    "active_developers_count": 10,
    "segment_id": "e7303e53-6387-4726-b6ff-93b5910c6ad3",
    "segment_name": "Reo.Dev Org Test Segment",
    "city": "San Francisco",
    "state": "California",
    "tags": "Sample Tag",
    "developer_funnel": "DISCOVER",
    "reo_account_link": "https://web.reo.dev/dashboard/accounts?orgId=03e19e88-5b3e-4f58-b21b-aa7d737d8d19&activeKey=Overview"
}

Developer Payload Example

{
    "developer_id": "e2eb4d5c-a1f8-40ff-a50a-dc088ec99600",
    "developer_name": "John Doe",
    "country": "United States",
    "developer_linkedin": "https://www.linkedin.com/in/john-doe-04b370135",
    "developer_github": "https://github.com/github-john-doe",
    "developer_business_email": "[email protected]",
    "first_activity_date": "2024-12-31 19:00:01",
    "last_activity_date": "2025-02-15 21:00:01",
    "segment_id": "e7303e53-6387-4726-b6ff-93b5910c6ad3",
    "segment_name": "Reo.Dev Developer Segment",
    "activity_score": "HIGH",
    "activity_score_numeric": 70,
    "tags": "Sample Tag",
    "developer_designation": "Software Engineer",
    "reo_developer_link": "https://web.reo.dev/dashboard/developers?devId=e2eb4d5c-a1f8-40ff-a50a-dc088ec99600",
    "state": "California",
    "city": "San Francisco",
    "account": {
        "org_id": "03e19e88-5b3e-4f58-b21b-aa7d737d8d19",
        "account_linkedin_link": "https://www.linkedin.com/company/reo-dev",
        "account_name": "Reo.Dev",
        "account_domain": "reo.dev",
        "country": "United States",
        "first_activity_date": "2024-12-31 19:00:01",
        "last_activity_date": "2025-02-15 21:00:01",
        "customer_fit": "STRONG",
        "activity_score": "HIGH",
        "activity_score_numeric": 70,
        "active_developers_count": 10,
        "city": "San Francisco",
        "state": "California",
        "tags": "Sample Tag",
        "developer_funnel": "DISCOVER",
        "reo_account_link": "https://web.reo.dev/dashboard/accounts?orgId=03e19e88-5b3e-4f58-b21b-aa7d737d8d19&activeKey=Overview"
    }
}

Activity Payload Example

{
    "activity_id": "1671f26c-92ac-48d8-9fc8-1b58c28c6ac8",
    "activity_type": "PAGE_VISIT",
    "source_type": "DOCUMENT",
    "activity_date": "2024-12-31 19:00:01",
    "segment_id": "e7303e53-6387-4726-b6ff-93b5910c6ad3",
    "segment_name": "Reo.Dev Developer Activities Segment",
    "segment_type": "DEVELOPER",
    "activity_source_url": "https://reo.dev/contact-us",
    "developer": {
        "developer_id": "e2eb4d5c-a1f8-40ff-a50a-dc088ec99600",
        "developer_name": "John Doe",
        "country": "United States",
        "developer_linkedin": "https://www.linkedin.com/in/john-doe-04b370135",
        "developer_github": "https://github.com/github-john-doe",
        "developer_business_email": "[email protected]",
        "first_activity_date": "2024-12-31 19:00:01",
        "last_activity_date": "2025-02-15 21:00:01",
        "activity_score": "HIGH",
        "activity_score_numeric": 70,
        "tags": "Sample Tag",
        "developer_designation": "Software Engineer",
        "reo_developer_link": "https://web.reo.dev/dashboard/developers?devId=e2eb4d5c-a1f8-40ff-a50a-dc088ec99600",
        "state": "California",
        "city": "San Francisco",
        "account": {
            "org_id": "03e19e88-5b3e-4f58-b21b-aa7d737d8d19",
            "account_linkedin_link": "https://www.linkedin.com/company/reo-dev",
            "account_name": "Reo.Dev",
            "account_domain": "reo.dev",
            "country": "United States",
            "first_activity_date": "2024-12-31 19:00:01",
            "last_activity_date": "2025-02-15 21:00:01",
            "customer_fit": "STRONG",
            "activity_score": "HIGH",
            "activity_score_numeric": 70,
            "active_developers_count": 10,
            "city": "San Francisco",
            "state": "California",
            "tags": "Sample Tag",
            "developer_funnel": "DISCOVER",
            "reo_account_link": "https://web.reo.dev/dashboard/accounts?orgId=03e19e88-5b3e-4f58-b21b-aa7d737d8d19&activeKey=Overview"
        }
    }
}

Editing, Pausing, & Deleting Webhooks

  • Edit Webhook: You can modify the name and destination URL. If already mapped to a segment, the new URL will start receiving data automatically.

  • Pause Webhook: Temporarily stops data flow to the endpoint. Can be resumed anytime.

  • Delete Webhook: Removes it permanently, along with all stored webhook data.


Mapping Webhooks to Segments

Note: As of today, Webhooks currently can only be mapped to Account & Developer Segments (not Buyer Segments).

How to Map a Webhook

  • Open the Segments panel.

  • Click "Configure Webhook" for an Account or Developer segment.

  • In the mapping popup modal:

    • For Account Segments, only Account and Activity payload type Webhooks will be listed.

    • For Developer Segments, only Developer and Activity payload type Webhooks will be listed.

    • Account payload Webhooks cannot be mapped to Developer Segments.

  • Select the Webhook(s) you want to map.

  • Save the selection.


First-Time Sync & Incremental Updates

  • When mapping a Webhook for the first time, all existing data in the segment is sent.

  • After that, only new accounts/developers added to the segment will be sent.

  • Activity Webhooks do NOT perform first-time syncs (to prevent system overload).


Error Handling & Audit Logs

  • Webhook failures → If a webhook fails, one retry is attempted.

  • No audit logs (yet) → Currently, webhook logs/errors are not visible in the UI.

  • Planned improvements → Audit logs and better error tracking will be introduced soon.

  • Need help? Contact support via Slack or email [email protected]


Webhook Event Types & Data Fields

Reo.Dev Webhooks capture and send various event types related to developer and account activities across multiple sources. Below is a structured list of the unique activity_type and source_type values currently supported in Webhooks.

Supported Activity & Source Types

GitHub (source_type: "GITHUB")

  • "activity_type": "FORK"

  • "activity_type": "STAR"

  • "activity_type": "COMMENT"

  • "activity_type": "ISSUE_CREATION"

  • "activity_type": "PULL_REQUEST"

  • "activity_type": "WATCH"

Documentation (source_type: "DOCUMENT")

  • "activity_type": "PAGE_VISIT"

  • "activity_type": "COPY_TEXT"

  • "activity_type": "COPY_PACKAGE_MANAGER"

  • "activity_type": "COPY_COMMAND"

  • "activity_type": "FORM_CAPTURE"

Website (source_type: "WEBSITE")

  • "activity_type": "PAGE_VISIT"

  • "activity_type": "COPY_TEXT"

  • "activity_type": "COPY_PACKAGE_MANAGER"

  • "activity_type": "COPY_COMMAND"

  • "activity_type": "FORM_CAPTURE"

Product (source_type: "PRODUCT_JS")

  • "activity_type": "Identity"

  • "activity_type": "PAGE_VISIT"

  • "activity_type": "COPY_TEXT"

  • "activity_type": "COPY_PACKAGE_MANAGER"

  • "activity_type": "COPY_COMMAND"

Code Interactions (source_type: "CODE_INTERACTIONS")

  • "activity_type": "INTERACTION_COPY_COMMAND"

  • "activity_type": "INTERACTION_COPY_PACKAGE_MANAGER"

Slack (source_type: "SLACK")

  • "activity_type": "SLACK_MESSAGE"

  • "activity_type": "SLACK_REPLY"

  • "activity_type": "SLACK_REACTION"

  • "activity_type": "SLACK_JOINED"

LinkedIn (source_type: "LINKEDIN")

  • "activity_type": "LINKEDIN_MESSAGE"

  • "activity_type": "LINKEDIN_REPLY"

  • "activity_type": "LINKEDIN_REACTION"

Product API (source_type: "PRODUCT_API")

  • "activity_type": "USEAGE_METRIC"

Important Disclaimer on USEAGE_METRIC Activity Type

Example Product Usage Metrics Configuration

How to Configure Product Usage Metrics

👉 How to Configure Product Usage Metrics in Settings


Best Practices on Filtering & Processing Webhooks:

By using activity_type, activity_source_url , source_type, and tags ( (available on both Account and Developer payloads as account_tags and developer_tags) your system can categorize and process webhook data with high precision.

These values not only determine what kind of developer or account actions are being tracked and the origin of those actions, but also enable you to create very granular filters and conditions.

For example, combining:

Data Format Example

Webhook payloads follow a structured JSON format like this:

{
  "activity_type": "PAGE_VISIT",
  "source_type": "DOCUMENT",
  "activity_source_url": "https://reo.dev/pricing",
  "tags": "High Intent Account"
}

allows you to:

✅ Target workflows only on visits to high-value pages ✅ Further narrow them down by Account or Developer tags — like "Target Industry", "High Intent Account", "Paid User", "Enterprise", "Viewed API Docs", etc. ✅ Personalize downstream actions based on segment or user type.

Workflow Automation Use Cases

With this combination of filters, you can build powerful personalized workflows using:

  • Zapier

  • n8n

  • Clay

  • Or any tool that supports Webhooks as an input trigger.

Example ideas:

  • Trigger personalized Slack alerts for high-value account or developer activity.

  • Auto-enroll tagged developers into dynamic email or LinkedIn nurture journeys with personalized messaging.

  • Create AMB personalized laning pages.

By leveraging these flexible webhook filters, your team can create more relevant, timely, and contextual automation, with little to no code.


FAQs

Can I map a Webhook to multiple segments?

Yes, a single webhook can be linked to multiple segments.

How frequently is segment data updated?

New data in for Segments is refreshed every 24 hours. Activity Webhooks trigger instantly.

What happens if I change the Webhook’s destination URL?

All mapped segments will start sending data to the new URL automatically.

How do I debug Webhook failures?

Check if the destination URL is correct and the system is configured to accept webhook data. For any other errors or failures, please reach out to us on Slack or via email at [email protected]


Need Further Assistance?

If you encounter any issues, reach out to our team via:

📧 Email → [email protected] 💬 Slack → Contact your CSM

Last updated

Was this helpful?