curl --request GET \
--url 'https://api.benzinga.com/api/v1/erx_gaps?token='import requests
url = "https://api.benzinga.com/api/v1/erx_gaps?token="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.benzinga.com/api/v1/erx_gaps?token=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.benzinga.com/api/v1/erx_gaps?token=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.benzinga.com/api/v1/erx_gaps?token="
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.benzinga.com/api/v1/erx_gaps?token=")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.benzinga.com/api/v1/erx_gaps?token=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"erx_gap": [
{
"closing_range_alerts": [
{
"alert_date": "2026-06-12T15:50:55.000Z",
"alert_type": "CLOSING_RANGE_ALERT",
"closing_id": 747,
"closing_range_percentage": 95.44,
"day_high": 4.13,
"day_low": 3,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": ""
}
],
"day": 3,
"day1_valid": true,
"day_alerts": [
{
"alert_date": "2026-06-15T08:00:00.000Z",
"alert_type": "DAY_3_DIP_BELOW_HVC_ABOVE_10PCT",
"day": 3,
"day_alert_id": 1076,
"description": "ZDGE price dipped below 10% above HVC (Price: 4.10, HVC+10%: 4.58)",
"gap_id": 5228,
"price": 4.1,
"price_type": "price",
"title": "Day 3 Alert for ZDGE"
},
{
"alert_date": "2026-06-15T08:00:00.000Z",
"alert_type": "DAY_3_CROSS_FIBONACCI_LEVEL",
"day": 3,
"day_alert_id": 1077,
"description": "ZDGE price crossed Fibonacci level (Price: 4.10, Fib Level: 4.48)",
"gap_id": 5228,
"price": 4.1,
"price_type": "price",
"title": "Day 3 Alert for ZDGE"
}
],
"earnings_surprise": 40,
"ema_crossovers": [],
"ema_status": "Below HVC",
"ema_status_updated": "Jun 12, 2026, 8:15:28 PM",
"fibonacci_alerts": [],
"fibonacci_status": "",
"fibonacci_status_updated": "",
"first_13min_close": 3.52,
"gap_date": "2026-06-12",
"gap_day_high": 4.2,
"gap_day_low": 3,
"gap_percentage": 0,
"hvc_price": 4.16,
"hvc_undercut": 3.95,
"id": "5228",
"market_session_alerts": [],
"milestone_measurements": [],
"monster_gap": true,
"monster_power_earning_gap": true,
"next_ms_date": "2026-06-22",
"next_ms_day": 10,
"oel_gap": false,
"open": 3.31,
"power_earning_gap": true,
"previous_close": 3.31,
"price": 3.65,
"price_alerts": [
{
"description": "ZDGE crossed above HVC",
"direction": "above",
"gap_id": 5228,
"level_name": "HVC",
"level_price": 4.16,
"price": 4.16,
"price_alert_id": 1238,
"title": "ERX Price Alert for ZDGE"
}
],
"status": false,
"symbol": "ZDGE",
"triggered_date": "2026-06-15",
"updated": 1781510400,
"volume": 211022,
"volume_50d": 104498,
"volume_alerts": [
{
"alert_date": "2026-06-12T14:02:19.000Z",
"alert_id": 2331,
"alert_type": "VOLUME_RUN_RATE_100",
"average_volume_50d": 104498,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": "",
"volume": 133705,
"volume_ratio": 1.28
},
{
"alert_date": "2026-06-12T14:10:14.000Z",
"alert_id": 2333,
"alert_type": "VOLUME_RUN_RATE_200",
"average_volume_50d": 104498,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": "",
"volume": 224125,
"volume_ratio": 2.14
},
{
"alert_date": "2026-06-12T14:33:59.000Z",
"alert_id": 2335,
"alert_type": "VOLUME_RUN_RATE_300",
"average_volume_50d": 104498,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": "",
"volume": 342510,
"volume_ratio": 3.28
}
]
}
]
}
{
"ok": false,
"errors": [
{
"code": "auth_failed",
"id": "unauthorized",
"value": "Invalid or missing authentication token"
}
]
}
{
"ok": false,
"errors": [
{
"code": "no_data_found",
"id": "not_found",
"value": "No data found for the specified parameters"
}
]
}
{
"ok": false,
"errors": [
{
"code": "internal_server_error",
"id": "server_error",
"value": "An unexpected error occurred while processing your request"
}
]
}
ERX Gaps
Returns earnings reaction gap data, which tracks significant price gaps following earnings announcements
curl --request GET \
--url 'https://api.benzinga.com/api/v1/erx_gaps?token='import requests
url = "https://api.benzinga.com/api/v1/erx_gaps?token="
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.benzinga.com/api/v1/erx_gaps?token=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.benzinga.com/api/v1/erx_gaps?token=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.benzinga.com/api/v1/erx_gaps?token="
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.benzinga.com/api/v1/erx_gaps?token=")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.benzinga.com/api/v1/erx_gaps?token=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"erx_gap": [
{
"closing_range_alerts": [
{
"alert_date": "2026-06-12T15:50:55.000Z",
"alert_type": "CLOSING_RANGE_ALERT",
"closing_id": 747,
"closing_range_percentage": 95.44,
"day_high": 4.13,
"day_low": 3,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": ""
}
],
"day": 3,
"day1_valid": true,
"day_alerts": [
{
"alert_date": "2026-06-15T08:00:00.000Z",
"alert_type": "DAY_3_DIP_BELOW_HVC_ABOVE_10PCT",
"day": 3,
"day_alert_id": 1076,
"description": "ZDGE price dipped below 10% above HVC (Price: 4.10, HVC+10%: 4.58)",
"gap_id": 5228,
"price": 4.1,
"price_type": "price",
"title": "Day 3 Alert for ZDGE"
},
{
"alert_date": "2026-06-15T08:00:00.000Z",
"alert_type": "DAY_3_CROSS_FIBONACCI_LEVEL",
"day": 3,
"day_alert_id": 1077,
"description": "ZDGE price crossed Fibonacci level (Price: 4.10, Fib Level: 4.48)",
"gap_id": 5228,
"price": 4.1,
"price_type": "price",
"title": "Day 3 Alert for ZDGE"
}
],
"earnings_surprise": 40,
"ema_crossovers": [],
"ema_status": "Below HVC",
"ema_status_updated": "Jun 12, 2026, 8:15:28 PM",
"fibonacci_alerts": [],
"fibonacci_status": "",
"fibonacci_status_updated": "",
"first_13min_close": 3.52,
"gap_date": "2026-06-12",
"gap_day_high": 4.2,
"gap_day_low": 3,
"gap_percentage": 0,
"hvc_price": 4.16,
"hvc_undercut": 3.95,
"id": "5228",
"market_session_alerts": [],
"milestone_measurements": [],
"monster_gap": true,
"monster_power_earning_gap": true,
"next_ms_date": "2026-06-22",
"next_ms_day": 10,
"oel_gap": false,
"open": 3.31,
"power_earning_gap": true,
"previous_close": 3.31,
"price": 3.65,
"price_alerts": [
{
"description": "ZDGE crossed above HVC",
"direction": "above",
"gap_id": 5228,
"level_name": "HVC",
"level_price": 4.16,
"price": 4.16,
"price_alert_id": 1238,
"title": "ERX Price Alert for ZDGE"
}
],
"status": false,
"symbol": "ZDGE",
"triggered_date": "2026-06-15",
"updated": 1781510400,
"volume": 211022,
"volume_50d": 104498,
"volume_alerts": [
{
"alert_date": "2026-06-12T14:02:19.000Z",
"alert_id": 2331,
"alert_type": "VOLUME_RUN_RATE_100",
"average_volume_50d": 104498,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": "",
"volume": 133705,
"volume_ratio": 1.28
},
{
"alert_date": "2026-06-12T14:10:14.000Z",
"alert_id": 2333,
"alert_type": "VOLUME_RUN_RATE_200",
"average_volume_50d": 104498,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": "",
"volume": 224125,
"volume_ratio": 2.14
},
{
"alert_date": "2026-06-12T14:33:59.000Z",
"alert_id": 2335,
"alert_type": "VOLUME_RUN_RATE_300",
"average_volume_50d": 104498,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": "",
"volume": 342510,
"volume_ratio": 3.28
}
]
}
]
}
{
"ok": false,
"errors": [
{
"code": "auth_failed",
"id": "unauthorized",
"value": "Invalid or missing authentication token"
}
]
}
{
"ok": false,
"errors": [
{
"code": "no_data_found",
"id": "not_found",
"value": "No data found for the specified parameters"
}
]
}
{
"ok": false,
"errors": [
{
"code": "internal_server_error",
"id": "server_error",
"value": "An unexpected error occurred while processing your request"
}
]
}
{
"erx_gap": [
{
"closing_range_alerts": [
{
"alert_date": "2026-06-12T15:50:55.000Z",
"alert_type": "CLOSING_RANGE_ALERT",
"closing_id": 747,
"closing_range_percentage": 95.44,
"day_high": 4.13,
"day_low": 3,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": ""
}
],
"day": 3,
"day1_valid": true,
"day_alerts": [
{
"alert_date": "2026-06-15T08:00:00.000Z",
"alert_type": "DAY_3_DIP_BELOW_HVC_ABOVE_10PCT",
"day": 3,
"day_alert_id": 1076,
"description": "ZDGE price dipped below 10% above HVC (Price: 4.10, HVC+10%: 4.58)",
"gap_id": 5228,
"price": 4.1,
"price_type": "price",
"title": "Day 3 Alert for ZDGE"
},
{
"alert_date": "2026-06-15T08:00:00.000Z",
"alert_type": "DAY_3_CROSS_FIBONACCI_LEVEL",
"day": 3,
"day_alert_id": 1077,
"description": "ZDGE price crossed Fibonacci level (Price: 4.10, Fib Level: 4.48)",
"gap_id": 5228,
"price": 4.1,
"price_type": "price",
"title": "Day 3 Alert for ZDGE"
}
],
"earnings_surprise": 40,
"ema_crossovers": [],
"ema_status": "Below HVC",
"ema_status_updated": "Jun 12, 2026, 8:15:28 PM",
"fibonacci_alerts": [],
"fibonacci_status": "",
"fibonacci_status_updated": "",
"first_13min_close": 3.52,
"gap_date": "2026-06-12",
"gap_day_high": 4.2,
"gap_day_low": 3,
"gap_percentage": 0,
"hvc_price": 4.16,
"hvc_undercut": 3.95,
"id": "5228",
"market_session_alerts": [],
"milestone_measurements": [],
"monster_gap": true,
"monster_power_earning_gap": true,
"next_ms_date": "2026-06-22",
"next_ms_day": 10,
"oel_gap": false,
"open": 3.31,
"power_earning_gap": true,
"previous_close": 3.31,
"price": 3.65,
"price_alerts": [
{
"description": "ZDGE crossed above HVC",
"direction": "above",
"gap_id": 5228,
"level_name": "HVC",
"level_price": 4.16,
"price": 4.16,
"price_alert_id": 1238,
"title": "ERX Price Alert for ZDGE"
}
],
"status": false,
"symbol": "ZDGE",
"triggered_date": "2026-06-15",
"updated": 1781510400,
"volume": 211022,
"volume_50d": 104498,
"volume_alerts": [
{
"alert_date": "2026-06-12T14:02:19.000Z",
"alert_id": 2331,
"alert_type": "VOLUME_RUN_RATE_100",
"average_volume_50d": 104498,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": "",
"volume": 133705,
"volume_ratio": 1.28
},
{
"alert_date": "2026-06-12T14:10:14.000Z",
"alert_id": 2333,
"alert_type": "VOLUME_RUN_RATE_200",
"average_volume_50d": 104498,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": "",
"volume": 224125,
"volume_ratio": 2.14
},
{
"alert_date": "2026-06-12T14:33:59.000Z",
"alert_id": 2335,
"alert_type": "VOLUME_RUN_RATE_300",
"average_volume_50d": 104498,
"description": "",
"gap_id": 5228,
"symbol": "ZDGE",
"title": "",
"volume": 342510,
"volume_ratio": 3.28
}
]
}
]
}
{
"ok": false,
"errors": [
{
"code": "auth_failed",
"id": "unauthorized",
"value": "Invalid or missing authentication token"
}
]
}
{
"ok": false,
"errors": [
{
"code": "no_data_found",
"id": "not_found",
"value": "No data found for the specified parameters"
}
]
}
{
"ok": false,
"errors": [
{
"code": "internal_server_error",
"id": "server_error",
"value": "An unexpected error occurred while processing your request"
}
]
}
Authorizations
Query Parameters
Page offset. For optimization, performance and technical reasons, page offsets are limited from 0 - 100000. Limit the query results by other parameters such as date. Default is 0
Number of results returned. Limit 1000
Date to query for calendar data. Shorthand for date_from and date_to if they are the same. Defaults for latest
Start date in YYYY-MM-DD format
End date in YYYY-MM-DD format
Records last Updated Unix timestamp (UTC). This will force the sort order to be Greater Than or Equal to the timestamp indicated
Response
ERx Gaps
Array of closing range alerts
Show child attributes
Show child attributes
Number of days since gap occurred
5
Array of day-specific alerts
Show child attributes
Show child attributes
Indicates if Day 1 criteria are valid
true
Earnings surprise percentage
0.15
Array of EMA crossover events
Show child attributes
Show child attributes
Current EMA crossover status
"Above EMA21"
Last update timestamp for EMA status
"2024-01-09T10:30:00Z"
Array of Fibonacci level alerts
Show child attributes
Show child attributes
Current Fibonacci retracement status
"Above 50%"
Last update timestamp for Fibonacci status
"2024-01-09T10:30:00Z"
Closing price of first 13 minutes after market open
155.75
Date when the gap occurred
"2024-01-09"
Highest price on gap day
157.5
Lowest price on gap day
153.25
Gap percentage from previous close
3.75
High Volume Close price
156
HVC undercut price level
155.5
Unique identifier for the gap
"64a1b2c3d4e5f6789012345"
Array of market session alerts
Show child attributes
Show child attributes
Array of milestone measurements
Show child attributes
Show child attributes
Indicates if this is a monster gap (>10%)
true
Indicates if this is a monster power earnings gap
false
Date of next milestone
"2024-01-19"
Next milestone day
10
Indicates if this is an Opening Earnings Long gap
true
Opening price on gap day
154.5
Indicates if this is a power earnings gap
true
Previous day's closing price
150.25
Current price
156.25
Array of price level alerts
Show child attributes
Show child attributes
Active status of the gap
true
Stock ticker symbol
"AAPL"
Date when the gap was triggered
"2024-01-09"
Unix timestamp of last update
1704758400
Trading volume on gap day
12500000
50-day average trading volume
8500000
Array of volume-based alerts
Show child attributes
Show child attributes
Was this page helpful?