DEVELOPER DOCUMENTATION
Integrate directly with Gamz to access fixtures, results, ladders, bookings and team data in real time. Designed for organisers, partners and developers building connected social sport experiences.
SERVICE SUMMARY
The Gamz API provides authenticated SOAP services for accessing unpublished competition and booking data, and performing secure actions such as team payments, along with HTTP GET endpoints for retrieving published competition and team data.
CalendarService
Retrieve competition matches and bookings for any given date across your organisation.
CompetitionService
Get live ladder standings and fixture data for one or more competitions.
TeamService
Record match day payments collected outside Gamz for a player within a specific team.
SOAP API
Authentication is required for SOAP services to access organisation competition data that is not published online, such as fixtures, bookings and ladders, and to perform secure write operations like team payments.
Setup & Access
Before you can make your first API call you need two things: an API key tied to your organisation, and a dedicated API user account created inside the Gamz app.
Request an API Key
Email support@gamzapp.com with your organisation name and a brief description of what you're building. We'll provision your account and return an ApplicationId GUID, which is included in every API request to identify your organisation.
Create a Dedicated API User
In the Gamz app, navigate to Settings → User Management and create a new user. Name it something clear and identifiable, such as OrganisationName_API. This user account authenticates your API requests, so treat the credentials like any service account secret.
Authentication
All services are secured with WS-Security using symmetric key binding. Requests must include valid credentials for the API user you created during setup. Your ApplicationId identifies the organisation; the user credentials authorise the request.
| Service | Binding | Notes |
|---|---|---|
CalendarService.svc | WS-Security Symmetric | Secure conversation with Basic256; body is signed and encrypted |
CompetitionService.svc | WS-Security Symmetric | Secure conversation with Basic256; body is signed and encrypted. |
TeamService.svc | WS-Security Symmetric | Secure conversation with Basic256; body is signed and encrypted. |
Calendar Service
Use CalendarService to retrieve everything scheduled for a selected date, including competition matches across divisions and sports, as well as casual bookings. Ideal for building game-day screens and dashboards.
POSTGetCompetitionMatches▼
Returns competition match data for a selected date.
| Field | Type | Required | Description |
|---|---|---|---|
ApplicationId | guid | Yes | Your organisation's API key |
Date | dateTime | Yes | The date to retrieve matches for (time component ignored) |
| Field | Type | Description |
|---|---|---|
Id | int | Unique match identifier |
HomeTeam | TeamDto | Home team (Id, Name, Balance, RoundFee) |
AwayTeam | TeamDto | Away team (Id, Name, Balance, RoundFee) |
StartTime | dateTime | Scheduled start time |
EndTime | dateTime | Scheduled finish time |
Round | int | Round number within the season |
Division | KeyValuePair | Division Id and Name |
Season | KeyValuePair | Season Id and Name |
Sport | KeyValuePair | Sport Id and Name |
ResourceCollection | KeyValuePair[] | Playing Spaces Assigned |
POSTGetBookingData▼
Returns all bookings for a given date, including casual hires, training sessions, and any non-competition use of your playable spaces.
| Field | Type | Required | Description |
|---|---|---|---|
ApplicationId | guid | Yes | Your organisation's API key |
Date | dateTime | Yes | The date to retrieve bookings for |
| Field | Type | Description |
|---|---|---|
Id | int | Unique booking identifier |
Customer | KeyValuePair | Booking customer (Id and Name) |
StartTime | dateTime | Booking start time |
EndTime | dateTime | Booking end time |
Fee | decimal | Total fee charged for the booking |
Payment | decimal | Amount already paid |
Overdue | decimal | Outstanding balance |
NumberOfAttendees | int | Number of people attending |
Sport | KeyValuePair | Sport Id and Name |
ResourceCollection | KeyValuePair[] | Playable Spaces Assigned |
Competition Service
Use CompetitionService to retrieve ladder standings and fixture data for any competition. Suitable for internal systems, or for displaying ladders and draws in your website or app when using published results.
POSTGetLadder▼
Returns the current standings table for a specified competition. Includes full match statistics for every team, such as wins, losses, points, percentages, and more. Use GetPublishedDataOnly to return only administrator-approved results, or use the REST API when you only need published standings.
| Field | Type | Required | Description |
|---|---|---|---|
ApplicationId | guid | Yes | Your organisation's API key |
DivisionId | int | Yes | The division to retrieve standings for |
SeasonId | int | Yes | The season to retrieve standings for |
SportId | int | Yes | The sport to retrieve standings for |
GetAllTeams | boolean | No | When true, includes teams that have withdrawn from the competition. |
GetPublishedDataOnly | boolean | No | When true, returns only results marked as published by an administrator |
| Field | Type | Description |
|---|---|---|
Position | int | Current ladder position |
Team | KeyValuePair | Team Id and Name |
Played | int | Total games played |
Won | int | Games won |
Lost | int | Games lost |
Drawn | int | Games drawn |
Bye | int | Byes received |
ForfeitFor | int | Forfeits awarded in the team's favour |
ForfeitAgainst | int | Forfeits awarded against the team |
ForScore | decimal | Total scored for |
AgainstScore | decimal | Total scored against |
ScoreDifference | string | Net points difference |
Percentage | decimal | Win percentage |
Points | int | Total competition points |
POSTGetFixtures▼
Returns all published upcoming matches across all competitions. Set MatchDay to null to retrieve all future matches, or provide a date to return matches for a single day.
| Field | Type | Required | Description |
|---|---|---|---|
ApplicationId | guid | Yes | Your organisation's API key |
MatchDay | dateTime? | No | A specific match day to filter by. Pass null to return all upcoming fixtures. |
| Field | Type | Description |
|---|---|---|
Division | KeyValuePair | Division Id and Name |
Season | KeyValuePair | Season Id and Name |
Sport | KeyValuePair | Sport Id and Name |
MatchCollection | MatchDto[] | All matches within this competition |
| Field | Type | Description |
|---|---|---|
MatchId | int | Unique match identifier |
HomeTeam | TeamDto | Id, Name, Fee, AmountPaid |
AwayTeam | TeamDto | Id, Name, Fee, AmountPaid |
StartTime | dateTime | Scheduled Start Time |
Round | int | Round Number |
Resource | KeyValuePair | Playable Space Assigned |
IsFinals | boolean | True if this is a finals match |
Team Service
Use TeamService to record payments collected outside Gamz and apply them to a specific team, player and round.
POSTAddPayment▼
Records a payment collected outside Gamz for a player within a specific team and competition context.
| Field | Type | Required | Description |
|---|---|---|---|
ApplicationId | guid | Yes | Your organisation's API key |
Amount | decimal | Yes | Payment amount to apply |
DivisionId | int | Yes | Division identifier |
SeasonId | int | Yes | Season identifier |
SportId | int | Yes | Sport identifier |
TeamId | int | Yes | Team identifier |
PlayerId | int | Yes | Player identifier |
Round | int | Yes | Round number |
IsFinals | boolean | No | True when this payment relates to finals |
ExternalTransactionId | string | No | External payment reference |
| Field | Type | Description |
|---|---|---|
Success | boolean | True if request completed successfully |
Message | string | Status or error message |
Common Types
These data structures are used across multiple services. Familiarise yourself with KeyValuePairOfintstring in particular, because it is used throughout the API to represent named entities like divisions, seasons, sports, and resources.
| Type | Fields | Notes |
|---|---|---|
ResponseBase | Message string, Success boolean | All responses extend this. Always check Success before consuming data. If false, Message contains the error detail. |
KeyValuePairOfintstring | Key int, Value string | General-purpose name/Id pair used for divisions, seasons, sports, resources, and customers. |
TeamDto (CalendarService) | Id, Name, Balance, RoundFee | Team as returned by CalendarService operations. |
TeamDto (CompetitionService) | Id, Name, Fee, AmountPaid | Team as returned by CompetitionService operations. |
guid | string | Standard UUID format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
RESPONSE BEHAVIOUR
Every operation returns a response that extends ResponseBase. Always check the Success flag first. A value of false means the request was received but could not be completed, and the Message field explains why.
| Field | Type | Description |
|---|---|---|
Success | boolean | true if the operation completed successfully |
Message | string | Human-readable error or status message. Populate your logs with this when Success is false. |
| Result payload | varies | The operation-specific result, for example CompetitionMatchCollection, Ladder, FixtureCollection, or BookingCollection |
REST API
HTTP GET endpoints for retrieving published competition and team data for web and mobile applications.
MobService
MobService provides HTTP GET endpoints for retrieving published competition and team data. These endpoints are URL-based and do not use SOAP envelopes.
| Method | Endpoint Pattern | Purpose |
|---|---|---|
GetMobVenuesByKeyword | /GetMobVenuesByKeyword?k={keyword} | Venue keyword search summary results |
GetMobById | /GetMobById?id={centreId} | Get a full venue/centre record by id |
GetMobComp | /GetMobComp?centreId={id}&sportId={id}&divisionId={id}&seasonId={id}&teamid={id} | Competition view including fixture/ladder context |
GetMobCompPerformanceStatistics | /GetMobCompPerformanceStatistics?centreId={id}&sportId={id}&divisionId={id}&seasonId={id} | Competition-level performance statistics |
GetMobTeamDetails | /GetMobTeamDetails?centreId={id}&teamId={id} | Team profile and historical stats block |
GetMobTeamPlayerList | /GetMobTeamPlayerList?centreId={id}&teamId={id} | Team player roster for a centre/team |
GetMobCompPlayerStatistics | /GetMobCompPlayerStatistics?centreId={id}&sportId={id}&divisionId={id}&seasonId={id} | Player stats tables (scorers, cards, votes, matches) |
GetMobCompTeamList | /GetMobCompTeamList?centreId={id}&sportId={id}&divisionId={id}&seasonId={id} | Team list for a competition context |
GetMobTeamSearch | /GetMobTeamSearch?keyword={text}¢reId={id} | Team search within a centre |
GetMobMatchDetails | /GetMobMatchDetails?centreId={id}&matchId={id} | Detailed match view (preview & completed) |
Response objects follow a ResponseBase pattern with Success and Message, plus method-specific payload fields such as VenueCollection, Centre, Ladder, MobCompPerformanceStatistics, and MatchDetailView.