Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: complete copy from internal wiki version with all updates including deprecating getByDevice; except excluding internal wiki links

Description

Gets the most recent raw data from an instrument from a date, to a date, or raw data between two given dates.

If no time is specified, the last hour of data will be limited to the last hour of datareturned for getByStation, or the data will be from the beginning of time to the present, subject to (default or otherwise) row and size limits (for getByDevice and getByLocation).

If time is specified, the data is limited to 100,000 rows.

See the rawdata service for method, token, and responseType usage and error messages.

URL

...

http://data.oceannetworks.ca/api/rawdata


Method

Description

Example

getByStation*Retrieve raw data available at given station.method=getByStation
getByDeviceRetrieve raw data available for a given device within a time rangemethod=getByDevice
getByLocationRetrieve raw data for the specified location and date range. This method is replacing getByStation.method=getByLocation

...


* getByStation is still available but is deprecated as of October 1, 2017. It has been replaced by the getByLocation method.

getByStation

Retrieve raw data available at Retrieve raw data available at given station. Data can be most recent from instruments, or data that's been archived in a raw data file.

...

ParameterTypeDescriptionExample
Required
tokenstringuser tokentoken=1234567890adbcde123
stationstringstation code (corresponds with a search tree node, the one used in Data Search page) station=IONA
deviceCategorystringused to select which category of instruments at the station to use. Corresponds with the name column in the device category tabledeviceCategory=AISRECEIVER
Optional
dateFromstringISO8601 (extended) Date for the start time of the data. If not given, defaults to one hour before current time, so that last hour of data is returned (if there is data in the last hour), up to rowLimit number of rows.dateFrom=2012-01-02T00:12:42.000Z
dateTostring

ISO8601 (extended) Date for end time of data. Defaults to the current time if not provided.

If no dateFrom is given and a dateTo is given, a date range error will be returned.

The max amount of data returned will be rowLimit.

dateTo=2012-01-02T00:13:42.000Z 
rowLimitinteger

The maximum number of data to return, within the constraints of the service. Note this will limit the data starting at the start time and ending at the row limit, not necessarily at the end time.

default row limit: 100000

Treat negative or 0 rowLimit as max rowLimit. Treat rowLimit > maxRowLimit as max row limit.

rowLimit=10


 

Response

Success

...


Sample <responseType> Response


{

...

  
    "data"

...

 :

...

[
              {
                "rawData":

...

<string>,
                "sampleTime": <string>
              },
                ...
    ],
    "metadata": {
        "queryMetadata": {
            "stationCode" : <string>,
            "dateFrom"            : <string>,
            "dateTo"          : <string>,
            "deviceCategory"  : <string>,
            "rowLimit"            : <integer>
        }
        "dataMetadata": {
            "numberOfData"    : <integer>,
            "firstTimestamp"  : <string>,
            "lastTimestamp"       : <string>,
            "stationName"     : <string>,
            "hasMoreDataInRange": <boolean>
        }
    }
}



Property

Type

Description

Example

dataarray of objectsThe array containing the requested data, including the sample time and the raw data for each reading time.
 
data.sampleTimestringThe sample time for a single reading time. ISO8601 Extended Format.
"2015-09-01T00:21:21.000Z"
data.rawDatastringThe string of raw data for the sampleTime
"\c:1441212680,C:776,s:P-Cumshewa*1E\!AIVDO,1,1,9,A,4030p;1uvA@kDnSi;fNJgk7008<8,0*47"
metadataobjectThe metadata for the query and data  
metadata.queryMetadataobjectThe metadata for the query 
metadata.queryMetadata.stationCodestring

part of the query metadata. The station code (search tree node code) that was queried

"IONA"
metadata.queryMetadata.deviceCategorystringpart of the query metadata. the device category requested.
"AISRECEIVER"
metadata.queryMetadata.dateFromstringpart of the query metadata. string  string date used in the query for the start time of the data
"2015-09-01T00:21:21.000Z"
metadata.queryMetadata.dateTostringpart of the query metadata. string  string ISO8601 date used in the query for the end time of the data. Can be null.
"2015-09-18T02:23:21.000Z"
metadata.queryMetadata.rowLimitintegerpart of the query metadata. the  the value given, if any, in the query limiting the size of the data
100000
metadata.dataMetadataobjectThe metadata for the data itself 
metadata.dataMetadata.numberOfDataintegerpart of the data metadata. the  the number of rows of data returned in the query
100000
metadata.dataMetadata.firstTimestampstringpart of the data metadata. string ISO8601 representing the first timestamp returned
"2015-09-01T00:21:21.123Z"
metadata.dataMetadata.lastTimestampstringpart of the data metadata. string ISO8601 representing the last timestamp returned
"2015-09-01T03:22:18.908Z"
metadata.dataMetadata.stationNamestringpart of the data metadata. The name of the station (device)
"Iona Shore Station"
metadata.dataMetadata.hasMoreDataInRangebooleanpart of the data metadata. Indicates  Indicates whether all the data was returned with the query or whether more data is available in the requested range.
true

Failure

...

Example

Get most recent hour of Get raw data from an AIS receiver at Iona Shore Station from the beginning of time to the present with the default 100,000-row limit:

http://data.oceannetworks.ca/api/rawdata?method=getByStation&deviceCategory=AISRECEIVER&station=IONA&token=SAMPLETOKEN123456789

...

 http://data.oceannetworks.ca/api/rawdata?token=12343123123123&method=getByStation&station=IONA&deviceCategory=AISRECEIVER&dateFrom=2015-09-01T00:21:21.000Z

...


{"data":

...


     [
      {
       "rawData":"\\c:1441061153,C:1990,s:P-Parke*58\\!AIVDM,2,1,8,B,55NP0eP26m;5L@O?CC0Lu8@tr0`Dq<Dr2222220N9@J885Kd0?4i@E531H88,0*79",

...


       "sampleTime":"2015-09-01T00:21:21.123Z"

...


       },
      {
        "rawData":"\\c:1441061153,C:1990,s:P-Parke*58\\!AIVDM,2,2,8,B,88888888880,2*2F",

...


        "sampleTime":"2015-09-01T00:21:21.250Z"

...


       },
       {
          "rawData":"\\c:1441061153,C:1992,s:P-Helmcken*38\\!AIVDM,1,1,,B,15N;600P1Do>6CjKe>iG8Owb26jl,0*57",

...


          "sampleTime":"2015-09-01T00:21:21.352Z"},

...


       ...

...


     }],

...


    "metadata":

...


          {"dataMetadata":

...

{
                  "firstTimestamp":"2015-09-01T00:21:21.123Z",

...


                  "hasMoreDataInRange":false,

...


                  "lastTimestamp":"2015-09-01T01:02:08.013Z",

...


                  "numberOfData":100000,

...


                  "stationName":"Iona

...

Shore

...

Station"

...


                 },
          "queryMetadata":{
                 "deviceCategory":"AISRECEIVER",
                 "dateTo":null,

...


                 "rowLimit":null,

...


                 "dateFrom":"2015-09-01T00:21:21.000Z",

...


                 "stationCode":"IONA"
          }
     }
}

...



getByDevice Method

Retrieve raw data for a given device. A date range is optional–when that is not specified, data from the last hour of data is returnedbeginning of time to the present will be returned within (possibly default) row and size limits. Older data is returned by specifying a dateFrom date and optionally an dateTo date.

...

ParameterTypeDescriptionExample
Required
tokenStringUser Tokentoken=1234567890adbcde123
deviceCodeStringThe device code of the Device requested.deviceCode=ASLZAP1006
Optional
dateFromStringThe start date inclusive for the data to be returned in ISO8601 Extended format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z'). if not specified then the start date is one hour agothe beginning of time.dateFrom=2017-06-08T00:00:00.000Z
dateToString

The end date exclusive for the data to be returned in ISO8601 Extended format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z'). If not specified the end date is now. The end date cannot be specified unless a dateFrom date is also specified.

dateTo=2017-06-08T01:00:00.000Z 
rowLimitIntegerThe limit on the number of raw data readings to return. If not specified the row limit is 100,000.rowLimit=300
sizeLimitIntegerThe limit on the size of raw data readings to return specified in MB. If not specified the size limit is 250 MB.sizeLimit=20
convertHexToDecimalBooleanFormat of raw data readings. By default, binary data will be returned in decimal. When set to false, it will be returned in hexadecimalconvertHexToDecimal = false
outputFormatString

Array (default or if missing) (case insensitive)
data will be output as three arrays for a given device. Array of lineTypes, array of readings, array of times

Object (case insensitive)
data will be output as a list of objects for a given device. Inside each data object, there are lineType, rawData, and sampleTime.
Can be used if the user wants data object to have the same output format of getByStation method.

outputFormat = array

outputFormat = object


Response

Success

...

(outputFormat = Array)


 {

...


  "data":

...

{

...


    "lineTypes":

...

<Array

...

of

...

String>,
    "readings":

...

<Array

...

of

...

String> OR

...

<Array

...

of

...

Integer

...

Array>,

...


    "times":

...

<Array

...

of

...

String

...

(yyyy-MM-dd'T'HH:mm:ss.SSS'Z')>

...


  },

...


  "next":

...

{
    "parameters":

...

{
      "method":

...

 "getByDevice",

...


      "rowLimit":

...

<String>,

...


      "deviceCode":

...

<String>,

...


      "dateFrom":

...

<String

...

(yyyy-MM-dd'T'HH:mm:ss.SSS'Z')>,

...


      "outputFormat"

...

: <String>,

...


      "token":

...

<String>
    },
    "url":

...

<String>

...


  },

...


  "queryUrl":

...

<String>

...


}



Property

Type

Description

Example

dataObjectAn object containing the raw data readings and time stamps 
  • data.lineTypes
Array of StringsAn array of lineTypes, one for each reading in the requested date range. LineTypes are ">" for CommandSent, " " for DataReceived, and "<" for CommandResponse.
[" ",">","<"," "," "," "," ",">"]
  • data.readings

Array of Strings OR

Array of Integer Arrays

An array of readings one for each reading in the requested date range. If the raw data is text then this is an array of strings. If the raw data is binary then each item in the array is an array of integers. If conversion is turned off, array of hexadecimal strings returned.

Text:

  • [ "2891917878B1F5102C4D16E27AD6B59B00" ]

Binary:

  • [ [-91,1,21,0,4,86 ],  [60,58,57,0,-70,83]]

 

 

Binary: (convertHexToDecimal = false)

  • [ "a5 01 15 00 04", "3c 3a 39 00 ba 53" ]
  • data.times
Array of StringsAn array of timestamps one for each reading in the requested date range. Each timestamp is a string in ISO8601 (extended) format, yyyy-MM-dd'T'HH:mm:ss.SSS'Z'.
[ "2014-04-25T00:00:00.005Z" ]
nextObjectAn object containing information on how to make a rawdata call if the current call was unable to return all the data as a limit was exceeded. This is null if there is no more data in the requested range. 
  • next.parameters
ObjectAn object containing the set of parameters making up the query to get the next set of data in the requested date range. The parameters will include all parameters passed into the original URL plus dateFrom if dateFrom hadn't been specified.
"parameters": {
      "method": "getByDevice",
      "rowLimit": "1",
"deviceCode": "SBECTD19p7128",
"dateFrom": "2014-04-25T00:00:00.006Z",
"token": "ffffffff-ffff-ffff-ffff-ffffffffffff"
}
    • next.parameters.token
StringAs passed into the original call
"ffffffff-ffff-ffff-ffff-ffffffffffff"
    • next.parameters.method
StringgetByDevice, as passed into the original call.
"getByDevice"
    • next.parameters.deviceCode
StringAs passed into the original call
"SBECTD19p7128"
    • next.parameters.dateFrom
StringThis is set to 1 millisecond more than the date of the last reading sent in the current call.
"2014-04-25T00:00:00.006Z"
    • next.parameters.*
StringAny optional parameters passed into the original call.
"dateTo":"2014-04-25T00:00:00.001Z",
"rowLimit":"5",
"outputFormat": "objectarray"
  • next.url
StringThe complete URL that can be used to get the next set of data in the requested range.
"https://data.oceannetworks.ca/api/rawdata?method=getByDevice&dateTo=2014-04-25T00%3A00%3A00.001Z&deviceCode=SBECTD16p6934&rowLimit=5&dateFrom=2014-04-24T23%3A51%3A00.003Z&token=ffffffff-ffff-ffff-ffff-ffffffffffff"
queryUrlStringThe complete URL for the current call.
"https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.010Z"

Failure

See rawdata service

Example Service Call

https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.004Z

Code Block
languagejs
 {
	"data": {
		"lineTypes": [
			">",
			"<",
			">"
		],
		"readings": [
			"version[0d]",
			"version,BARIONET 1.2",
			"getio,201[0d]"
		],
		"times": [
			"2017-06-08T00:00:00.003Z",
			"2017-06-08T00:00:00.008Z",
			"2017-06-08T00:00:00.009Z"
		]
	},
	"next": null,
	"queryUrl": "https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.010Z"
}

Example Service Call with outputFormat parameter

https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.004Z&outputFormat=object

Code Block
languagejs
{  
   "data":[  
      {  
         "lineType":">",
         "rawData":"version[0d]",
         "sampleTime":"2017-06-08T00:00:00.001Z"
      },
      {  
         "lineType":"<",
         "rawData":"version,BARIONET 1.2 Simulator",
         "sampleTime":"2017-06-08T00:00:00.002Z"
      },
      {  
         "lineType":">",
         "rawData":"getio,201[0d]",
         "sampleTime":"2017-06-08T00:00:00.003Z"
      }
   ],
   "next":null,
   "queryUrl":"https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.004Z&outputFormat=object"
}

...

Retrieve the raw data at a given location for the given device category. A date range is optional, when not specified the last hour of data is returned. Older data is returned by specifying a dateFrom date and optionally an dateTo date.

Parameters

...

The end date exclusive for the data to be returned in ISO8601 Extended format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z'). If not specified the end date is now. The end date cannot be specified unless a dateFrom date is also specified.

...

Array (default or if missing) (case insensitive)
data will be output as three arrays for a given device. Array of lineTypes, array of readings, array of times

Object (case insensitive)
data will be output as a list of objects for a given device. Inside each data object, there are lineType, rawData, and sampleTime.
Can be used if the user wants data object to have the same output format of getByStation method.

...

outputFormat= array

outputFormat = object


Success (outputFormat = Object)



   "data":[ 
      
         "lineType": <String>,
         "rawData": <String> OR <Integer Array>,
         "sampleTime": <String (yyyy-MM-dd'T'HH:mm:ss.SSS'Z')>
      },
      ...
   ],
   "next": {
     "parameters": {
       "method""getByDevice",
       "rowLimit": <String>,
       "deviceCode": <String>,
       "dateFrom": <String (yyyy-MM-dd'T'HH:mm:ss.SSS'Z')>,
       "outputFormat""object",
       "token": <String>
     },
     "url": <String>
   },
   "queryUrl": <string>
}



Property

Type

Description

Example

dataArray of ObjectsAn array containing the raw data readings and time stamps 
  • data.lineType
StringsA lineType. LineTypes are ">" for CommandSent, " " for DataReceived, and "<" for CommandResponse.
">"
  • data.rawData

String OR Integer Array

A single raw data reading. If the raw data is text then this is a string. If the raw data is binary then this is an array of integers. If conversion is turned off, a hexadecimal string is returned.

Text:

  • "2891917878B1F5102C4D16E27AD6B59B00"

Binary:

  • [60,58,57,0,-70,83]

 

 

Binary: (convertHexToDecimal = false)

  • "a5 01 15 00 04"
  • data.sampleTime
StringA timestamp. Each timestamp is a string in ISO8601 (extended) format, yyyy-MM-dd'T'HH:mm:ss.SSS'Z'.
"2014-04-25T00:00:00.005Z"
nextObjectAn object containing information on how to make a rawdata call if the current call was unable to return all the data as a limit was exceeded. This is null if there is no more data in the requested range. 
  • next.parameters
ObjectAn object containing the set of parameters making up the query to get the next set of data in the requested date range. The parameters will include all parameters passed into the original URL plus dateFrom if dateFrom hadn't been specified.
"parameters": {
      "method": "getByDevice",
      "rowLimit": "1",
"deviceCode": "SBECTD19p7128",
"dateFrom": "2014-04-25T00:00:00.006Z",
"token": "ffffffff-ffff-ffff-ffff-ffffffffffff"
}
    • next.parameters.token
StringAs passed into the original call
"ffffffff-ffff-ffff-ffff-ffffffffffff"
    • next.parameters.method
StringgetByDevice, as passed into the original call.
"getByDevice"
    • next.parameters.deviceCode
StringAs passed into the original call
"SBECTD19p7128"
    • next.parameters.dateFrom
StringThis is set to 1 millisecond more than the date of the last reading sent in the current call.
"2014-04-25T00:00:00.006Z"
    • next.parameters.*
StringAny optional parameters passed into the original call.
"dateTo":"2014-04-25T00:00:00.001Z",
"rowLimit":"5",
"outputFormat": "object"
  • next.url
StringThe complete URL that can be used to get the next set of data in the requested range.
"https://data.oceannetworks.ca/api/rawdata?method=getByDevice&dateTo=2014-04-25T00%3A00%3A00.001Z&deviceCode=SBECTD16p6934&rowLimit=5&dateFrom=2014-04-24T23%3A51%3A00.003Z&token=ffffffff-ffff-ffff-ffff-ffffffffffff"
queryUrlStringThe complete URL for the current call.
"https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.010Z"

Example Service Call

https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.010Z


 {
    "data": {
        "lineTypes": [
            ">",
            "<",
            ">"
        ],
        "readings": [
            "version[0d]",
            "version,BARIONET 1.2",
            "getio,201[0d]"
        ],
        "times": [
            "2017-06-08T00:00:00.003Z",
            "2017-06-08T00:00:00.008Z",
            "2017-06-08T00:00:00.009Z"
        ]
    },
    "next"null,
    "queryUrl""https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.010Z"
}


Example Service Call with outputFormat parameter

https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.004Z&outputFormat=object



   "data":[ 
      
         "lineType":">",
         "rawData":"version[0d]",
         "sampleTime":"2017-06-08T00:00:00.001Z"
      },
      
         "lineType":"<",
         "rawData":"version,BARIONET 1.2 Simulator",
         "sampleTime":"2017-06-08T00:00:00.002Z"
      },
      
         "lineType":">",
         "rawData":"getio,201[0d]",
         "sampleTime":"2017-06-08T00:00:00.003Z"
      }
   ],
   "next":null,
   "queryUrl":"https://data.oceannetworks.ca/api/rawdata?method=getByDevice&token=ffffffff-ffff-ffff-ffff-ffffffffffff&deviceCode=BARIX001&dateFrom=2017-06-08T00:00:00.000Z&dateTo=2017-06-08T00:00:00.004Z&outputFormat=object"
}



getByLocation

Retrieve the raw data at a given location for the given device category. A date range is optional–when not specified, data from the beginning of time to the present will be returned within (possibly default) row and size limits. Older data is returned by specifying a dateFrom date and optionally an dateTo date.

Parameters


ParameterTypeDescriptionExample
Required
tokenStringAll Web Services require a token. This can be generated at http://data.oceannetworks.ca/Profile. Click on the "Web Services" tab and click "Generate Token"token=1234567890adbcde123
locationCodeStringSpecify the location of the data to be retrieved. This is a location code as returned by the locations service get method. A location must have device data associated with it to be valid.locationCode=SCVIP
deviceCategoryCodeStringSpecify the type of device generating the data to be retrieved. This is a device category code as returned by the deviceCategories service get method. There must be a device with device category code at the specified location for the deviceCategoryCode to be valid.deviceCategoryCode=CTD
Optional
dateFromStringThe start date inclusive for the data to be returned in ISO8601 Extended format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z'). if not specified then the start date is the beginning of time.dateFrom=2017-06-08T00:00:00.000Z
dateToString

The end date exclusive for the data to be returned in ISO8601 Extended format (yyyy-MM-dd'T'HH:mm:ss.SSS'Z'). If not specified the end date is now.

dateTo=2017-06-08T01:00:00.000Z 
rowLimitIntegerThe limit on the number of raw data readings to return. If not specified the row limit is 100,000.rowLimit=300
sizeLimitIntegerThe limit on the size of raw data readings to return specified in MB. If not specified the size limit is 250 MB.sizeLimit=20
outputFormatString

Array (default or if missing) (case insensitive)
data will be output as three arrays for a given device. Array of lineTypes, array of readings, array of times

Object (case insensitive)
data will be output as a list of objects for a given device. Inside each data object, there are lineType, rawData, and sampleTime.
Can be used if the user wants data object to have the same output format of getByStation method.

outputFormat= array

outputFormat = object


Response

Success (outputFormat = Array)


{
  "data": {
    "lineTypes": <Array of string>,
    "readings": <Array of string> OR <Array of Integer Array>,
    "times": <Array of String (yyyy-MM-dd'T'HH:mm:ss.SSS'Z')>
  },
  "metadata": {
    "locationName": <String>
  },
  "next": {
    "parameters": {
      "method""getByLocation",
      "rowLimit": <String>,
      "locationCode": <String>,
      "deviceCategoryCode": <String>,
      "dateFrom": <String (yyyy-MM-dd'T'HH:mm:ss.SSS'Z')>,
      "outputFormat": <String>,
      "token": <String>
    },
    "url": <String>
  },
  "queryUrl": <String>
}



Property

Type

Description

Example

dataObjectAn object containing the raw data readings and time stamps 
  • data.lineTypes
Array of StringsAn array of lineTypes, one for each reading in the requested date range. LineTypes are ">" for CommandSent, " " for DataReceived, and "<" for CommandResponse.
[" "," "," "," "," "," "," "," "]
  • data.readings

Array of Strings OR

Array of Integer Arrays

An array of readings one for each reading in the requested date range. If the raw data is text then this is an array of strings. If the raw data is binary then each item in the array is an array of integers.

Text:

  • [ "2891917878B1F5102C4D16E27AD6B59B00" ]

Binary:

  • [ [ -91, 16, 0, 123, 4, 0 ] ]

 

  • data.times
Array of StringsAn array of timestamps one for each reading in the requested date range. Each timestamp is a string in ISO8601 (extended) format, yyyy-MM-dd'T'HH:mm:ss.SSS'Z'.
[ "2014-04-25T00:00:00.005Z" ]
metadataObjectAn object containing metadata items.
 
  • metadata.locationName
StringThe name of the location for the requested location code.
"Strait of Georgia VENUS Instrument Platform"
nextObjectAn object containing information on how to make a rawdata call if the current call was unable to return all the data as a limit was exceeded. This is null if there is no more data in the requested range. 
  • next.parameters
ObjectAn object containing the set of parameters making up the query to get the next set of data in the requested date range. The parameters will include all parameters passed into the original URL plus dateFrom if dateFrom hadn't been specified.
"parameters": {
      "method": "getByLocation",
      "rowLimit": "1",
      "locationCode": "SCVIP",
      "deviceCategoryCode": "CURRENTMETER",
      "dateFrom": "2014-04-25T00:00:00.006Z",
      "token": "ffffffff-ffff-ffff-ffff-ffffffffffff"
    },
    • next.parameters.token
StringAs passed into the original call
"ffffffff-ffff-ffff-ffff-ffffffffffff"
    • next.parameters.method
StringgetByLocation, as passed into the original call.
"getByLocation"
    • next.parameters.locationCode
StringAs passed into the original call
"SCVIP"
    • next.parameters.deviceCategoryCode
StringAs passed into the original call
"CURRENTMETER"
    • next.parameters.dateFrom
StringThis is set to 1 millisecond more than the date of the last reading returned in the current call.
"2014-04-25T00:00:00.006Z"
    • next.parameters.*
StringAny optional parameters passed into the original call.
"dateTo":"2009-08-15T17:50:00.000Z",
"rowLimit": "1",
"outputFormat": "object"
  • next.url
StringThe complete URL that can be used to get the next set of data in the requested range.
https://data.oceannetworks.ca/api/rawdata?
method=getByLocation&rowLimit=1&locationCode=SCVIP&deviceCategoryCode=CURRENTMETER&
token=ffffffff-ffff-ffff-ffff-ffffffffffff&
dateFrom=2014-04-25T00%3A00%3A00.006Z
queryUrlStringThe complete URL for the current call.
"https://data.oceannetworks.ca/api/rawdata?method=getByLocation&locationCode=NCBC&deviceCategoryCode=BPR&dateFrom=2009-07-24T17:50:00.000Z&rowLimit=5&token=ffffffff-ffff-ffff-ffff-ffffffffffff"


Success (outputFormat = Object)


{
  "data":[ 
     
        "lineType": <String>,
        "rawData": <String> OR <Integer Array>,
        "sampleTime": <String

Response

Success

...

(yyyy-MM-dd'T'HH:mm:ss.SSS'Z')>

...


     },
     ...
  ],
  "metadata":

...

{
    "locationName":

...

<String>

...


  },

...


  "next":

...

{
    "parameters":

...

{
      "method":

...

 "getByLocation",

...


      "rowLimit":

...

<String>,

...


      "locationCode":

...

<String>,

...


      "deviceCategoryCode":

...

<String>,

...


      "dateFrom":

...

<String

...

(yyyy-MM-dd'T'HH:mm:ss.SSS'Z')>,

...


      "outputFormat":

...

<String>,

...


      "token":

...

<String>
    },
    "url":

...

<String>

...


  },

...


  "queryUrl":

...

<String>

...


}



Object object lineTypesAn array of lineTypes, one for each reading in the requested date range[" "," "," "," "," "," "," "," "]readingsArray of Strings of Integer ArraysAn array of readings one for each reading in the requested date range an array of strings each item in the array [ ] [ -91, 16, 0, 123, 4, 0 ] ]

 

An array of timestamps one for each reading in the requested date range[ ]

Property

Type

Description

Example

dataArray of ObjectsAn array containing the raw data readings and time stamps 
  • data.
  • lineType
Array of StringsStringA lineType. LineTypes are ">" for CommandSent, " " for DataReceived, and "<" for CommandResponse.
">"
  • data.
  • rawData

String OR

Integer Array

A single raw data reading. If the raw data is text then this is

a string. If the raw data is binary then

this is an array of integers. If conversion is turned off, a hexadecimal string is returned.

Text:

  • "2891917878B1F5102C4D16E27AD6B59B00"

Binary:

  • [
  • 60,58,57,0,-70,83]

 

 

Binary: (convertHexToDecimal = false)

  • "a5 01 15 00 04"
  • data.sampleTime
StringA timestamp
  • data.times
Array of Strings. Each timestamp is a string in ISO8601 (extended) format, yyyy-MM-dd'T'HH:mm:ss.SSS'Z'.
"2014-04-25T00:00:00.005Z"
metadataObjectAn object containing metadata items.
 
  • metadata.locationName
StringThe name of the location for the requested location code.
"Strait of Georgia VENUS Instrument Platform"
nextObjectAn object containing information on how to make a rawdata call if the current call was unable to return all the data as a limit was exceeded. This is null if there is no more data in the requested range. 
  • next.parameters
ObjectAn object containing the set of parameters making up the query to get the next set of data in the requested date range. The parameters will include all parameters passed into the original URL plus dateFrom if dateFrom hadn't been specified.
"parameters": {
      "method": "getByLocation",
      "rowLimit": "1",
      "locationCode": "SCVIP",
      "deviceCategoryCode": "CURRENTMETER",
      "dateFrom": "2014-04-25T00:00:00.006Z",
      "token": "ffffffff-ffff-ffff-ffff-ffffffffffff"
    },
    • next.parameters.token
StringAs passed into the original call
"ffffffff-ffff-ffff-ffff-ffffffffffff"
    • next.parameters.method
StringgetByLocation, as passed into the original call.
"getByLocation"
    • next.parameters.locationCode
StringAs passed into the original call
"SCVIP"
    • next.parameters.deviceCategoryCode
StringAs passed into the original call
"CURRENTMETER"
    • next.parameters.dateFrom
StringThis is set to 1 millisecond more than the date of the last reading returned in the current call.
"2014-04-25T00:00:00.006Z"
    • next.parameters.*
StringAny optional parameters passed into the original call.
"dateTo":"2009-08-15T17:50:00.000Z",
"rowLimit": "1",
"outputFormat": "object"
  • next.url
StringThe complete URL that can be used to get the next set of data in the requested range.
https://data.oceannetworks.ca/api/rawdata?
method=getByLocation&rowLimit=1&locationCode=SCVIP&deviceCategoryCode=CURRENTMETER&
token=ffffffff-ffff-ffff-ffff-ffffffffffff&
dateFrom=2014-04-25T00%3A00%3A00.006Z
queryUrlStringThe complete URL for the current call.
"https://data.oceannetworks.ca/api/rawdata?method=getByLocation&locationCode=NCBC&deviceCategoryCode=BPR&dateFrom=2009-07-24T17:50:00.000Z&rowLimit=5&token=ffffffff-ffff-ffff-ffff-ffffffffffff"

...

See rawdata service

Examples

Get 5 raw data readings for BPR data from Barkley Canyon Upper Slope (NCBC):

...


{
  "data":

...

{
    "lineTypes":

...

[
      " ",
      " ",
      " ",
      " ",
      " "
    ],
    "readings": [
      "379B562059B0ECB82CA529C0783C479400",
      "379B562159B0EC6B2CA529C4783C470D00",
      "379B562259B0ED0F2CA529BB783C453400",
      "379B562359B0ED892CA529BD783C44D100",
      "379B562459B0ECEA2CA529BC783C461400"
    ],
    "times": [
      "2017-07-24T17:50:00.062Z",

...


      "2017-07-24T17:50:01.061Z",

...


      "2017-07-24T17:50:02.065Z",

...


      "2017-07-24T17:50:03.069Z",

...


      "2017-07-24T17:50:04.064Z"

...


    ]
  },
  "metadata":

...

{
    "locationName":

...

 "Upper

...

Slope"

...


  },

...


  "next":

...

{
    "parameters":

...

{
      "method":

...

 "getByLocation",

...


      "rowLimit":

...

 "5",

...


      "locationCode":

...

 "NCBC"

...

,
      "deviceCategoryCode":

...

 "BPR",

...


      "dateFrom":

...

 "2017-07-24T17:50:04.065Z",

...


      "token":

...

 "

...

ffffffff-

...

ffff-

...

ffff-

...

ffff-

...

ffffffffffff"
    },
    "url":

...

...

...

...

...

...

ffffffffffff"
  },
  "queryUrl":

...

...

...

...

...

...

...


}

...


 

Get 1 raw data reading for Current Meter (CURRENTMETER) data from Strait of Georgia VENUS Instrument Platform (SCVIP):

...


{
  "data":

...

{
    "lineTypes":

...

[
      " "
    ],
    "readings":

...

[
      [
        -91,
        16,
        0,
        -50,
        4,
        0,
        -99,
        -95,
        0,
        0,
        -2,
        0,
        65,
        0,
        -48,
        -2,
        95,
        89,
        90,
        99,
        97,
        96,
        -5,
        82
      ]
    ],
    "times": [
      "2014-04-25T00:00:00.087Z"

...


    ]
  },
  "metadata":

...

{
    "locationName":

...

 "Strait

...

of

...

Georgia

...

VENUS

...

Instrument

...

Platform"

...


  },

...


  "next":

...

{
    "parameters":

...

{
      "method":

...

 "getByLocation",

...


      "rowLimit":

...

 "1",

...


      "locationCode":

...

 "SCVIP"

...

,
      "deviceCategoryCode":

...

 "CURRENTMETER",

...


      "dateFrom":

...

 "2014-04-25T00:00:00.088Z",

...


      "token":

...

 "

...

ffffffff-

...

ffff-

...

ffff-

...

ffff-

...

ffffffffffff"
    },
    "url":

...

...

...

...

...

...

ffffffffffff"
  },
  "queryUrl":

...

...

...

...

...

...

...


}