Note: the API key and hooks are associated with a specific website. If you have multiple websites configured in WisePops, you'll need to use the correct key and create distinct hooks for each of these websites.

The WisePops API is a web service that returns information about your pop-ups, and the emails they have collected through opt-in forms.

The following endpoints are available:

Each of these services is accessed as an HTTP request and returns a JSON response. All requests must use the https:// protocol, and include an API key in the HTTP header Authorization, as following:

Authorization: WISEPOPS-API key="YOUR_API_KEY_HERE"

Usage limits

This API is available in Pro plans and above.
Standard usage is limited to 500 API calls within 30 days. If you require more please contact our Customer Success team.

We encourage you to use hooks instead of using the /api1/emails endpoint to periodically monitor new emails. It's more efficient and you're not limited.


Retrieve collected emails

This service lets you retrieve collected emails, and other data in opt-in forms. Each call returns a maximum of 100 emails, sorted by their arrival date, from the oldest to the newest.

This service accepts the following optional parameters:

  •  page : Query for a specific set of results. By default, page=1 . If the number of emails returned is equal to 100, you may want to make another query to the next page.
  • collected_after : Retrieve emails that have been collected after the specified date (UTC by default).
  • wisepop_id : Retrieve emails that have been collected from a specific pop-up (the wisepop_id is the id which appears in the URL of the popup when you edit it, ex: https://app.wisepops.com/wisepops/update/id/12345)

All parameters are separated using the ampersand (&) character.

The following command will query for emails that have been collected by the pop-up #12345 after the march 1st 2017, 01:00 am UTC:

curl -H 'Authorization: WISEPOPS-API key="YOUR_API_KEY_HERE"' 'https://app.wisepops.com/api1/emails?collected_after=2017-03-01+01:00:00&wisepop_id=12345'

The response is formatted like this:

[
  {
    "created_at": "2017-03-01 01:12:41",
    "email": "example@example.com",
    "wisepop_id": 12345,
    "wisepop_name": "Live Wisepop",
    "ip": 127.0.0.1,
    "country_code": "US",
    "other_fields": {
      "Gender": "male",
      "City": "New York"
    }
  },
  {
    "created_at": "2017-03-01 03:56:00",
    "email": "other.example@example.com",
    "wisepop_id": 12345,
    "wisepop_name": "Live Wisepop",
    "ip": 127.0.0.1,
    "country_code": "US",
    "other_fields": {
      "Gender": "female",
      "City": "Seattle"
    }
  }
]


Performance Data on Your WisePops

This service will return the list of your wisepops, with their display & conversion metrics. It does not accept any parameters.

For example, the following command:

curl -H 'Authorization: WISEPOPS-API key="YOUR_API_KEY_HERE"' 'https://app.wisepops.com/api1/wisepops'

will have the following response:

[
  {
    "id": 10000,
    "label": "Optin Wisepop",
    "created_at": "2017-02-25 19:10:00",
    "activated": false,
    "display_count": 0,
    "click_count": 0,
    "email_count": 0
  },
  {
    "id": 12345,
    "label": "Live Wisepop",
    "created_at": "2017-02-27 15:29:43",
    "activated": true,
    "display_count": 100,
    "click_count": 20,
    "email_count": 20
  }
]

Did this answer your question?