RidgeStar
About
Locations
Manual
Reference
Notices
Email
HTML
Internet
Passwords
Processes
Results Lists
RidgeStar
Copying Panels
Development
Documents
Environment
Monitor Activity
Production
Rest API
Site Structure
Site Outline
Soccer Referee
Symbols
Usage Policies
Wire Time
Your Environment
Tools
Service
Logon
RidgeStar

Reference: RidgeStar-Rest API

Logontranslate
Get Started |Calendar |Locations
Criteria is now using saved Site values

Sites with the RidgeStar REST (Representational State Transfer) API (Application Programming Interface) active will be capable of interacting with remote Clients (other websites and/or programs at other Internet end-points), as follows:

The APIHide

The API has been built to generally conform to commonly accepted standards associated with RESTful Servers. This is not to say that the API is 100% a REST implementation, but it has made efforts to adhere to the principles and concepts embodied by REST.

The API is built upon a few basic terms that should be clarified from the outset:

Resource
Identifies a logical set of information available from the API. In this context, a Resource might refer to a single database table, might be a subset or superset of one or more database tables, or might even be simple meta-data available to describe the available Resources.
Properties
Each Resource has one or more Properties that, in turn, have one or more values. Conceptually, when a Resource is the result of a data table, a Property is a data field within the data table and the Property's value is synonymous with the data field value.

SyntaxHide

The API Get has the general form:

{protocol}:// {site} /api {/resource} [.{format}] [/{item} ...] [? {keywords} ] ]

where...

protocol
Specifies the connection protocol to be followed. Use "HTTPS" (if TLS certificates are supported by the {site}), otherwise use "HTTP".
site
The identity, name, or destination containing the REST Server
api
The lower case constant "api" specifies that you desire to contact the Application Program (REST) Interface for the {site}
resource
The named "Resource" available from the {site} via the API
format
The Type of response expected/preferred. Specify .json (the default if no {format} is specified), .xml, or .html (if desired). The Get Request Accept Header will be honored (application/json, application/xml, or text/html), if provided, but will be overridden by the {format} specified in the URI (if present).
item
An optional specific Item within the Resource. Additional {item} specification can be provided, if the Resource offers multiple levels of data available (varies by {site} and Resource).
keywords
Provides additional qualifiers to control the contents of the response and can contain....
criteria
permits the query to be constructed such that Boolean conditions can be specified. General syntax is

criteria={argument=value [{,|:} ...]] } [{,|:}{argument=value[, ...]} ]

Each {argument and value pair is ORed (,) or ANDed(:) together} which is then ORed (,) or ANDed(:) with the other {...} entries to develop the list of data records that will be returned.

The operator to specify the AND condition within individual {...} entities is a colon (:) NOT an ampersand. This is because the ampersand is parsed as an independent HTTP element and, thus, is not a portion of the criteria element the REST Server can utilize. (Note: REST Version 5.3.3 will accept either syntax, but....use the colon, not the ampersand for clarity).

expand
Identifies the exact Properties of the Resource that should be "expanded" to an array containing all pertinent Properties of the Item. This is useful to obtain detailed information about a Resource Property that does, itself, also represent a Resource with distinct Properties.

There are specialized grouping values that can be specified to imply expansion to more than one Property in the Resource:

  1. Positions: requests that all Referee positions be expanded (Ref, AR1, AR2, ... as specified in the {site}
  2. Dates: requests that all Dates and DateTime defined Properties that are returned be expanded to include additional detail about the Date and Time (TimeZone, etc.)

limit
The number of entries to return in the response (default is unspecified or "No limit")
offset
The first entry to include in the response (default is 1 or the "first" entry)
order
Specified the sequence that sorts the resulting response entries (detault is defined by the {site} Resource definition).
properties
Identifies the individual Properties that should be returned (a list of properties is delimited by a comma). The default set of Properties returned for a Resource is defined by the {site}
Positions
keywords defined by the Resource can be provided to control which Items in the Resource will be obtained
{criteria}
keywords defined by the Resource can be provided to control which Items in the Resource will be obtained. Specifying multiple keywords (e.g. dmaGender=G&dmaLevel=U14) implies a boolean AND between the data elements. Use the criteria keyword itself to specify any desired boolean OR conditions.

Examples

All the following examples can be executed by clicking the desired symbol (for HTML, JSON, or XML) below and are sent to Referees.biz-> for processing.

/officers H J XML
Get a list of all Chapter Officers
/officers/17 H J XML
Get all default Properties for a specific individual
/matches?dmaClient=LakeView&dmaLevel=U16&dmaDate[from]=2020-11-30 H J XML
Retrieve Matches for a specific Client and Level of play between specific Dates
/matches?dmaLevel=U14,U15 H J XML
Retrieve Matches for 2 different Levels of play
/matches?criteria={dmaLevel=U14},{dmaLeague=NFHS} H J XML
Retrieve Matches for a specific Level of Play OR in a specific League of play
/matches/1137?properties=dmaKey,dmaDate,dmaRef H J XML
Get 3 Property values for a specific Match
/matches/1137?properties=dmaKey,dmaDate,dmaRef&expand=dmaRef,Dates H J XML
Expand data fields to obtain translated values
/matches?properties=dmaKey,dmaDate,dmaRef,dmaAR1,dmaAR2&dmaPositions=17 H J XML
Obtain assignments for a specific Referee
/matches?dmaLevel=U14&offset=4&limit=2 H J XML
Starting with the fourth Match, list only 2
/doc H J XML
Retrieve information about the API and Site hosting it
/doc/resources/locations H J XML
Obtain a description of the Get options for the Resource named "locations"
Sending
https://www.referees.biz/api/doc.html/resources/locations
Request Headers
rsr-Date: 2024-12-03T10:32:39-08:00
Content-Type: application/json;
rsr-Powered-By: RidgeStar/6.3.0
Response Headers
HTTP_Response: 200
Date: Tue, 03 Dec 2024 18:32:39 GMT
Server: Apache/2.4.62 (Fedora Linux) OpenSSL/3.2.2
X-Powered-By: PHP/8.3.14
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
rsr-Powered-By: server/6.2.6
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: rsr-Powered-By
Set-Cookie: PHPSESSID=haabap5sck2ejgtp9q8n1odgoo; path=/; SameSite=Strict
Transfer-Encoding: chunked
Content-Type: text/html; charset=utf-8
Data returned
<ul> <li>description=Geographic Locations used</li> <li>methods<ul> <li>get=Get</li> <li>options=Options</li></ul></li> <li>select=count(dfdKey) as dloFields</li> <li>table=Locations left join Field on dloKey=dfdLocation</li> <li>group=dloKey</li> <li>prefix=dlo</li> <li>criteria<ul> <li>dloName<ul> <li>Bay Meadows Park</li> <li>Bell College</li> <li>Coeur d'Alene Soccer Complex</li> <li>Forest Park</li> <li>Indoor Soccer Arena</li> <li>Jeanne Hansen Community Park</li> <li>Kirkland Park</li> <li>Lake Shore Park</li> <li>Pizza Palace</li> <li>Portland University</li> <li>Pullman Sports</li> <li>Regional Athletic Complex</li> <li>RidgeStar Offices</li> <li>Seattle High School</li> <li>Sixty Acres</li> <li>Woodinville High School</li></ul></li></ul></li> <li>query<ul> <li>fragments<ul> <li>dloName</li> <li>dloCity</li></ul></li> <li>exact<ul> <li>dloKey</li> <li>dloState</li> <li>dloZip</li></ul></li></ul></li> <li>default<ul> <li>properties<ul> <li>dloKey</li> <li>dloName</li> <li>dloAddress</li> <li>dloCity</li> <li>dloState</li> <li>dloZip</li> <li>dloLongitude</li> <li>dloLatitude</li></ul></li> <li>order=dloName</li> <li>limit=10</li> <li>offset=1</li></ul></li></ul>