⛽ SA Fuel Prices
Loading prices…

API Documentation

Welcome to the Resultsza API documentation. Here you will find all the information needed to use our API effectively.

Swagger Try it out with Swagger UI
See it in action
Ready-to-run code & live demos
Browse Python & JavaScript snippets for every endpoint, with interactive demos you can try right in the browser.
Browse scripts

Available Endpoints

GET Get Latest Results

Retrieves the latest results for all South African National Lottery games in a single call. Optionally, specify a date to get results for that day.

SA games only. This endpoint returns South African National Lottery results (Daily Lotto, Lotto, Lotto Plus 1, Lotto 5 Max, Powerball, Powerball Xtra). For UK 49's, EuroMillions, US Powerball and Mega Millions use the dedicated endpoints in the Other Lottery Games section.
Endpoint
GET /api/get_latest_results?api_key=YOUR_API_KEY

Parameters

Parameter Type Description
api_key Required String Your API key for authentication
date Optional String Format: YYYY-MM-DD. If omitted, returns the most recent results.
Historic draws: a date on or after 2026-06-01 returns the current games in the full new format shown below. A date before 2026-06-01 returns the pre-transition games (including Daily Lotto Plus, Lotto Plus 2 and Powerball Plus) in the legacy format — winning numbers, bonus ball and divisions, without the newer fields (draw_day, next_jackpot, rollover_amount, rollover_no).

Example Request

cURL
curl -i "https://resultsZA.co.za/api/get_latest_results?api_key=YOUR_API_KEY&date=2024-12-10"

Response Format

JSON
{ "status": "success", "results": { "daily_lotto_results": { "date": "2026-06-01T21:00:00Z", "draw_day": "Monday", "draw_id": 2634, "draw_machine": "RNG2", "game_type": "Daily Lotto", "total_pool_size": 784093.87, "total_sales": 1615689.0, "winning_numbers": [4, 5, 23, 32, 29], "bonus_ball": null, "next_draw_date": "2026-06-02T21:00:00Z", "next_jackpot": 380000.0, "rollover_amount": 0.0, "rollover_no": 0, "divisions": [ {"division": "DIV 1", "match": "MATCH 5", "winners": 4, "winning_amount": 68608.2}, {"division": "DIV 2", "match": "MATCH 4", "winners": 208, "winning_amount": 376.9}, {"division": "DIV 3", "match": "MATCH 3", "winners": 6289, "winning_amount": 18.7}, {"division": "DIV 4", "match": "MATCH 2", "winners": 63291, "winning_amount": 4.9} ] }, "powerball_results": { "date": "2026-06-02T21:00:00Z", "draw_day": "Tuesday", "draw_id": 1670, "draw_machine": "RNG2", "game_type": "Powerball", "total_pool_size": 12350000.0, "total_sales": 18900000.0, "winning_numbers": [7, 18, 24, 39, 45], "powerball": 9, "next_draw_date": "2026-06-05T21:00:00Z", "next_jackpot": 18000000.0, "rollover_amount": 5400000.0, "rollover_no": 2, "divisions": [ {"division": "DIV 1", "match": "MATCH 5 + PB", "winners": 0, "winning_amount": 0.0}, {"division": "DIV 2", "match": "MATCH 5", "winners": 1, "winning_amount": 254310.4} ] } } }
Note: If the date parameter is used, results for all game types drawn on that date will be returned.

GET Get Results by Game DEPRECATED

This endpoint is being retired. Please migrate to the dedicated game endpoints listed in the Dedicated Endpoints section. This endpoint will continue to work during the transition period.

Retrieve draw results for a specific game type. Accepts all games across all countries.

Endpoint
GET /api/get_results_by_game?api_key=YOUR_API_KEY&game=GAME_NAME

Parameters

Parameter Type Description
api_key Required String Your API key for authentication
game Required String

Exact game name string. Accepted values:

🇸🇦 South Africa

Daily Lotto, Lotto, Lotto Plus 1, Lotto 5 Max, Powerball, Powerball Xtra

🇬🇧 United Kingdom

UK49s Brunchtime, UK49s Lunchtime, UK49s Drivetime, UK49s Teatime

🇪🇺 Europe

EuroMillions

🇺🇸 United States

US Powerball, Mega Millions
Note: use US Powerball (not Powerball) to request the US game. Powerball returns the South African game.
date Optional String Format: YYYY-MM-DD. Fetch results for a specific date.
Historic draws: a date on or after 2026-06-01 returns the current games in the full new format. A date before 2026-06-01 returns the pre-transition games (Daily Lotto Plus, Lotto Plus 2, Powerball Plus and the old names) from the historic archive in the legacy format. Discontinued game names are accepted only for historic dates.

Example Requests

cURL
curl -i "https://resultsZA.co.za/api/get_results_by_game?api_key=YOUR_API_KEY&game=Lotto"
curl -i "https://resultsZA.co.za/api/get_results_by_game?api_key=YOUR_API_KEY&game=Lotto&date=2024-11-16"
curl -i "https://resultsZA.co.za/api/get_results_by_game?api_key=YOUR_API_KEY&game=UK49s%20Teatime"

Response Format

JSON
{ "status": "success", "results": [ { "game_type": "Daily Lotto", "draw_id": "2634", "draw_date": "2026-06-01T21:00:00Z", "draw_day": "Monday", "draw_machine": "RNG2", "total_pool_size": 784093.87, "total_sales": 1615689.0, "winning_numbers": [4, 5, 23, 32, 29], "bonus_ball": null, "next_draw_date": "2026-06-02T21:00:00Z", "next_jackpot": 380000.0, "rollover_amount": 0.0, "rollover_no": 0, "divisions": [ {"division": "DIV 1", "match": "MATCH 5", "winners": 4, "winning_amount": 68608.2}, {"division": "DIV 2", "match": "MATCH 4", "winners": 208, "winning_amount": 376.9}, {"division": "DIV 3", "match": "MATCH 3", "winners": 6289, "winning_amount": 18.7}, {"division": "DIV 4", "match": "MATCH 2", "winners": 63291, "winning_amount": 4.9} ] } ] }
Note: For Powerball and Powerball Xtra the bonus field is named powerball instead of bonus_ball. This endpoint now returns the full draw detail (financials, next jackpot, rollover and prize divisions) — the same rich field set as get_latest_results.

GET Generate Random Numbers

Generate random numbers for a supported game type. The numbers generated follow the rules of the specified game.

Supported games: Daily Lotto, Lotto, Lotto Plus 1, Lotto 5 Max, Powerball, Powerball Xtra. Number ranges: Daily Lotto 1–36, Lotto family 1–52, Powerball main 1–50 plus a Powerball from 1–16.
Endpoint
GET /api/generate_random_numbers?api_key=YOUR_API_KEY&game=GAME_NAME&lines=NUMBER_OF_LINES

Parameters

Parameter Type Description
api_key Required String Your API key
game Required String The game type (e.g., "Lotto", "Powerball")
lines Optional Integer Number of lines to generate (default is 1)

Example Requests

cURL
curl -i "https://resultsZA.co.za/api/generate_random_numbers?api_key=YOUR_API_KEY&game=Lotto"
curl -i "https://resultsZA.co.za/api/generate_random_numbers?api_key=YOUR_API_KEY&game=Lotto&lines=5"

Response Format

JSON
{ "status": "success", "game": "Lotto", "lines": 5, "random_numbers": [ [1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12], ... ] }

GET Hot & Cold Numbers

Retrieve the most frequently (hot) and least frequently (cold) drawn numbers for a game.

Endpoint
GET /api/get_hot_cold_numbers_stats?api_key=YOUR_API_KEY&product=GAME_NAME

Parameters

Parameter Type Description
api_key Required String Your API key
product Required String The game type (e.g., "Lotto", "Powerball")

Example Request

cURL
curl -i "https://resultsZA.co.za/api/get_hot_cold_numbers_stats?api_key=YOUR_API_KEY&product=Lotto"

Response Format

JSON
{ "status": "success", "product": "Lotto", "hot": [5, 12, 19, ...], "cold": [45, 23, 7, ...] }

GET Get Number Frequencies

Fetch the frequency of each number drawn for a specific game type.

Endpoint
GET /api/get_number_frequencies?api_key=YOUR_API_KEY&product=GAME_NAME

Parameters

Parameter Type Description
api_key Required String Your API key
product Required String The game type (e.g., "Lotto", "Powerball")

Example Request

cURL
curl -i "https://resultsZA.co.za/api/get_number_frequencies?api_key=YOUR_API_KEY&product=Powerball Xtra"

Response Format

JSON
{ "status": "success", "product": "Lotto", "statistics": [ {"number": 5, "frequency": 20, "last_drawn": "2023-03-15"}, ... ] }

GET Get Number Pairs

Retrieve the most common number pairs drawn together (top 10 pairs) for a game.

Endpoint
GET /api/get_number_pairs?api_key=YOUR_API_KEY&product=GAME_NAME

Parameters

Parameter Type Description
api_key Required String Your API key
product Required String The game type (e.g., "Lotto")

Example Request

cURL
curl -i "https://resultsZA.co.za/api/get_number_pairs?api_key=YOUR_API_KEY&product=Lotto"

Response Format

JSON
{ "status": "success", "product": "Lotto", "pairs": [ {"number1": 5, "number2": 7, "frequency": 15, "last_drawn": "2023-03-10"}, ... ] }

POST Winning Number Checker SA ONLY

South African games only. Number checking for UK 49's, EuroMillions, US Powerball and Mega Millions is not currently supported.

Submit your played numbers and check them against the winning numbers for a specific SA game and draw date. Supports up to 10 lines per request.

Endpoint
POST /api/check_played_numbers?api_key=YOUR_API_KEY&game=GAME_NAME&date=YYYY-MM-DD

Request Body Format

{ "played_numbers": [ [10, 20, 30, 40, 50, 5], [1, 6, 29, 11, 15, 17] ] }

For a single line, use:

{ "played_numbers": [1, 6, 29, 11, 15, 17] }

Example Request

cURL
curl -X POST "https://resultsZA.co.za/api/check_played_numbers?api_key=YOUR_API_KEY&game=Lotto&date=2024-12-07" -H "Content-Type: application/json" -d '{ "played_numbers": [[10,20,30,40,50,5],[1,6,29,11,15,17]] }'

Response Format

JSON
{ "status": "success", "game": "Lotto", "draw_date": "2024-12-07", "results": { "line1_results": { "played_numbers": [10, 20, 30, 40, 50, 5], "winning_numbers": [10, 20, 30, 47, 49, 50], "bonus_ball": 21, "matches": { "main_matches": 4, "bonus_match": true }, "division": "DIV 4", "winning_amount": "2001.10" }, "line2_results": { "played_numbers": [1, 6, 29, 11, 15, 17], "winning_numbers": [10, 20, 30, 47, 49, 50], "bonus_ball": 21, "matches": { "main_matches": 0, "bonus_match": false }, "division": null, "winning_amount": null } } }

POST Bulk Number Checker SA ONLY

South African games only. Bulk number checking for UK 49's, EuroMillions, US Powerball and Mega Millions is not currently supported.

Check a larger set of played numbers against the winning numbers for a specific SA game and draw date. Supports up to 500 lines per request, deducting tokens based on lines checked.

Endpoint
POST /api/bulk_check_numbers?api_key=YOUR_API_KEY&game=GAME_NAME&date=YYYY-MM-DD

API Call Consumption:

  • 5 API calls for up to 50 lines checked.
  • Requests exceeding 50 lines but not divisible by 50 will consume API calls for the next multiple of 50 (e.g., 53 lines consume 10 API calls).

Request Body Format:

The request body must be in JSON format:

{ "played_numbers": [ [10, 20, 30, 40, 50, 5], [1, 6, 29, 11, 15, 17], ... ] }

Notes:

  • For Powerball and Powerball Xtra, the last number in each line is treated as the Powerball.
  • For other games, all numbers in a line are treated as main numbers, and the bonus ball is checked separately.
  • Lines exceeding the 500-line cap will return an error.

Example API Call:

curl -X POST "https://resultsZA.co.za/api/bulk_check_numbers?api_key=YOUR_API_KEY&game=Lotto Plus 1&date=2024-12-11" \ -H "Content-Type: application/json" \ -d '{ "played_numbers": [ [10, 20, 30, 40, 50, 5], [1, 6, 29, 11, 15, 17], ... ] }'

Response Format:

{ "status": "success", "game": "Lotto Plus 1", "draw_date": "2024-12-11", "lines_checked": 50, "results": { "line1_results": { "played_numbers": [10, 20, 30, 40, 50, 5], "winning_numbers": [10, 20, 30, 47, 49, 50], "bonus_ball": 21, "matches": { "main_matches": 4, "bonus_match": true }, "division": "DIV 4", "winning_amount": "2001.10" }, ... } }

Note: Ensure your API key has sufficient remaining API calls before submitting a bulk check request.

POST Text-to-Lucky Numbers

Convert input text into a unique set of lucky numbers for a selected game, following game rules.

Endpoint
POST /api/text_to_lucky_numbers?api_key=YOUR_API_KEY&game=GAME_NAME

Request Body Format

{ "text": "Your custom input text" }

The game is passed as a query parameter in the URL, not in the request body.

Example Request

cURL
curl -X POST "https://resultsZA.co.za/api/text_to_lucky_numbers?api_key=YOUR_API_KEY&game=Powerball" -H "Content-Type: application/json" -d '{ "text": "John Doe" }'

Response Format

JSON
{ "status": "success", "text": "John Doe", "game_type": "Powerball", "lucky_numbers": [7, 22, 33, 41, 50], "powerball": 18 }
Note: Each request consumes 1 API call and returns a unique, deterministic line of numbers.

GET Check API Key Balance

Check your API key balance and subscription status. This endpoint does not consume any API calls.

Endpoint
GET /check_api_key_balance?api_key=YOUR_API_KEY
POST /check_api_key_balance

Note: You can use either GET (with query parameter) or POST (with JSON body containing api_key).

Example Requests

cURL (GET)
curl -i "https://resultsZA.co.za/check_api_key_balance?api_key=YOUR_API_KEY"
cURL (POST)
curl -X POST "https://resultsZA.co.za/check_api_key_balance" -H "Content-Type: application/json" -d '{"api_key": "YOUR_API_KEY"}'

Response Formats

The response format for active subscriptions:

Active Subscription
JSON
{ "status": "success", "billing_model": "subscription", "tier": "professional", "monthly_limit": 4000, "used": 1250, "remaining": 2750, "subscription_status": "active", "subscription_end": "2026-02-23", "days_until_expiry": 31, "grace_period": false, "note": "IMPORTANT: When your subscription expires, you have 7 days (grace period) to renew. After the grace period, any unused API calls are permanently lost. If you exhaust your calls before expiration, you can upgrade to a higher tier immediately." }
Pending Payment
{ "status": "success", "billing_model": "subscription", "subscription_status": "pending", "message": "Your subscription is pending payment confirmation. Once payment is received and processed, your subscription will be activated and you will be able to use the API.", "tier": "basic", "subscription_status_display": "Pending Payment" }
Expired Subscription
{ "status": "success", "billing_model": "subscription", "subscription_status": "expired", "message": "Your subscription has expired. Please renew to restore API access. You will need to initiate a new subscription request, which will generate an invoice for payment.", "tier": "professional", "subscription_status_display": "Expired", "renewal_url": "https://resultsza.co.za/buy_now?api_key=YOUR_API_KEY&tier=professional&action=renew" }
In Grace Period
{ "status": "success", "billing_model": "subscription", "tier": "basic", "monthly_limit": 1000, "used": 750, "remaining": 250, "subscription_status": "active", "subscription_end": "2026-01-16", "days_until_expiry": -3, "grace_period": true, "days_remaining_in_grace": 4, "warning": "Your subscription expired 3 day(s) ago. You have 4 days remaining in grace period to renew.", "renewal_url": "https://resultsza.co.za/buy_now?api_key=YOUR_API_KEY&tier=basic&action=renew", "note": "IMPORTANT: When your subscription expires, you have 7 days (grace period) to renew. After the grace period, any unused API calls are permanently lost. If you exhaust your calls before expiration, you can upgrade to a higher tier immediately." }
Note: This endpoint does not deduct API calls. Use it to check your balance before making API requests.

Subscription Tiers & Billing

ResultsZA API uses subscription-based billing with monthly subscription plans and tiered API call limits that reset each month:

Tier Monthly API Calls Price (Monthly)
Starter 300 calls/month R149
Basic 1,500 calls/month R299
Professional 6,000 calls/month R599
Unlimited Unlimited calls/month* R1000

*Unlimited is subject to fair use and API rate limits (60 requests/minute per API key) to protect service availability. Exceeding the rate limit triggers a 5-minute cooldown period.

Subscription Features:
  • Monthly API call limits reset automatically on your billing cycle
  • 7-day grace period after expiration to use remaining calls and renew
  • Upgrade or downgrade tiers at any time (unused calls are lost when downgrading)
  • Renewal allowed 7 days before expiry or during grace period
  • Unused calls are permanently lost after the 7-day grace period ends
  • Unlimited tier is rate limited to 60 requests per minute per API key — exceeding this triggers a 5-minute cooldown where all requests are blocked

API Call Consumption

Different endpoints consume different amounts of API calls:

Endpoint Calls Consumed
Get Latest Results 1 call
Get Results by Game 1 call
Generate Random Numbers 1 call per line
Hot & Cold Numbers 1 call
Number Frequencies 1 call
Number Pairs 1 call
Winning Number Checker 1 call per line (up to 10 lines)
Bulk Number Checker 5 API calls for up to 50 lines, then 5 API calls per additional 50 lines
Get UK 49's Results 1 call
Text-to-Lucky Numbers 1 call
Check API Key Balance 0 calls (free)

Supported Games

Games are organised by country. Each country has its own dedicated endpoint(s).

🇸🇦 South Africa

Current games (from 1 June 2026). Use Get Latest Results or Get Results by Game.

  • Daily Lotto
  • Lotto
  • Lotto Plus 1
  • Lotto 5 Max
  • Powerball
  • Powerball Xtra
Game changes effective 1 June 2026: Daily Lotto Plus was discontinued, Lotto Plus 2 was replaced by Lotto 5 Max, and Powerball Plus was renamed to Powerball Xtra. Historic results for old games remain queryable with a date before 2026-06-01. Number ranges also changed: Lotto family now draws from 1–52 (was 1–58) and Powerball from 1–16 (was 1–20).

Legacy SA games (historic data only)

  • Daily Lotto Plus — discontinued
  • Lotto Plus 2 — replaced by Lotto 5 Max
  • Powerball Plus — renamed to Powerball Xtra

🇬🇧 United Kingdom

Use Get Results by Game or the dedicated Get UK 49's Results endpoint.

  • UK49s Brunchtime — draws at 11:49 AM UK / 1:49 PM SAST (from early 2026)
  • UK49s Lunchtime — draws at 12:49 PM UK / 2:49 PM SAST (from December 1996)
  • UK49s Drivetime — draws at 4:49 PM UK / 6:49 PM SAST (from early 2026)
  • UK49s Teatime — draws at 5:49 PM UK / 7:49 PM SAST (from November 1997)

🇪🇺 Europe

Use the dedicated Get EuroMillions Results endpoint.

  • EuroMillions — draws every Tuesday & Friday at 21:00 CET / 23:00 SAST (from February 2004)

🇺🇸 United States

Use the dedicated Get Powerball Results or Get Mega Millions Results endpoints.

  • Powerball — draws every Monday, Wednesday & Saturday at 22:59 ET / ~05:00 SAST (from 2010)
  • Mega Millions — draws every Tuesday & Friday at 23:00 ET / ~05:00 SAST (from 2002)
Endpoint coverage by game:
  • get_latest_results — SA games only
  • get_results_by_game — SA games + UK 49's
  • get_uk49s_results — UK 49's only
  • get_euromillions_results — EuroMillions only
  • get_powerball_results — US Powerball only
  • get_megamillions_results — Mega Millions only
  • Statistical endpoints (hot/cold, frequencies, pairs) — SA games only

Dedicated Endpoints

One endpoint per game, grouped by country. These are the recommended endpoints going forward — get_results_by_game is being retired.

🇸🇦 South Africa

SA Get Daily Lotto Results

Endpoint
GET /api/get_daily_lotto_results?api_key=YOUR_API_KEY
Parameters
ParameterTypeDescription
api_key RequiredStringYour API key
date OptionalStringYYYY-MM-DD. Omit for latest draw.
cURL
curl -i "https://resultsZA.co.za/api/get_daily_lotto_results?api_key=YOUR_API_KEY"
Response
JSON
{ "status": "success", "results": [ { "game_type": "Daily Lotto", "draw_id": "2635", "draw_date": "2026-06-02T21:00:00Z", "draw_day": "Tuesday", "draw_machine": "RNG1", "total_pool_size": 1098087.82, "total_sales": 2262699.0, "winning_numbers": [5, 6, 10, 24, 32], "bonus_ball": null, "next_draw_date": "2026-06-03T21:00:00Z", "next_jackpot": 400000.0, "rollover_amount": 0.0, "rollover_no": 0, "divisions": [ { "division": "DIV 1", "match": "MATCH 5", "winners": 1, "winning_amount": 384330.7 }, { "division": "DIV 2", "match": "MATCH 4", "winners": 278, "winning_amount": 394.9 }, { "division": "DIV 3", "match": "MATCH 3", "winners": 9076, "winning_amount": 18.1 }, { "division": "DIV 4", "match": "MATCH 2", "winners": 88379, "winning_amount": 4.9 } ] } ] }

SA Get Lotto Results

Draws every Wednesday and Saturday. Returns the full rich format (with divisions) for draws from 1 June 2026 onwards; returns the legacy format for historic draws before that date.

Endpoint
GET /api/get_lotto_results?api_key=YOUR_API_KEY
cURL
curl -i "https://resultsZA.co.za/api/get_lotto_results?api_key=YOUR_API_KEY&date=2026-06-03"
Response
JSON
{ "status": "success", "results": [ { "game_type": "Lotto", "draw_id": "2651", "draw_date": "2026-06-03T21:00:00Z", "draw_day": "Wednesday", "draw_machine": "TSHEGO", "total_pool_size": 4922711.5, "total_sales": 10046350.0, "winning_numbers": [5, 8, 19, 30, 44, 46], "bonus_ball": 13, "next_draw_date": null, "next_jackpot": 22000000.0, "rollover_amount": 17917009.44, "rollover_no": 8, "divisions": [ { "division": "DIV 1", "match": "MATCH 6", "winners": 0, "winning_amount": 0.0 }, { "division": "DIV 2", "match": "MATCH 5 + BONUS", "winners": 0, "winning_amount": 0.0 }, { "division": "DIV 3", "match": "MATCH 5", "winners": 25, "winning_amount": 44543.3 }, { "division": "DIV 4", "match": "MATCH 4 + BONUS", "winners": 61, "winning_amount": 4000.0 }, { "division": "DIV 5", "match": "MATCH 4", "winners": 1417, "winning_amount": 200.0 }, { "division": "DIV 6", "match": "MATCH 3 + BONUS", "winners": 2018, "winning_amount": 200.0 }, { "division": "DIV 7", "match": "MATCH 2 + BONUS", "winners": 21451, "winning_amount": 30.0 }, { "division": "DIV 8", "match": "MATCH 3", "winners": 28211, "winning_amount": 20.0 } ] } ] }

SA Get Lotto Plus 1 Results

Draws every Wednesday and Saturday alongside Lotto.

Endpoint
GET /api/get_lotto_plus_1_results?api_key=YOUR_API_KEY
cURL
curl -i "https://resultsZA.co.za/api/get_lotto_plus_1_results?api_key=YOUR_API_KEY&date=2026-06-03"
Response
JSON
{ "status": "success", "results": [ { "game_type": "Lotto Plus 1", "draw_id": "2651", "draw_date": "2026-06-03T21:00:00Z", "draw_day": "Wednesday", "draw_machine": "TSHEGO", "total_pool_size": 2124532.2, "total_sales": 4335780.0, "winning_numbers": [2, 28, 45, 49, 51, 52], "bonus_ball": 23, "next_draw_date": null, "next_jackpot": 2500000.0, "rollover_amount": 550724.49, "rollover_no": 1, "divisions": [ { "division": "Plus1 DIV 1", "match": "MATCH 6", "winners": 0, "winning_amount": 0.0 }, { "division": "Plus1 DIV 2", "match": "MATCH 5 + BONUS", "winners": 1, "winning_amount": 244766.4 }, { "division": "Plus1 DIV 3", "match": "MATCH 5", "winners": 28, "winning_amount": 15297.9 }, { "division": "Plus1 DIV 4", "match": "MATCH 4 + BONUS", "winners": 58, "winning_amount": 2000.0 }, { "division": "Plus1 DIV 5", "match": "MATCH 4", "winners": 1291, "winning_amount": 100.0 }, { "division": "Plus1 DIV 6", "match": "MATCH 3 + BONUS", "winners": 1596, "winning_amount": 100.0 }, { "division": "Plus1 DIV 7", "match": "MATCH 2 + BONUS", "winners": 17168, "winning_amount": 15.0 }, { "division": "Plus1 DIV 8", "match": "MATCH 3", "winners": 23848, "winning_amount": 10.0 } ] } ] }

SA Get Lotto 5 Max Results

Replaced Lotto Plus 2 from 1 June 2026. Draws every Wednesday and Saturday. Returns the same full format as other SA games.

Endpoint
GET /api/get_lotto_5_max_results?api_key=YOUR_API_KEY
cURL
curl -i "https://resultsZA.co.za/api/get_lotto_5_max_results?api_key=YOUR_API_KEY"
Response
JSON
{ "status": "success", "results": [ { "game_type": "Lotto 5 Max", "draw_id": "2651", "draw_date": "2026-06-03T21:00:00Z", "draw_day": "Wednesday", "draw_machine": "TSHEGO", "total_pool_size": 1950626.3, "total_sales": 3980870.0, "winning_numbers": [2, 4, 6, 25, 29, 42], "bonus_ball": 3, "next_draw_date": null, "next_jackpot": 13000000.0, "rollover_amount": 10766609.87, "rollover_no": 12, "divisions": [ { "division": "5 MAX DIV 1", "match": "MATCH 6", "winners": 0, "winning_amount": 0.0 }, { "division": "5 MAX DIV 2", "match": "MATCH 5 + BONUS", "winners": 1, "winning_amount": 189944.2 }, { "division": "5 MAX DIV 3", "match": "MATCH 5", "winners": 24, "winning_amount": 13850.1 }, { "division": "5 MAX DIV 4", "match": "MATCH 4 + BONUS", "winners": 57, "winning_amount": 2000.0 }, { "division": "5 MAX DIV 5", "match": "MATCH 4", "winners": 1105, "winning_amount": 100.0 }, { "division": "5 MAX DIV 6", "match": "MATCH 3 + BONUS", "winners": 2784, "winning_amount": 100.0 }, { "division": "5 MAX DIV 7", "match": "MATCH 2 + BONUS", "winners": 18197, "winning_amount": 15.0 }, { "division": "5 MAX DIV 8", "match": "MATCH 3", "winners": 22505, "winning_amount": 10.0 } ] } ] }

SA Get SA Powerball Results

South African Powerball. Draws every Tuesday and Friday. For US Powerball see Get US Powerball Results.

Endpoint
GET /api/get_sa_powerball_results?api_key=YOUR_API_KEY
cURL
curl -i "https://resultsZA.co.za/api/get_sa_powerball_results?api_key=YOUR_API_KEY"
Response
JSON
{ "status": "success", "results": [ { "game_type": "Powerball", "draw_id": "1725", "draw_date": "2026-06-02T21:00:00Z", "draw_day": "Tuesday", "draw_machine": "PB1", "total_pool_size": 13950040.0, "total_sales": 27900080.0, "winning_numbers": [2, 10, 22, 28, 49], "powerball": 7, "next_draw_date": "2026-06-05T21:00:00Z", "next_jackpot": 7000000.0, "rollover_amount": 0.0, "rollover_no": 0, "divisions": [ { "division": "DIV 1", "match": "MATCH 5 + PowerBall", "winners": 1, "winning_amount": 128593394.5 }, { "division": "DIV 2", "match": "MATCH 5", "winners": 0, "winning_amount": 0.0 }, { "division": "DIV 3", "match": "MATCH 4 + PowerBall", "winners": 22, "winning_amount": 31983.7 }, { "division": "DIV 4", "match": "MATCH 4", "winners": 305, "winning_amount": 2000.0 }, { "division": "DIV 5", "match": "MATCH 3 + PowerBall", "winners": 935, "winning_amount": 500.0 }, { "division": "DIV 6", "match": "MATCH 3", "winners": 12435, "winning_amount": 100.0 }, { "division": "DIV 7", "match": "MATCH 2 + PowerBall", "winners": 13171, "winning_amount": 100.0 }, { "division": "DIV 8", "match": "MATCH 1 + PowerBall", "winners": 68807, "winning_amount": 20.0 }, { "division": "DIV 9", "match": "MATCH PowerBall", "winners": 111756, "winning_amount": 10.0 } ] } ] }

SA Get Powerball Xtra Results

Renamed from Powerball Plus on 1 June 2026. Draws every Tuesday and Friday alongside SA Powerball.

Endpoint
GET /api/get_powerball_xtra_results?api_key=YOUR_API_KEY
cURL
curl -i "https://resultsZA.co.za/api/get_powerball_xtra_results?api_key=YOUR_API_KEY"
Response
JSON
{ "status": "success", "results": [ { "game_type": "Powerball Xtra", "draw_id": "1725", "draw_date": "2026-06-02T21:00:00Z", "draw_day": "Tuesday", "draw_machine": "PB1", "total_pool_size": 5953152.5, "total_sales": 11906305.0, "winning_numbers": [4, 12, 27, 35, 41], "powerball": 15, "next_draw_date": "2026-06-05T21:00:00Z", "next_jackpot": 116000000.0, "rollover_amount": 109994741.95, "rollover_no": 38, "divisions": [ { "division": "XTRA DIV 1", "match": "MATCH 5 + PowerBall", "winners": 0, "winning_amount": 0.0 }, { "division": "XTRA DIV 2", "match": "MATCH 5", "winners": 0, "winning_amount": 0.0 }, { "division": "XTRA DIV 3", "match": "MATCH 4 + PowerBall", "winners": 16, "winning_amount": 20402.8 }, { "division": "XTRA DIV 4", "match": "MATCH 4", "winners": 255, "winning_amount": 1000.0 }, { "division": "XTRA DIV 5", "match": "MATCH 3 + PowerBall", "winners": 691, "winning_amount": 250.0 }, { "division": "XTRA DIV 6", "match": "MATCH 3", "winners": 10222, "winning_amount": 50.0 }, { "division": "XTRA DIV 7", "match": "MATCH 2 + PowerBall", "winners": 9433, "winning_amount": 50.0 }, { "division": "XTRA DIV 8", "match": "MATCH 1 + PowerBall", "winners": 50357, "winning_amount": 10.0 }, { "division": "XTRA DIV 9", "match": "MATCH PowerBall", "winners": 82382, "winning_amount": 5.0 } ] } ] }

🇬🇧 United Kingdom

🇬🇧 UK 49's UK 49's Draw Results

Retrieve results for any of the four daily UK 49's draws using either the Get Results by Game endpoint (accepts all game types including UK 49's) or the dedicated Get UK 49's Results endpoint below (restricted to UK 49's draw names only — returns an error if you pass an SA game name). These draws are not affiliated with the South African National Lottery.

Supported Draw Names (use as the game parameter)

DrawUK TimeSASTAvailable From
UK49s Brunchtime11:49 AM1:49 PMEarly 2026
UK49s Lunchtime12:49 PM2:49 PMDecember 1996
UK49s Drivetime4:49 PM6:49 PMEarly 2026
UK49s Teatime5:49 PM7:49 PMNovember 1997

Example Requests

cURL — Latest Lunchtime result
curl -i "https://resultsZA.co.za/api/get_results_by_game?api_key=YOUR_API_KEY&game=UK49s%20Lunchtime"
cURL — Teatime on a specific date
curl -i "https://resultsZA.co.za/api/get_results_by_game?api_key=YOUR_API_KEY&game=UK49s%20Teatime&date=2025-12-25"

Response Format

JSON
{ "status": "success", "results": [ { "draw_id": null, "game_name": "UK49s Lunchtime", "draw_day": "Wednesday", "draw_date": "2026-06-03T20:00:00Z", "winning_numbers": [18, 24, 29, 33, 38, 44], "booster_ball": 47 } ] }
Note: UK 49's is a fixed-odds betting draw operated by 49's Ltd (UK). Not affiliated with the South African National Lottery. Historical data: Lunchtime from Dec 1996, Teatime from Nov 1997. Booster ball available from 2007. Brunchtime and Drivetime from early 2026.

Dedicated Endpoint: Get UK 49's Results

A UK 49's-specific alias that only accepts UK 49's draw names. Passing an SA game name returns a 400 error.

Endpoint
GET /api/get_uk49s_results?api_key=YOUR_API_KEY&game=DRAW_NAME
Parameters
ParameterTypeDescription
api_key Required String Your API key
game Required String One of: UK49s Brunchtime, UK49s Lunchtime, UK49s Drivetime, UK49s Teatime
date Optional String YYYY-MM-DD. Omit for latest.
cURL — Latest Lunchtime
curl -i "https://resultsZA.co.za/api/get_uk49s_results?api_key=YOUR_API_KEY&game=UK49s%20Lunchtime"

🇪🇺 Europe

🇪🇺 EuroMillions Get EuroMillions Results

Returns EuroMillions draw results. EuroMillions draws every Tuesday and Friday at 21:00 CET. Historical data available from February 2004.

Endpoint
GET /api/get_euromillions_results?api_key=YOUR_API_KEY
Parameters
ParameterTypeDescription
api_key Required String Your API key
date Optional String YYYY-MM-DD. Omit for the latest draw.
Example Requests
cURL — Latest draw
curl -i "https://resultsZA.co.za/api/get_euromillions_results?api_key=YOUR_API_KEY"
cURL — Specific date
curl -i "https://resultsZA.co.za/api/get_euromillions_results?api_key=YOUR_API_KEY&date=2026-06-03"
Response Format
JSON
{ "status": "success", "results": [ { "game": "EuroMillions", "date": "2026-06-02", "day": "Tuesday", "winning_numbers": "6, 9, 17, 18, 42", "lucky_star_1": 7, "lucky_star_2": 9, "jackpot": 142961066.5, "draw_id": "442026" } ] }

🇺🇸 United States

🇺🇸 Powerball Get US Powerball Results

Returns US Powerball draw results. Draws every Monday, Wednesday and Saturday at 22:59 ET. Historical data available from 2010.

Endpoint
GET /api/get_us_powerball_results?api_key=YOUR_API_KEY
Parameters
ParameterTypeDescription
api_key Required String Your API key
date Optional String YYYY-MM-DD. Omit for the latest draw.
Example Requests
cURL — Latest draw
curl -i "https://resultsZA.co.za/api/get_us_powerball_results?api_key=YOUR_API_KEY"
Response Format
JSON
{ "status": "success", "results": [ { "game": "Powerball", "date": "2026-06-01", "day": "Monday", "winning_numbers": "02, 42, 47, 57, 58", "powerball": 14, "power_play": 3 } ] }

🇺🇸 Mega Millions Get Mega Millions Results

Returns Mega Millions draw results. Draws every Tuesday and Friday at 23:00 ET. Historical data available from 2002.

Endpoint
GET /api/get_megamillions_results?api_key=YOUR_API_KEY
Parameters
ParameterTypeDescription
api_key Required String Your API key
date Optional String YYYY-MM-DD. Omit for the latest draw.
Example Requests
cURL — Latest draw
curl -i "https://resultsZA.co.za/api/get_megamillions_results?api_key=YOUR_API_KEY"
Response Format
JSON
{ "status": "success", "results": [ { "game": "Mega Millions", "date": "2026-06-02", "day": "Tuesday", "winning_numbers": "15, 26, 43, 48, 60", "mega_ball": 12, "megaplier": null } ] }