Programmatic Access to Signups (REST / WP-CLI)

July 3, 2026

If you’re a developer integrating the waitlist with other systems — a CRM, a custom dashboard, an export job — this article covers how to read the signup data today and where the current limits are.

State of play: there is no dedicated REST endpoint, WP-CLI command, or action hook for signups yet. The supported integration surface is the wp_sscs_signups database table. A REST/CLI API and an after-signup hook are tracked as enhancements (see the end).

The data contract

Everything is in one table, {$wpdb->prefix}sscs_signups:

Column Type Meaning
id BIGINT UNSIGNED Primary key.
email VARCHAR(255) Subscriber email (unique).
mailerlite_id VARCHAR(255) MailerLite subscriber ID (blank if MailerLite not configured).
referrer_id VARCHAR(255) Referring subscriber’s MailerLite ID, if any.
wp_user_id BIGINT UNSIGNED Logged-in user at signup, if any.
created_at TIMESTAMP When they signed up.

This schema is stable and safe to depend on. (Remember: products using Super Speedy Emails store signups in SSE, not here — this table reflects MailerLite- powered products only.)

Reading signups in PHP

Use $wpdb directly:

global $wpdb;
$table = $wpdb->prefix . 'sscs_signups';

// Most recent 100 signups
$rows = $wpdb->get_results(
    "SELECT email, mailerlite_id, referrer_id, created_at
     FROM {$table}
     ORDER BY created_at DESC
     LIMIT 100"
);

// Signups for analysis: top referrers
$top = $wpdb->get_results(
    "SELECT referrer_id, COUNT(*) AS referrals
     FROM {$table}
     WHERE referrer_id <> ''
     GROUP BY referrer_id
     ORDER BY referrals DESC"
);

Always use $wpdb->prepare() when interpolating any user-supplied value into a query.

Reading signups from the command line

There’s no custom command, but WP-CLI’s generic database access works well (see Viewing & Exporting Your Signups for more):

wp db query "SELECT email, created_at FROM wp_sscs_signups ORDER BY created_at DESC LIMIT 50"

For a quick one-off using bootstrapped WordPress:

wp eval 'global $wpdb; echo $wpdb->get_var("SELECT COUNT(*) FROM {$wpdb->prefix}sscs_signups");'

Current limits (and planned enhancements)

  • No REST endpoint. To expose signups over REST, you’d register your own route (register_rest_route) that reads the table — gate it behind an appropriate capability and authentication.
  • No WP-CLI command. Use wp db query / wp eval as above, or register your own command.
  • No after-signup hook. The plugin doesn’t yet fire a do_action() when a signup succeeds, so you can’t cleanly trigger your own code (push to a CRM, send a Slack ping) on each signup without intercepting the sscs_ajax_signup AJAX action or polling the table. A do_action( 'sscs_after_signup', $email, $product_id, $mailerlite_id ) hook is tracked as an enhancement — see the Developer Hooks & Reference guide.

If any of these would help your integration, let us know so they can be prioritised.

Related

  • Viewing & Exporting Your Signups — query/export recipes for the same table.
  • Developer Hooks & Reference — the data contract, filters, and planned hooks.
  • Architecture — how signups are written (Developers).
×
1/1