Skip to main content

Zapier APIs Endpoints

This document outlines the API endpoints used by the Pingback integration for Zapier.

Base URL​

All API calls should be made to the following base URL:

https://api.pingback.com/zapier

Authentication​

All requests to the API must include a valid API key provided in the X-API-Key header.

X-API-Key: YOUR_API_KEY

You can generate your API key within your Pingback account's integrations page.

API Reference​

Check Authentication (/me)​

Verifies the provided API key and returns basic channel information associated with the key. This is used by Zapier during the connection setup process.

  • Method: GET
  • Path: /me
  • Headers:
    • X-API-Key: Your Pingback Zapier API Key.
  • Success Response (200 OK):
    {
    "details": {
    "channelUid": "unique-channel-identifier",
    "channelName": "Example Channel Name"
    }
    }

Subscribe to Webhook (/webhook/subscribe)​

Creates a new webhook subscription for a specific trigger event type. Zapier uses this endpoint when a user creates a Zap with a Pingback trigger.

  • Method: POST
  • Path: /webhook/subscribe
  • Headers:
    • X-API-Key: Your Pingback Zapier API Key.
    • Content-Type: application/json
  • Request Body:
    {
    "hookUrl": "https://hooks.zapier.com/...",
    "triggerEventType": "CONTACT_CONTACT_CREATED",
    "payload": {
    // Optional, depends on the triggerEventType
    "segmentedListId": "optional-list-id",
    "issueUid": "optional-issue-uid",
    "issueLink": "optional-issue-link"
    }
    }
    • hookUrl (string, required): The URL Zapier provides for Pingback to send event notifications.
    • triggerEventType (string, required): The specific Pingback event that should trigger this webhook. Supported values are:
      • CONTACT_CONVERSION_CREATED
      • CONTACT_CONTACT_CREATED
      • CONTACT_CONTACT_UPDATED
      • CONTACT_EMAIL_DELIVERY
      • CONTACT_EMAIL_OPEN
      • CONTACT_EMAIL_CLICK
      • CONTACT_ADDED_TO_SEGMENTED_LIST
      • CONTACT_REMOVED_FROM_SEGMENTED_LIST
    • payload (object, optional): Additional data required for certain event types.
      • segmentedListId (string, optional): Identifier for a segmented list (used for list-related triggers).
      • issueUid (string, optional): Identifier for a specific issue.
      • issueLink (string, optional): Link related to a specific issue.
  • Success Response (200 OK):
    {
    "success": true,
    "data": {
    "id": "unique-subscription-db-id",
    "payload": {
    "issueUid": "unique-identifier"
    },
    "triggerEventType": "CONTACT_CONTACT_CREATED",
    "status": "active",
    "targetUrl": "https://hooks.zapier.com/...",
    "channelUid": "unique-channel-identifier",
    "createdAt": "2023-10-27T10:00:00.000Z",
    "updatedAt": "2023-10-27T10:00:00.000Z"
    }
    }

Unsubscribe from Webhook (/webhook/unsubscribe)​

Removes an existing webhook subscription. Zapier uses this endpoint when a user turns off or deletes a Zap with a Pingback trigger.

  • Method: POST
  • Path: /webhook/unsubscribe
  • Headers:
    • X-API-Key: Your Pingback Zapier API Key.
    • Content-Type: application/json
  • Request Body:
    {
    "hookUrl": "https://hooks.zapier.com/...",
    "triggerEventType": "CONTACT_CONTACT_CREATED"
    }
    • hookUrl (string, required): The webhook URL to unsubscribe.
    • triggerEventType (string, required): The specific event type associated with the webhook (must match one of the supported types listed in the subscribe section).
  • Success Response (200 OK):
    {
    "success": true,
    "data": {
    "id": "unique-subscription-db-id",
    "payload": {
    "issueUid": "unique-identifier"
    },
    "triggerEventType": "CONTACT_CONTACT_CREATED",
    "status": "inactive",
    "targetUrl": "https://hooks.zapier.com/...",
    "channelUid": "unique-channel-identifier",
    "createdAt": "2023-10-27T10:00:00.000Z",
    "updatedAt": "2023-10-27T10:00:00.000Z"
    }
    }

Get Recent Items (/recent-items)​

Fetches sample data for a specific trigger event type. Zapier uses this during Zap setup to allow users to test their trigger and map fields.

  • Method: GET

  • Path: /recent-items

  • Headers:

    • X-API-Key: Your Pingback Zapier API Key.
  • Query Parameters:

    • triggerEventType (string, required): The event type for which to fetch sample data. Must be one of the supported types listed in the /webhook/subscribe section.
  • Success Response (200 OK):

    • Returns an array of 1-3 sample objects representing recent items matching the triggerEventType. The structure varies based on the event type. If no data exists, placeholder examples are returned.

    Example for CONTACT_CONVERSION_CREATED:

    [
    {
    "email": "real-contact@example.com",
    "source": "Form",
    "origin": {
    "url": "https://form-url.com"
    },
    "attributesValues": {
    "name": "Real Contact Name",
    "company": "Real Company Inc."
    }
    }
    ]

    Example for CONTACT_CONTACT_CREATED:

    [
    {
    "id": "contact_uuid_123",
    "email": "real-contact@example.com",
    "source": "Form",
    "origin": {
    "url": "https://form-url.com"
    },
    "status": "active",
    "attributesValues": {
    "name": "Real Contact Name",
    "phone": "555-1234"
    }
    }
    ]

    Example for CONTACT_CONTACT_UPDATED:

    [
    {
    "id": "contact_uuid_123",
    "email": "real-contact@example.com",
    "source": "API Update",
    "previousChangedFields": {
    "status": "pending"
    },
    "newChangedFields": {
    "status": "active"
    }
    }
    ]

    Example for CONTACT_EMAIL_DELIVERY, CONTACT_EMAIL_OPEN:

    [
    {
    "email": "recipient@example.com",
    "contactId": "contact_uuid_456",
    "subject": "Your Weekly Newsletter",
    "issueUid": "issue_uuid_789"
    }
    ]

    Example for CONTACT_EMAIL_CLICK:

    [
    {
    "email": "recipient@example.com",
    "contactId": "contact_uuid_456",
    "subject": "Special Offer Inside!",
    "issueUid": "issue_uuid_abc",
    "link": "https://yourproduct.com/special-offer"
    }
    ]

    Example for CONTACT_ADDED_TO_SEGMENTED_LIST, CONTACT_REMOVED_FROM_SEGMENTED_LIST:

    [
    {
    "email": "member@example.com",
    "contactId": "contact_uuid_xyz",
    "source": "Automation Rule",
    "segmentedListId": "segment_uuid_123",
    "segmentedListName": "High Value Customers"
    }
    ]

Get Dropdown Items (/dropdown-items/:itemType)​

Provides a list of items for dynamic dropdown fields within Zapier trigger or action steps.

  • Method: GET

  • Path: /dropdown-items/{itemType}

  • Headers:

    • X-API-Key: Your Pingback Zapier API Key.
  • Path Parameters:

    • itemType (string, required): The type of items to fetch. Supported values:
      • emails: Fetches sent or automated email campaigns (Issues).
      • segmentedLists: Fetches contact segments/lists.
  • Query Parameters:

    • page (integer, optional, default: 0): For pagination, the zero-indexed page number to retrieve.
  • Success Response (200 OK):

    • Returns an array of objects suitable for populating a dropdown.

    Example for itemType = emails:

    [
    {
    "id": "issue_uuid_789",
    "name": "Your Weekly Newsletter"
    },
    {
    "id": "issue_uuid_abc",
    "name": "Special Offer Inside!"
    }
    ]

    Example for itemType = segmentedLists:

    [
    {
    "id": "segment_uuid_123",
    "name": "High Value Customers"
    },
    {
    "id": "segment_uuid_456",
    "name": "Newsletter Subscribers"
    }
    ]