This API is under active development. Endpoints, response formats, and availability may change without notice. Results may vary. If you encounter an error or unexpected behaviour, please send us a bug report and we will look into it.

Australian Lottery API

Powerball · Oz Lotto · Saturday Lotto · Weekday Windfall

Programmatic access to Australian lottery draw results, delivered as clean JSON. Covers Powerball, Saturday Lotto, Oz Lotto and Weekday Windfall. Free for all registered members for personal, non-commercial use.

Ready to get started?

Create a free account, enable API access from your profile, and generate your key in seconds.

Create account Sign in
Recommended workflow: Use the bulk download files to seed your database with complete historical draw data, then use this API to stay up to date with the most recent result for each draw night. There is no full data dump endpoint via the API -downloads are the right tool for bulk historical data.

The G Network Lottery API is a focused REST JSON feed for Australian lottery results. One endpoint, two required parameters: pick a draw night (day) and an output mode (output), and get back the most recent draw we have for that night. Covers Saturday Lotto, Powerball, Oz Lotto, and Weekday Windfall (Monday, Wednesday, Friday).

Endpoint reference

GET https://api.gnetwork.com.au/v1

API discovery. Returns version info and available endpoints. Does not count against rate limit.

GET https://api.gnetwork.com.au/v1/draws/recent

Returns the most recent draw in the database for the specified night. Both parameters are required.

Parameter Required Values
day Required
mondaytuesdaywednesdaythursdayfridaysaturday
output Required
1:numbers & draw meta
2:divisions & payouts
3:full draw (all fields)

Error responses

HTTPCodeMeaning
401UNAUTHORIZEDNo API key provided
401INVALID_KEYKey not found or revoked
400MISSING_PARAMRequired parameter day or output not provided
400INVALID_DAYUnrecognised day value
400INVALID_OUTPUToutput is not 1, 2, or 3
404NOT_FOUNDNo draw found for the requested day, or unknown endpoint
429RATE_LIMITED60 req/hour limit exceeded. Check the Retry-After header.
500SERVER_ERRORSomething went wrong on our end

Frequently asked questions

The G Network Lottery API provides programmatic access to the most recent Australian lottery draw results -one draw per draw night. Pass a day name and an output mode, get back the latest Powerball, Saturday Lotto, Oz Lotto, or Weekday Windfall result as clean JSON. Use the bulk download files for full historical data; the API is designed for staying up to date.

The API currently covers Saturday Lotto (Saturday), Powerball (Thursday), Oz Lotto (Tuesday), and Weekday Windfall (Monday, Wednesday and Friday) -six draw nights in total. Each draw includes winning numbers, supplementary balls, Powerball where applicable, full division prize breakdowns, and a YouTube draw video link where available.

Yes, for personal, non-commercial use. API access is free for all registered G Network members who accept the Terms of Use. Create an account, enable API access from your profile, and generate your key in seconds. No credit card required.

Sign up for a free G Network account, go to My Profile, enable the API Access toggle, and click Generate API Key. Your key is shown once so copy it immediately. Keys are stored as a secure hash and cannot be retrieved later, but you can always revoke and generate a new one.

Draw results are sourced after each draw night and loaded into the database by approximately 01:05 AEST the morning after the draw. If you query shortly after a draw night, the latest result may not yet be available -the API will return the previous draw for that day until the new one is loaded. A data_freshness note is included in every API response.

Yes. Request ?day=saturday&output=1 for the latest winning numbers, or output=3 for the full draw including division payouts and YouTube link. The API always returns the most recent Saturday Lotto draw in the database.

The API allows 60 requests per rolling hour per API key. Rate limit status is returned in every response via X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Window response headers. Exceeding the limit returns HTTP 429 with a Retry-After header.

Yes, for personal, non-commercial projects. The REST JSON format works with any language or platform: Python, JavaScript, PHP, Ruby, Go, R, Excel Power Query, and more. Using the API to run a monetised product or service (for example paid apps, subscriptions, advertising-funded sites, client work or reselling data) isn't allowed yet. Paid commercial access is planned; for now, contact us for temporary permission before launching anything monetised. Accounts found doing it without permission will be banned. See our Terms of Use.

All responses return JSON with an ok field, a draw object, and a meta block. The draw object's fields vary by output mode: output=1 returns game info and ball numbers; output=2 returns the division prize table; output=3 returns all fields including youtube_id. Rate limit headers are also included on every response.

Any language that can make an HTTP GET request works. Common choices include Python (requests or httpx), JavaScript/Node.js (fetch), PHP (cURL), R, Ruby, and Go. Excel users can consume the JSON feed directly via Power Query for spreadsheet-based lottery analysis.

Games covered

Saturday Lotto
6 + 2 supp · Saturday
saturday-lotto
Powerball
7 + Powerball · Thursday
powerball
Oz Lotto
7 + 3 supp · Tuesday
oz-lotto
Weekday Windfall
6 + 2 supp · Mon / Wed / Fri
weekday-windfall

Output modes

1
Numbers & meta
Game, draw number, date, balls, supplementary
2
Divisions & payouts
Draw number, date, division prize table
3
Full draw
All fields + youtube_id

Authentication

Base URL:

https://api.gnetwork.com.au/v1

Pass your key as a header:

Authorization: Bearer gnk_your_key

Or as a query parameter:

?api_key=gnk_your_key

Generate your key from My Profile. Keys are shown once and cannot be retrieved later.

Rate limits

X-RateLimit-Limit: 60 X-RateLimit-Remaining: 47 X-RateLimit-Window: 3600

60 requests per rolling hour per key. Exceeding returns HTTP 429 with Retry-After: 3600.

Data freshness: Draw results are published by each lottery operator on draw night. Our database is updated by approximately 01:05 AEST the morning after each draw. If you query shortly after a draw, the latest result may not yet be available.

Terms of use

  • Free for personal, non-commercial use. Your account must accept the current Terms of Use.
  • Monetised use isn't allowed yet. For now, contact us for temporary permission. Running a monetised product or service on the API or its data without written permission will get the account banned.
  • One key per project. Don't open extra accounts for more keys; contact us if a project needs a higher limit.
  • Honour 429 and Retry-After, poll after draw time rather than on a loop, and cache what you receive.
  • Send a User-Agent that names your project and gives a way to contact you.
  • Credit G Network (gnetwork.com.au) as the source. Don't republish the data as your own bulk database, feed or API.
  • Don't scrape the results pages. Use the API, or the bulk download for history.

Read the full Terms of Use · AI agents: /tos.md

Output mode examples

1 Numbers & draw meta ?output=1

Ball numbers, draw number, date, and game info. Use this to check the latest result quickly.

Request
curl \ -H "Authorization: Bearer gnk_your_key" \ "https://api.gnetwork.com.au/v1/draws/recent ?day=friday&output=1"
Response
{ "ok": true, "draw": { "game": "weekday-windfall", "game_name": "Monday/Wednesday/Friday Lotto", "draw_number": 4706, "draw_date": "2026-05-22", "day_of_week": "Friday", "numbers": [3, 9, 18, 24, 33, 40], "supplementary": [5, 27] }, "meta": { "generated_at": "2026-05-24T10:00:00+10:00", "rate_limit": { "limit": 60, "remaining": 59, "window": "1 hour" } } }
2 Divisions & payouts ?output=2

Division prize table only - how much each division paid out and how many winners.

Request
curl \ -H "Authorization: Bearer gnk_your_key" \ "https://api.gnetwork.com.au/v1/draws/recent ?day=thursday&output=2"
Response
{ "ok": true, "draw": { "draw_number": 1566, "draw_date": "2026-05-21", "divisions": [ { "division": 1, "prize": 80000000, "winners": 0 }, { "division": 2, "prize": 167291, "winners": 1 }, { "division": 3, "prize": 8432, "winners": 9 } ] }, "meta": { "generated_at": "2026-05-24T10:00:00+10:00", "rate_limit": { "limit": 60, "remaining": 58, "window": "1 hour" } } }
3 Full draw ?output=3

All fields from outputs 1 & 2, plus youtube_id - the raw YouTube video ID for the draw, or null if not yet linked.

Request
curl \ -H "Authorization: Bearer gnk_your_key" \ "https://api.gnetwork.com.au/v1/draws/recent ?day=friday&output=3"
Response
{ "ok": true, "draw": { "game": "weekday-windfall", "game_name": "Monday/Wednesday/Friday Lotto", "draw_number": 4706, "draw_date": "2026-05-22", "day_of_week": "Friday", "numbers": [3, 9, 18, 24, 33, 40], "supplementary": [5, 27], "divisions": [ { "division": 1, "prize": 1000000, "winners": 1 }, { "division": 2, "prize": 6840, "winners": 2 } ], "youtube_id": "tzhmNwgT1yE" }, "meta": { "generated_at": "2026-05-24T10:00:00+10:00", "rate_limit": { "limit": 60, "remaining": 57, "window": "1 hour" } } }
Copied!