Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Scroll Health Check: The link has been rewritten to its master page by check 'P16'.

Table of Contents
outlinetrue
stylenone

As of 2.1.4.x, the The PCR-360 API offers the ability to send a SELECT query to retrieve any data the system offers. It is important to note that this functionality is limited to only SELECT statements and no data can be modified (UPDATE statements) or destroyed (DELETE statements). Having the ability to SELECT any data that is required is a very powerful tool. This allows the API to be more flexible when retrieving data than any standard endpoint.

To use the SQL endpoint, make a POST request to the SQL endpoint using one of the three possible data formats (JSON, XML, or PHP). This may seem odd as retrieving data is usually done via a GET request, however, SQL statements can become quite long and, to avoid issues with URL maximum lengths, we have decided to utilize POST requests for this functionality.

Click the Headers link for more information on the API Header. Click the Making a Request link for the basics of initiating a request.

Using POST Calls

Excerpt

Using POST Calls

  • POST requests will ignore parameters supplied as a query string and need any additional parameters in the request Body.
  • To configure the number of Pages/Results returned by the API (this is most useful for the SQL Endpoint), you can send these as additional Parameter's in the Body.

    Parameter

    Data Type

    Default

    Description

    limit

    Interger

    20

    Number of listings to show.

    page

    Interger

    1

    Page number to show.


  • API fields are not case sensitive, and will always be returned in the lower case format.


SQL End Point

Code Block
languagesql
http://DOMAIN/api/API_KEY/sql.OUTPUT

...

Parameter

Required

Data TypeOptions

Notes

sql

yes

string

SQL SELECT statement

Using the Data Dictionary

Please see the Data Dictionary for the structure of the database which will assist in creating queries.

...

Sample Return

Code Block
languagesql
{
	"status": "success",
	"page": "1",
	"count": 20,
	"total_count": "324500",
	"results": [
		{
			"RECID": "1"
		},
		{
			"RECID": "2"
		},
		{
			"RECID": "3"
		},
		{
			"RECID": "4"
		},
		{
			"RECID": "5"
		},
		{
			"RECID": "6"
		},
		{
			"RECID": "7"
		},
		{
			"RECID": "8"
		},
		{
			"RECID": "9"
		},
		{
			"RECID": "10"
		},
		{
			"RECID": "11"
		},
		{
			"RECID": "12"
		},
		{
			"RECID": "13"
		},
		{
			"RECID": "14"
		},
		{
			"RECID": "15"
		},
		{
			"RECID": "16"
		},
		{
			"RECID": "17"
		},
		{
			"RECID": "18"
		},
		{
			"RECID": "19"
		},
		{
			"RECID": "20"
		}
	]
}

Classes of Service

Classes of Service values can be retrieved only through the SQL endpoint.  Retrieving these values is needed for using the Authentication Token Mode of the API.

Call:

Code Block
languagesql
POST DOMAIN/KEY/sql.json

Body:

Key

Value

sql

SELECT RECID, CODE, DESCRIPTION FROM CLASSES_OF_SERVICE

Return:

Code Block
languagesql
{
    "status": "success",
    "page": 1,
    "count": 3,
    "total_count": "3",
    "results": [
        {
            "RECID": "1",
            "CODE": "0",
            "DESCRIPTION": "First Class"
        },
        {
            "RECID": "2",
            "CODE": "9",
            "DESCRIPTION": "Second Class"
        },
        {
            "RECID": "3",
            "CODE": "100",
            "DESCRIPTION": "Third Class"
        }
    ]
}

Child pages (Children Display)
styleh6
sorttitle