Updated on 2022-02-24 GMT+08:00

Querying a Version Package List

Typical Scenario

Before upgrading the device version, an NA can call this API to query the version upgrade packages that have been uploaded to the IoT platform to ensure that the target version package has been uploaded.

API Function

This API is used by an NA to query a list of uploaded version packages that meet a specified condition.

API Prototype

Method

GET

URL

https://server:port/iodm/northbound/v1.5.0/category?fileType={fileType}&deviceType={deviceType}&model={model}&manufactureName={manufactureName}&version={version}&pageNo={pageNo}&pageSize={pageSize}

Transport Protocol

HTTPS

Request Parameters

Parameter

Mandatory or Optional

Type

Location

Description

app_key

Mandatory

String

header

Identifies an application that can be accessed on the IoT platform. The value of this parameter is allocated by the IoT platform when the application is created on the platform.

Authorization

Mandatory

String

header

Indicates the authentication information for accessing the IoT platform. The value is Bearer {accessToken}, in which {accessToken} indicates the access token returned by the Authentication API.

fileType

Optional

String(256)

query

Indicates the type of a version package.

  • firmwarePackage: Indicates a firmware package.
  • softwarePackage: Indicates a software package.

deviceType

Optional

String(256)

query

Indicates the type of the device to which the version package is applicable.

model

Optional

String(256)

query

Indicates the model of the device to which the version package is applicable.

manufacturerName

Optional

String(256)

query

Indicates the manufacturer of the device to which the version package is applicable.

version

Optional

String(256)

query

Indicates the version of the version package.

pageNo

Optional

Integer

query

Indicates the page number to be queried. The value is an integer greater than or equal to 0. The default value is 0, indicating that the first page is queried.

pageSize

Optional

Integer

query

Indicates the number of records on each page. The value ranges from 1 to 100. The default value is 10.

Response Parameters

Status Code: 200 OK

Parameter

Type

Description

data

List<CategoryInfo>

Indicates the information about a list of version packages.

pageNo

Integer

Indicates the page number.

pageSize

Integer

Indicates the number of records to be displayed on each page.

totalCount

Integer

Indicates the total number of query results.

CategoryInfo structure

Parameter

Type

Description

fileId

String

Identifies a version package.

name

String

Indicates the version package name.

version

String

Indicates the version of the version package.

fileType

String

Indicates the type of a version package.

  • firmwarePackage: Indicates a firmware package.
  • softwarePackage: Indicates a software package.

deviceType

String

Indicates the type of the device to which the version package is applicable.

model

String

Indicates the model of the device to which the version package is applicable.

manufacturerName

String

Indicates the manufacturer of the device to which the version package is applicable.

protocolType

String

Indicates the protocol used by the device to which the version package is applicable.

description

String

Indicates the version package description.

date

String

Indicates the date on which the version package was generated.

uploadTime

String

Indicates the date on which the version package was uploaded.

Request Example

Method: GET
Request:
https://server:port/iodm/northbound/v1.5.0/category?fileType={fileType}&deviceType={deviceType}&model={model}&manufactureName={manufactureName}&version={version}&pageNo={pageNo}&pageSize={pageSize}
Header:
app_key: ******
Authorization: Bearer ******
Content-Type: application/json

Response Example

Response:
Status Code: 200 OK
Content-Type: application/json
Body:
{
    "data":[
        {
            "fileId":"****************",
            "name":"******",
            "version":"V1.1.10",
            "fileType":"softwarePackage",
            "deviceType":"******",
            "model":"******",
            "manufacturerName":"***",
            "protocolType":"CoAP",
            "description":"Test software package made by WYH",
            "date":"2017-08-11",
            "uploadTime":"20151212T121212Z"
        },
        {
            "fileId":"****************",
            "name":"******",
            "version":"1.0",
            "fileType":"firmwarePackage",
            "deviceType":"WaterMeter",
            "model":"17",
            "manufacturerName":"******",
            "protocolType":"CoAP",
            "description":null,
            "date":" 2017-11-11",
            "uploadTime":"20151212T121212Z"
        }
    ],
    "pageNo":0,
    "pageSize":2,
    "totalCount":2
}

Error Codes

HTTP Status Code

Error Code

Error Description

Remarks

400

120015

Bad request error.

A request error occurs.

Recommended handling: Check whether the values of pageNo and pageSize in the API request are within the valid ranges.

400

123029

pageNo or pageSize beyond the limit.

The value of pageNo or pageSize exceeds the upper limit.

Recommended handling: Change the value of pageNo or pageSize to a valid value.

403

1010009

app throttle exceed.

The NA calls the API at a frequency that exceeds the flow control threshold (100 calls per minute by default).

Recommended handling: Contact IoT platform maintenance personnel to adjust the flow control threshold or control the API call frequency.

403

1010005

App_key or access_token is invalid.

The access token is invalid.

Recommended handling: Check whether accessToken carried in the API request is correct.