Endpoints

/Query

A POST request to this endpoint should contain a text body comprising of the IQL statement to execute.

Request

POST http://localhost:7820/query HTTP/1.1
Host: localhost:7820
User-Agent: IQWebExample/1.0
Authorization: Bearer eyJhbG...4noZNM
Request-Id: |11958d43-4bb87d2798df4c8c.1.
Content-Type: text/plain; charset=utf-8
Content-Length: 28

select * from CatalogueTable

Response

HTTP/1.1 200 OK
Date: Tue, 28 Jan 2020 00:29:30 GMT
Content-Type: application/json; charset=utf-8
Server: Kestrel
Content-Length: 1089

{"Rows":[...],"Columns":{...}}

/Query/{TableName}/Select

This endpoint executes a SELECT statement in a structured maner rather than in IQ language format. The target table name is supplied as part of the URL, the column names are specified as parameters in the URL, and the selection criteria is supplied in the body of the request in JSON format.

Columns can be specified either individually, or as a comma delimited list. If no columns are specified, then all columns are returned.

  • /query/cataloguetables/select?columns=name,issystem

or

  • /query/cataloguetables/select?column=name&column=issystem

The selection criteria is a JSON array of the object {ColumnName, Operator, Value}. Note that because this is a JSON object then the Content-Type must be set to application/json in the header.

Request

Response

/Query/{TableName}/Insert

This endpoint executes an INSERT statement in a structured maner rather than in IQ language format. The target table name is supplied as part of the URL and the values to insert are supplied in the body of the request in JSON format.

The assignments are supplied using a JSON object with dynamic fields and associated values.

Request

Response