Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Firmware Config

Retrieve a list of firmware configs

...

Request: http://localhost:9091/queries/firmwares.json OR http://localhost:9091/queries/firmwares


JSON response:

{

  "id": "firmwareConfigId",

  "description": "FirmwareDescription",

  "supportedModelIds": [

    "MODELA"

  ],

  "firmwareFilename": "FirmwareFilename",

  "firmwareVersion": "FirmwareVersion"

}

XML response

<ArrayList><item><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion></item><item><id>f0b7b35b-4b8e-4a15-9d66-91c4b3d575d1</id><description>prav_Firm</description><supportedModelIds><supportedModelIds>PX013ANM</supportedModelIds><supportedModelIds>PX013ANC</supportedModelIds></supportedModelIds><firmwareFilename>PX013AN_2.1s11_VBN_HYBse-signed.bin</firmwareFilename><firmwareVersion>PX013AN_2.1s11_VBN_HYBse-signed</firmwareVersion></item></ArrayList>

Retrieve a single firmware config by id

...

http://localhost:9091/queries/firmwares/b65962b5-1481-4eed-a010-2abfa8c3bbfd.json


JSON response

{

  "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

  "updated": 1440492963476,

  "description": "_-",

  "supportedModelIds": [

    "YETST"

  ],

  "firmwareDownloadProtocol": "tftp",

  "firmwareFilename": "_-",

  "firmwareVersion": "_-",

  "rebootImmediately": false

}

XML response

<FirmwareConfig><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><updated>1440492963476</updated><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareDownloadProtocol>tftp</firmwareDownloadProtocol><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion><rebootImmediately>false</rebootImmediately></FirmwareConfig>

 

Retrieve firmware configs by modelId 

...

http://localhost:9091/queries/firmwares/model/YETST


JSON response

[{

  "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

  "updated": 1440492963476,

  "description": "_-",

  "supportedModelIds": [

    "YETST"

  ],

  "firmwareDownloadProtocol": "tftp",

  "firmwareFilename": "_-",

  "firmwareVersion": "_-",

  "rebootImmediately": false

}]


XML response

<ArrayList><item><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion></item><item><id>f0b7b35b-4b8e-4a15-9d66-91c4b3d575d1</id><description>prav_Firm</description><supportedModelIds><supportedModelIds>PX013ANM</supportedModelIds><supportedModelIds>PX013ANC</supportedModelIds></supportedModelIds><firmwareFilename>PX013AN_2.1s11_VBN_HYBse-signed.bin</firmwareFilename><firmwareVersion>PX013AN_2.1s11_VBN_HYBse-signed</firmwareVersion></item></ArrayList>

Create/update a firmware config

...

Description, file name, version, supported model should be not empty;


JSON request

{

  "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

  "updated": 1440492963476,

  "description": "_-",

  "supportedModelIds": [

    "YETST"

  ],

  "firmwareDownloadProtocol": "tftp",

  "firmwareFilename": "_-",

  "firmwareVersion": "_-",

  "rebootImmediately": false

}

XML request

<FirmwareConfig><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><updated>1440492963476</updated><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareDownloadProtocol>tftp</firmwareDownloadProtocol><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion><rebootImmediately>false</rebootImmediately></FirmwareConfig>


Delete a firmware config by id

...

http://localhost:9091/queries/rules/ips


JSON response

[

  {

    "id": "ddc07355-d253-4f6b-8b42-296819d0d094",

    "name": "fsd",

    "ipAddressGroup": {

      "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

      "name": "test",

      "ipAddresses": [

        "192.11.11.11"

      ]

    },

    "environmentId": "DEV",

    "modelId": "YETST",

    "noop": true,

    "expression": {

      "targetedModelIds": [

         

      ],

      "environmentId": "DEV",

      "modelId": "YETST",

      "ipAddressGroup": {

        "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

        "name": "test",

        "ipAddresses": [

          "192.11.11.11"

        ]

      }

    }

  }

]

XML response

<ArrayList><item><id>ddc07355-d253-4f6b-8b42-296819d0d094</id><name>fsd</name><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><environmentId>DEV</environmentId><modelId>YETST</modelId><noop>true</noop><expression><targetedModelIds/><environmentId>DEV</environmentId><modelId>YETST</modelId><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup></expression></item></ArrayList>


Retrieve an ip rule by name

...

http://localhost:9091/queries/rules/ips/fsd


JSON response

{

  "id": "ddc07355-d253-4f6b-8b42-296819d0d094",

  "name": "fsd",

  "ipAddressGroup": {

    "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

    "name": "test",

    "ipAddresses": [

      "192.11.11.11"

    ]

  },

  "environmentId": "DEV",

  "modelId": "YETST",

  "noop": true,

  "expression": {

    "targetedModelIds": [

       

    ],

    "environmentId": "DEV",

    "modelId": "YETST",

    "ipAddressGroup": {

      "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

      "name": "test",

      "ipAddresses": [

        "192.11.11.11"

      ]

    }

  }

}

XML response

 <IpRuleBean><id>ddc07355-d253-4f6b-8b42-296819d0d094</id><name>fsd</name><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><environmentId>DEV</environmentId><modelId>YETST</modelId><noop>true</noop><expression><targetedModelIds/><environmentId>DEV</environmentId><modelId>YETST</modelId><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup></expression></IpRuleBean>

Create/update an ip rule

If IpRule is missing it will be being created, otherwise updated. For update operation id field is not needed.

...

 http://localhost:9091/updates/rules/ips


JSON request

{

  "id": "ddc07355-d253-4f6b-8b42-296819d0d094",

  "name": "fsd",

  "ipAddressGroup": {

    "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

    "name": "test",

    "ipAddresses": [

      "192.11.11.11"

    ]

  },

  "environmentId": "DEV",

  "modelId": "YETST",

  "noop": true,

  "expression": {

    "targetedModelIds": [

       

    ],

    "environmentId": "DEV",

    "modelId": "YETST",

    "ipAddressGroup": {

      "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

      "name": "test",

      "ipAddresses": [

        "192.11.11.11"

      ]

    }

  }

}

XML request

<IpRuleBean><id>ddc07355-d253-4f6b-8b42-296819d0d094</id><name>fsd</name><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><environmentId>DEV</environmentId><modelId>YETST</modelId><noop>true</noop><expression><targetedModelIds/><environmentId>DEV</environmentId><modelId>YETST</modelId><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup></expression></IpRuleBean>

Delete an ip rule

DELETE http://<host>:<port>/delete/rules/ips/{ipRuleName}?applicationType={type}

...

 http://localhost:9091/queries/filters/locations


JSON response

[

  {

    "ipAddressGroup": {

      "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

      "name": "test",

      "ipAddresses": [

        "192.11.11.11"

      ]

    },

    "environments": [

       

    ],

    "models": [

       

    ],

    "ipv6FirmwareLocation": "2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d",

    "httpLocation": "http://localhost:8080",

    "forceHttp": true,

    "id": "2ce1279b-bb25-4fda-9a34-fe8466bc2702",

    "name": "name",

    "boundConfigId": "95e75859-ae8f-4d6a-b758-11fefbe647e1",

    "ipv4FirmwareLocation": "10.10.10.10"

  }

]

XML response

<DownloadLocationFilterWrapper><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><environments/><models/><ipv6FirmwareLocation>2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d</ipv6FirmwareLocation><httpLocation>http://localhost:8080</httpLocation><forceHttp>true</forceHttp><id>2ce1279b-bb25-4fda-9a34-fe8466bc2702</id><name>name</name><boundConfigId>95e75859-ae8f-4d6a-b758-11fefbe647e1</boundConfigId><ipv4FirmwareLocation>10.10.10.10</ipv4FirmwareLocation></DownloadLocationFilterWrapper>

Retrieve a location filter by name

...

http://localhost:9091/queries/filters/locations/name


JSON response

[

  {

    "ipAddressGroup": {

      "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

      "name": "test",

      "ipAddresses": [

        "192.11.11.11"

      ]

    },

    "environments": [

       

    ],

    "models": [

       

    ],

    "ipv6FirmwareLocation": "2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d",

    "httpLocation": "http://localhost:8080",

    "forceHttp": true,

    "id": "2ce1279b-bb25-4fda-9a34-fe8466bc2702",

    "name": "name",

    "boundConfigId": "95e75859-ae8f-4d6a-b758-11fefbe647e1",

    "ipv4FirmwareLocation": "10.10.10.10"

  }

]

XML response

<DownloadLocationFilterWrapper><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><environments/><models/><ipv6FirmwareLocation>2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d</ipv6FirmwareLocation><httpLocation>http://localhost:8080</httpLocation><forceHttp>true</forceHttp><id>2ce1279b-bb25-4fda-9a34-fe8466bc2702</id><name>name</name><boundConfigId>95e75859-ae8f-4d6a-b758-11fefbe647e1</boundConfigId><ipv4FirmwareLocation>10.10.10.10</ipv4FirmwareLocation></DownloadLocationFilterWrapper>

Create/update location filter

...

http://localhost:9091/updates/filters/locations


XML request

<DownloadLocationFilterWrapper><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><environments/><models/><ipv6FirmwareLocation>2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d</ipv6FirmwareLocation><httpLocation>http://localhost:8080</httpLocation><forceHttp>true</forceHttp><id>2ce1279b-bb25-4fda-9a34-fe8466bc2702</id><name>name</name><boundConfigId>95e75859-ae8f-4d6a-b758-11fefbe647e1</boundConfigId><ipv4FirmwareLocation>10.10.10.10</ipv4FirmwareLocation></DownloadLocationFilterWrapper>

JSON request

{

  "ipAddressGroup": {

    "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

    "name": "test",

    "ipAddresses": [

      "192.11.11.11"

    ]

  },

  "environments": [

     

  ],

  "models": [

     

  ],

  "ipv6FirmwareLocation": "2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d",

  "httpLocation": "http://localhost:8080",

  "forceHttp": true,

  "id": "2ce1279b-bb25-4fda-9a34-fe8466bc2702",

  "name": "name",

  "boundConfigId": "95e75859-ae8f-4d6a-b758-11fefbe647e1",

  "ipv4FirmwareLocation": "10.10.10.10"

}

Delete location filter by name

...

http://localhost:9091/queries/filters/downloadlocation


JSON response

 {

   "type":"com.comcast.xconf.estbfirmware.DownloadLocationRoundRobinFilterValue",

   "id":"DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE",

   "locations": [

    {

      "locationIp": "10.10.10.10",

      "percentage": 100.0

    }

  ],

  "ipv6locations": [

     

  ],

  "rogueModels": [

     

  ],

  "httpLocation": "lf.com",

  "httpFullUrlLocation": "http://www.localhost.org",

  "neverUseHttp": true,

  "firmwareVersions": "??"

}

XML respose

<DownloadLocationRoundRobinFilterValue type="com.comcast.xconf.estbfirmware.DownloadLocationRoundRobinFilterValue"><id>DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE</id><locations><locations><locationIp>10.10.10.10</locationIp><percentage>100.0</percentage></locations></locations><ipv6locations/><rogueModels/><httpLocation>lf.com</httpLocation><httpFullUrlLocation>http://www.localhost.org</httpFullUrlLocation><neverUseHttp>true</neverUseHttp><firmwareVersions>??</firmwareVersions></DownloadLocationRoundRobinFilterValue>

Update download location filter

...

http://localhost:9091/updates/filters/downloadlocation.json


JSON request

 {

  "type": "com.comcast.xconf.estbfirmware.DownloadLocationRoundRobinFilterValue",

  "id": "DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE",

  "updated": 1441287139144,

  "locations": [

    {

      "locationIp": "10.10.10.10",

      "percentage": 100.0

    }

  ],

  "ipv6locations": [

     

  ],

  "rogueModels": [

     

  ],

  "httpLocation": "lf.com",

  "httpFullUrlLocation": "http://www.localhost.org",

  "neverUseHttp": true,

  "firmwareVersions": "??"

}

XML request

<DownloadLocationRoundRobinFilterValue type="com.comcast.xconf.estbfirmware.DownloadLocationRoundRobinFilterValue"><id>DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE</id><updated>1441287139144</updated><locations><locations><locationIp>10.10.10.10</locationIp><percentage>100.0</percentage></locations></locations><ipv6locations/><rogueModels/><httpLocation>lf.com</httpLocation><httpFullUrlLocation>http://www.localhost.org</httpFullUrlLocation><neverUseHttp>true</neverUseHttp><firmwareVersions>??</firmwareVersions></DownloadLocationRoundRobinFilterValue>

...


Environment model rules

Retrieve an environment model rule list

...

http://localhost:9091/queries/rules/envModels


JSON response

[

  {

    "id": "12b620bd-2e74-4467-91e5-c29657022c05",

    "name": "re",

    "firmwareConfig": {

      "id": "f0b7b35b-4b8e-4a15-9d66-91c4b3d575d1",

      "description": "prav_Firm",

      "supportedModelIds": [

        "PX013ANM",

        "PX013ANC"

      ],

      "firmwareFilename": "PX013AN_2.1s11_VBN_HYBse-signed.bin",

      "firmwareVersion": "PX013AN_2.1s11_VBN_HYBse-signed"

    },

    "environmentId": "TEST",

    "modelId": "PX013ANC"

  },

  {

    "id": "3609a195-ecd3-4950-8583-ceb2f6f6f16b",

    "name": "uuuuuuu",

    "environmentId": "DEV",

    "modelId": "YETST"

  }

]

XML response

<ArrayList><item><id>12b620bd-2e74-4467-91e5-c29657022c05</id><name>re</name><firmwareConfig><id>f0b7b35b-4b8e-4a15-9d66-91c4b3d575d1</id><description>prav_Firm</description><supportedModelIds><supportedModelIds>PX013ANM</supportedModelIds><supportedModelIds>PX013ANC</supportedModelIds></supportedModelIds><firmwareFilename>PX013AN_2.1s11_VBN_HYBse-signed.bin</firmwareFilename><firmwareVersion>PX013AN_2.1s11_VBN_HYBse-signed</firmwareVersion></firmwareConfig><environmentId>TEST</environmentId><modelId>PX013ANC</modelId></item><item><id>3609a195-ecd3-4950-8583-ceb2f6f6f16b</id><name>uuuuuuu</name><environmentId>DEV</environmentId><modelId>YETST</modelId></item></ArrayList>

Retrieve an environment model rule by name

...

http://localhost:9091/queries/rules/envModels/testName.json


JSON response

{

  "id": "12b620bd-2e74-4467-91e5-c29657022c05",

  "name": "testName",

  "firmwareConfig": {

    "id": "f0b7b35b-4b8e-4a15-9d66-91c4b3d575d1",

    "description": "prav_Firm",

    "supportedModelIds": [

      "PX013ANM",

      "PX013ANC"

    ],

    "firmwareFilename": "PX013AN_2.1s11_VBN_HYBse-signed.bin",

    "firmwareVersion": "PX013AN_2.1s11_VBN_HYBse-signed"

  },

  "environmentId": "TEST",

  "modelId": "PX013ANC"

}

XML response

<EnvModelRuleBean><id>12b620bd-2e74-4467-91e5-c29657022c05</id><name>testName</name><firmwareConfig><id>f0b7b35b-4b8e-4a15-9d66-91c4b3d575d1</id><description>prav_Firm</description><supportedModelIds><supportedModelIds>PX013ANM</supportedModelIds><supportedModelIds>PX013ANC</supportedModelIds></supportedModelIds><firmwareFilename>PX013AN_2.1s11_VBN_HYBse-signed.bin</firmwareFilename><firmwareVersion>PX013AN_2.1s11_VBN_HYBse-signed</firmwareVersion></firmwareConfig><environmentId>TEST</environmentId><modelId>PX013ANC</modelId></EnvModelRuleBean>

Create/update an environment model rule

...

http://localhost:9091/updates/rules/envModels


JSON request

{

  "id": "12b620bd-2e74-4467-91e5-c29657022c05",

  "name": "testName",

  "firmwareConfig": {

    "id": "f0b7b35b-4b8e-4a15-9d66-91c4b3d575d1",

    "description": "prav_Firm",

    "supportedModelIds": [

      "PX013ANM",

      "PX013ANC"

    ],

    "firmwareFilename": "PX013AN_2.1s11_VBN_HYBse-signed.bin",

    "firmwareVersion": "PX013AN_2.1s11_VBN_HYBse-signed"

  },

  "environmentId": "TEST",

  "modelId": "PX013ANC"

}

XML request

<EnvModelRuleBean><id>12b620bd-2e74-4467-91e5-c29657022c05</id><name>testName</name><firmwareConfig><id>f0b7b35b-4b8e-4a15-9d66-91c4b3d575d1</id><description>prav_Firm</description><supportedModelIds><supportedModelIds>PX013ANM</supportedModelIds><supportedModelIds>PX013ANC</supportedModelIds></supportedModelIds><firmwareFilename>PX013AN_2.1s11_VBN_HYBse-signed.bin</firmwareFilename><firmwareVersion>PX013AN_2.1s11_VBN_HYBse-signed</firmwareVersion></firmwareConfig><environmentId>TEST</environmentId><modelId>PX013ANC</modelId></EnvModelRuleBean>

Delete an environment model rule

...

http://localhost:9091/queries/filters/ips 


JSON response

[

  {

    "id": "8bdb3493-a18b-4230-9b25-fd44df38863b",

    "name": "name",

    "ipAddressGroup": {

      "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

      "name": "test",

      "ipAddresses": [

        "192.11.11.11"

      ]

    },

    "warehouse": false

  },

  {

    "id": "f9c5a6e8-d34f-4dc6-ae41-9016b70552ae",

    "name": "namef",

    "ipAddressGroup": {

      "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

      "name": "test",

      "ipAddresses": [

        "192.11.11.11"

      ]

    },

    "warehouse": false

  }

]

XML response

<ArrayList><item><id>8bdb3493-a18b-4230-9b25-fd44df38863b</id><name>name</name><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><warehouse>false</warehouse></item><item><id>f9c5a6e8-d34f-4dc6-ae41-9016b70552ae</id><name>namef</name><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><warehouse>false</warehouse></item></ArrayList>

Retrieve an ip filter by name

...

http://localhost:9091/queries/filters/ips/namef.json


JSON response

{

  "id": "f9c5a6e8-d34f-4dc6-ae41-9016b70552ae",

  "name": "namef",

  "ipAddressGroup": {

    "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

    "name": "test",

    "ipAddresses": [

      "192.11.11.11"

    ]

  },

  "warehouse": false

}

XML response

<IpFilter><id>8bdb3493-a18b-4230-9b25-fd44df38863b</id><name>name</name><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><warehouse>false</warehouse></IpFilter>

Create/update an IP filter

...

http://localhost:9091/updates/filters/ips


JSON request

{

    "id": "f9c5a6e8-d34f-4dc6-ae41-9016b70552ae",

    "name": "namef",

    "ipAddressGroup": {

      "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

      "name": "test",

      "ipAddresses": [

        "192.11.11.11"

      ]

    },

    "warehouse": false

  }

XML request

<IpFilter><id>8bdb3493-a18b-4230-9b25-fd44df38863b</id><name>name</name><ipAddressGroup><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></ipAddressGroup><warehouse>false</warehouse></IpFilter>

Delete IP filter

Response: 200 OK and message: IpRuleId is empty OR IpFilter successfully deleted

...

firmwareVersions will be present only if firmwareVersions is set to true, lastKnownGood and intermediateVersion will be set to empty string and empty tag in the JSON and XML response respectively if they are not set in the Percent Filter.

  

JSON response

{"type":"com.comcast.xconf.queries.beans.PercentFilterWrapper","id":"PERCENT_FILTER_VALUE","whitelist":{"id":"66e77146-2542-4173-99fb-2acfe52b9c06","name":"All warehouses","ipAddresses":["2345678","76.20.128.0/21","76.106.43.0/24",","162.150.244.212"]},"percentage":100.0,"EnvModelPercentages":[{"percentage":100.0,"active":true,"firmwareCheckRequired":true,"rebootImmediately":true,"lastKnownGood":"","intermediateVersion":"","firmwareVersions":["addtestedit"],"name":"!@"},{"percentage":50.0,"active":true,"firmwareCheckRequired":true,"rebootImmediately":true,"lastKnownGood":"PR150BN_2.4p6s3_VBN_HYBsd","intermediateVersion":"PR150BN_2.3p7s1_PROD_HYBse","firmwareVersions":["PR150BN_2.4p6s3_VBN_HYBsd","PR150BN_2.4p8s3_VBN_HYBsd-signed","PR150BN_2.3p7s1_PROD_HYBse"],"name":"IV_6a"}]}

XML response

<PercentFilterWrapper type="com.comcast.xconf.queries.beans.PercentFilterWrapper">

<id>PERCENT_FILTER_VALUE</id><percentage>99.0</percentage><EnvModelPercentages><percentage>100.0</percentage><active>false</active><firmwareCheckRequired>false</firmwareCheckRequired><rebootImmediately>false</rebootImmediately><lastKnownGood/><intermediateVersion/><firmwareVersions/><name>123</name></EnvModelPercentages><EnvModelPercentages><percentage>50.0</percentage><active>true</active><firmwareCheckRequired>true</firmwareCheckRequired><rebootImmediately>true</rebootImmediately><lastKnownGood>PR150BN_2.4p6s3_VBN_HYBsd</lastKnownGood><intermediateVersion>PR150BN_2.3p7s1_PROD_HYBse</intermediateVersion> <firmwareVersions><firmwareVersions>PR150BN_2.4p6s3_VBN_HYBsd</firmwareVersions><firmwareVersions>PR150BN_2.4p8s3_VBN_HYBsd-signed</firmwareVersions><firmwareVersions>PR150BN_2.3p7s1_PROD_HYBse</firmwareVersions></firmwareVersions><name>IV_6a</name></EnvModelPercentages></PercentFilterWrapper>

Retrieve percent filter field values

...

Response: 404 Not Found and Message: Field fieldName does not exist


JSON response

{"firmwareVersions":["firmwareVersion1", "firmwareVersion2"]}

 

XML response

<SingletonMap>

    <fieldName>value1</fieldName>

    <fieldName>value2</fieldName>

</SingletonMap>

Update percent filter

POST http://<host>:<port>/updates/filters/percent?applicationType={type}

...

http://localhost:9091/updates/filters/percent


JSON request

{

  "type": "com.comcast.xconf.queries.beans.PercentFilterWrapper",

  "id": "PERCENT_FILTER_VALUE",

  "percentage": 99.0,

  "EnvModelPercentages": [

    {

      "percentage": 100.0,

      "active": false,

      "firmwareCheckRequired": false,

      "rebootImmediately": false,

      "firmwareVersions": [

         

      ],

      "name": "re"

    },

    {

      "percentage": 100.0,

      "active": false,

      "firmwareCheckRequired": false,

      "rebootImmediately": false,

      "firmwareVersions": [

         

      ],

      "name": "uuuuuuu"

    }

  ]

}

XML request

<PercentFilterWrapper type="com.comcast.xconf.queries.beans.PercentFilterWrapper"><id>PERCENT_FILTER_VALUE</id><percentage>99.0</percentage><EnvModelPercentages><EnvModelPercentages><percentage>100.0</percentage><active>false</active><firmwareCheckRequired>false</firmwareCheckRequired><rebootImmediately>false</rebootImmediately><firmwareVersions/><name>re</name></EnvModelPercentages><EnvModelPercentages><percentage>100.0</percentage><active>false</active><firmwareCheckRequired>false</firmwareCheckRequired><rebootImmediately>false</rebootImmediately><firmwareVersions/><name>uuuuuuu</name></EnvModelPercentages></EnvModelPercentages></PercentFilterWrapper>

Retrive EnvModelPercentages

...

Request: http://localhost:9091/queries/percentageBean


JSON response

[

 {

    "id": "4c2cea9e-c1be-4219-8f2a-70084f1cb648",

    "name": "Percent Test 2",

    "active": false,

    "firmwareCheckRequired": false,

    "rebootImmediately": false,

    "firmwareVersions": [],

    "environment": "envId",

    "model": "modelId",

    "distributions": [

      {

        "configId": "0c176c01-b4cf-4706-9e41-5118e30f68cb",

        "percentage": 100.0

      }

    ]

  }

]


XML response

<ArrayList><item><id>4c2cea9e-c1be-4219-8f2a-70084f1cb648</id><name>Percent Test 2</name><active>false</active><firmwareCheckRequired>false</firmwareCheckRequired><rebootImmediately>false</rebootImmediately><firmwareVersions/><environment>envId</environment><model>modelId</model><distributions><distributions><configId>29ab0494-0ee9-406a-9189-a81598988a54</configId><percentage>100.0</percentage></distributions></distributions></item></ArrayList>

Retrive EnvModelPercentage by id

...

Request: http://localhost:9091/queries/percentageBean/4c2cea9e-c1be-4219-8f2a-70084f1cb648


JSON response

{

    "id": "4c2cea9e-c1be-4219-8f2a-70084f1cb648",

    "name": "Percent Test 2",

    "active": false,

    "firmwareCheckRequired": false,

    "rebootImmediately": false,

    "firmwareVersions": [],

    "environment": "envId",

    "model": "modelId",

    "distributions": [

      {

        "configId": "0c176c01-b4cf-4706-9e41-5118e30f68cb",

        "percentage": 100.0

      }

    ]

}

  



XML response

<PercentageBean><id>4c2cea9e-c1be-4219-8f2a-70084f1cb648</id><ttlMap/><name>Percent Test 2</name><active>false</active><firmwareCheckRequired>false</firmwareCheckRequired><rebootImmediately>false</rebootImmediately><firmwareVersions/><environment>envId</environment><model>modelId</model><distributions><distributions><configId>0c176c01-b4cf-4706-9e41-5118e30f68cb</configId><percentage>100.0</percentage></distributions></distributions></PercentageBean>

Create envModelPercentage

...

Name should be unique and not blank, environment and model should be not empty, at least one firmware version should be in minCheck list if firmwareCheckRequired=true, percentage within [0, 100], distribution firmware version should be in minCheck list if firmwareCheckRequired=true, total distribution percentage is within [0, 100], last known good is not empty if total distribution percentage < 100, last known good should be selected in minCheck list.

JSON request

{

    "id": "4c2cea9e-c1be-4219-8f2a-70084f1cb648",

    "name": "Percent Test 2",

    "active": false,

    "firmwareCheckRequired": false,

    "rebootImmediately": false,

    "firmwareVersions": [],

    "environment": "envId",

    "model": "modelId",

    "distributions": [

      {

        "configId": "0c176c01-b4cf-4706-9e41-5118e30f68cb",

        "percentage": 100.0

      }

    ]

}

XML request

<PercentageBean><id>4c2cea9e-c1be-4219-8f2a-70084f1cb648</id><ttlMap/><name>Percent Test 2</name><active>false</active><firmwareCheckRequired>false</firmwareCheckRequired><rebootImmediately>false</rebootImmediately><firmwareVersions/><environment>envId</environment><model>modelId</model><distributions><distributions><configId>0c176c01-b4cf-4706-9e41-5118e30f68cb</configId><percentage>100.0</percentage></distributions></distributions></PercentageBean>


Update EnvModelPercentage 

...

 Name should be unique and not blank, environment and model should be not empty, at least one firmware version should be in minCheck list if firmwareCheckRequired=true, percentage within [0, 100], distribution firmware version should be in minCheck list if firmwareCheckRequired=true, total distribution percentage is within [0, 100], last known good is not empty if total distribution percentage < 100, last known good should be selected in minCheck list.


JSON request

{

    "id": "4c2cea9e-c1be-4219-8f2a-70084f1cb648",

    "name": "Percent Test 2",

    "active": false,

    "firmwareCheckRequired": false,

    "rebootImmediately": false,

    "firmwareVersions": [],

    "environment": "envId",

    "model": "modelId",

    "distributions": [

      {

        "configId": "0c176c01-b4cf-4706-9e41-5118e30f68cb",

        "percentage": 100.0

      }

    ]

}

XML request

<PercentageBean><id>4c2cea9e-c1be-4219-8f2a-70084f1cb648</id><ttlMap/><name>Percent Test 2</name><active>false</active><firmwareCheckRequired>false</firmwareCheckRequired><rebootImmediately>false</rebootImmediately><firmwareVersions/><environment>envId</environment><model>modelId</model><distributions><distributions><configId>0c176c01-b4cf-4706-9e41-5118e30f68cb</configId><percentage>100.0</percentage></distributions></distributions></PercentageBean>


Delete envModelPercentage

...

Request: http://localhost:9091/queries/filters/time.json OR http://localhost:9091/queries/filters/time

JSON response

[

  {

    "id": "cef2b340-2109-467e-a5d2-a70f0cddb432",

    "name": "abc",

    "ipWhitelist": {

      "id": "0e277b6a-7d95-4421-b390-415b03de04b4",

      "name": "60.70.80.90",

      "ipAddresses": [

        "60.70.80.90"

      ]

    },

    "envModelWhitelist": {

      "id": "0f8110a3-4b60-489b-854e-c69e25b18abc",

      "environmentId": "QA",

      "modelId": "SR150BNC"

    },

    "neverBlockRebootDecoupled": true,

    "neverBlockHttpDownload": true,

    "startTime": "01:00",

    "endTime": "02:00",

    "localTime": true

  }

]

XML response

<ArrayList>

    <item>

        <id>cef2b340-2109-467e-a5d2-a70f0cddb432</id>

        <name>abc</name>

        <ipWhitelist>

            <id>0e277b6a-7d95-4421-b390-415b03de04b4</id>

            <name>60.70.80.90</name>

            <ipAddresses>

                <ipAddresses>60.70.80.90</ipAddresses>

            </ipAddresses>

        </ipWhitelist>

        <envModelWhitelist>

            <id>0f8110a3-4b60-489b-854e-c69e25b18abc</id>

            <environmentId>QA</environmentId>

            <modelId>SR150BNC</modelId>

        </envModelWhitelist>

        <neverBlockRebootDecoupled>true</neverBlockRebootDecoupled>

        <neverBlockHttpDownload>true</neverBlockHttpDownload>

        <startTime>01:00</startTime>

        <endTime>02:00</endTime>

        <localTime>true</localTime>

    </item>

</ArrayList>

Retrieve time filter by name

...

Request: http://localhost:9091/queries/filters/time/xcc.td.json OR http://localhost:9091/queries/filters/time/xcc.td

JSON response

{

    "id": "cef2b340-2109-467e-a5d2-a70f0cddb432",

    "name": "abc",

    "ipWhitelist": {

      "id": "0e277b6a-7d95-4421-b390-415b03de04b4",

      "name": "60.70.80.90",

      "ipAddresses": [

        "60.70.80.90"

      ]

    },

    "envModelWhitelist": {

      "id": "0f8110a3-4b60-489b-854e-c69e25b18abc",

      "environmentId": "QA",

      "modelId": "SR150BNC"

    },

    "neverBlockRebootDecoupled": true,

    "neverBlockHttpDownload": true,

    "startTime": "01:00",

    "endTime": "02:00",

    "localTime": true

  }

XML response

<TimeFilterWrapper>

    <id>cef2b340-2109-467e-a5d2-a70f0cddb432</id>

    <name>abc</name>

    <ipWhitelist>

        <id>0e277b6a-7d95-4421-b390-415b03de04b4</id>

        <name>60.70.80.90</name>

        <ipAddresses>

            <ipAddresses>60.70.80.90</ipAddresses>

        </ipAddresses>

    </ipWhitelist>

    <envModelWhitelist>

        <id>0f8110a3-4b60-489b-854e-c69e25b18abc</id>

        <environmentId>QA</environmentId>

        <modelId>SR150BNC</modelId>

    </envModelWhitelist>

    <neverBlockRebootDecoupled>true</neverBlockRebootDecoupled>

    <neverBlockHttpDownload>true</neverBlockHttpDownload>

    <startTime>01:00</startTime>

    <endTime>02:00</endTime>

    <localTime>true</localTime>

</TimeFilterWrapper>

Create/update time filter

...

Request: http://localhost:9091/updates/filters/time.json OR http://localhost:9091/updates/filters/time

JSON request

{

    "id": "cef2b340-2109-467e-a5d2-a70f0cddb432",

    "name": "abc",

    "ipWhitelist": {

      "id": "0e277b6a-7d95-4421-b390-415b03de04b4",

      "name": "60.70.80.90",

      "ipAddresses": [

        "60.70.80.90"

      ]

    },

    "envModelWhitelist": {

      "id": "0f8110a3-4b60-489b-854e-c69e25b18abc",

      "environmentId": "QA",

      "modelId": "SR150BNC"

    },

    "neverBlockRebootDecoupled": true,

    "neverBlockHttpDownload": true,

    "startTime": "01:00",

    "endTime": "02:00",

    "localTime": true

  }

XML request

<TimeFilterWrapper>

    <id>cef2b340-2109-467e-a5d2-a70f0cddb432</id>

    <name>abc</name>

    <ipWhitelist>

        <id>0e277b6a-7d95-4421-b390-415b03de04b4</id>

        <name>60.70.80.90</name>

        <ipAddresses>

            <ipAddresses>60.70.80.90</ipAddresses>

        </ipAddresses>

    </ipWhitelist>

    <envModelWhitelist>

        <id>0f8110a3-4b60-489b-854e-c69e25b18abc</id>

        <environmentId>QA</environmentId>

        <modelId>SR150BNC</modelId>

    </envModelWhitelist>

    <neverBlockRebootDecoupled>true</neverBlockRebootDecoupled>

    <neverBlockHttpDownload>true</neverBlockHttpDownload>

    <startTime>01:00</startTime>

    <endTime>02:00</endTime>

    <localTime>true</localTime>

</TimeFilterWrapper>

Delete time filter by name

...

Request: http://localhost:9091/queries/environments OR http://localhost:9091/queries/environments.json

XML response

 <ArrayList><item><id>DEV</id><description>ff</description></item><item><id>TEST</id><description>do not delete</description></item></ArrayList>

JSON response

[{"id":"DEV","description":"ff"},{"id":"TEST","description":"do not delete"}]

Retrieve environment by id

...

Request: http://localhost:9091/queries/environments/DEV OR http://localhost:9091/queries/environments/DEV.json

JSON response

{"id":"DEV","description":"ff"}

XML response

<Environment><id>DEV</id><description>ff</description></Environment>

Create an environment

POST http://<host>:<port>/updates/environments

...

Request: http://localhost:9091/updates/environments OR http://localhost:9091/updates/environments.json

XML request

 <Environment><id>testName</id><description>some description</description></Environment>

JSON request

{"id":"testName","description":"some description"}

Delete environment by id

DELETE http://<host>:<port>/delete/environments/<environmentId>

...

Request: Request: http://localhost:9091/queries/ipAddressGroups OR http://localhost:9091/queries/ipAddressGroups.json

XML response

 <ArrayList><item><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></item></ArrayList>

JSON response

[

  {

    "id": "2c184325-f9eb-4edc-85c3-5b6466fc3c5c",

    "name": "test",

    "ipAddresses": [

      "192.11.11.11"

    ]

  }

]

Retrieve an IP address group by name

...

Request: http://localhost:9091/queries/ipAddressGroups/byName/test/.json OR http://localhost:9091/queries/ipAddressGroups/byName/test/

JSON response

[{"id":"2c184325-f9eb-4edc-85c3-5b6466fc3c5c","name":"test","ipAddresses":["192.11.11.11"]}]

XML response

<ArrayList><item><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></item></ArrayList>

Retrieve an IP address group by IP

...

Request: http://localhost:9091/queries/ipAddressGroups/byIp/192.11.11.121/.json OR http://localhost:9091/queries/ipAddressGroups/byIp/192.11.11.121/

JSON response

[{"id":"2c184325-f9eb-4edc-85c3-5b6466fc3c5c","name":"test","ipAddresses":["192.11.11.11"]}]

XML response

<ArrayList><item><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></item></ArrayList>

Create an IP address group

...

Request: http://localhost:9091/updates/ipAddressGroups.json OR http://localhost:9091/updates/ipAddressGroups

XML request

 <IpAddressGroupExtended><id>2c184325-f9eb-4edc-85c3-5b6466fc3c5c</id><name>test</name><ipAddresses><ipAddresses>192.11.11.11</ipAddresses></ipAddresses></IpAddressGroupExtended>

JSON request

{"id":"2c184325-f9eb-4edc-85c3-5b6466fc3c5c","name":"test","ipAddresses":["192.11.11.11"]}

Add data to IP Address Group(dev in progress)

...

Request: http://localhost:9091/updates/ipAddressGroups/ipAddressGroup_name/addData.json OR http://localhost:9091/updates/ipAddressGroups/ipAddressGroup_name/addData

JSON request

{

  "list": [

    "1.1.1.1"

  ]

}

XML request

<StringListWrapper><list><list>1.1.1.1</list></list></StringListWrapper>

Delete data from IP Address Group(dev in progress)

...

Request: http://localhost:9091/updates/ipAddressGroups/ipAddressGroup_name/removeData.json OR http://localhost:9091/updates/ipAddressGroups/ipAddressGroup_name/removeData

JSON request

{

  "list": [

    "1.1.1.1"

  ]

}

XML request

<StringListWrapper><list><list>1.1.1.1</list></list></StringListWrapper>

Delete an IP address group by id

...

Request: http://localhost:9091/queries/rules/macs.json OR http://localhost:9091/queries/rules/macs

JSON response

[

  {

    "name": "test",

    "macListRef": "macs",

    "targetedModelIds": [

      "YETST"

    ],

    "firmwareConfig": {

      "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

      "description": "_-",

      "supportedModelIds": [

        "YETST"

      ],

      "firmwareFilename": "_-",

      "firmwareVersion": "_-"

    }

  }

]

XML response

<ArrayList><item><name>test</name><macListRef>macs</macListRef><targetedModelIds><targetedModelIds>YETST</targetedModelIds></targetedModelIds><firmwareConfig><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion></firmwareConfig></item></ArrayList>

Retrieve a mac rule list (v2)

...

Request: http://localhost:9091/queries/rules/macs.json?version=2 OR http://localhost:9091/queries/rules/macs?version=2

JSON response

[

  {

    "id": "18542fe1-94f2-487c-8f41-9f20965648f5",

    "name": "test",

    "macListRef": "macs",

    "targetedModelIds": [

      "YETST"

    ],

    "firmwareConfig": {

      "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

      "description": "_-",

      "supportedModelIds": [

        "YETST"

      ],

      "firmwareFilename": "_-",

      "firmwareVersion": "_-"

    },

    "macList": [

      "AA:AA:AA:AA:AA:AA"

    ]

  }

]

XML response

<ArrayList><item><id>18542fe1-94f2-487c-8f41-9f20965648f5</id><name>test</name><macListRef>macs</macListRef><targetedModelIds><targetedModelIds>YETST</targetedModelIds></targetedModelIds><firmwareConfig><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion></firmwareConfig><macList><macList>AA:AA:AA:AA:AA:AA</macList></macList></item></ArrayList>

Retrieve mac rule by name (legacy)

...

Request: http://localhost:9091/queries/rules/macs/test.json OR http://localhost:9091/queries/rules/macs/test

JSON response

[

  {

    "name": "test",

    "macListRef": "macs",

    "targetedModelIds": [

      "YETST"

    ],

    "firmwareConfig": {

      "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

      "description": "_-",

      "supportedModelIds": [

        "YETST"

      ],

      "firmwareFilename": "_-",

      "firmwareVersion": "_-"

    }

  }

]

XML response

<MacRuleBeanWrapper><name>test</name><macListRef>macs</macListRef><targetedModelIds><targetedModelIds>YETST</targetedModelIds></targetedModelIds><firmwareConfig><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion></firmwareConfig></MacRuleBeanWrapper>

Retrieve mac rule by name (v2)

...

Request: http://localhost:9091/queries/rules/macs/test.json?version=2 OR http://localhost:9091/queries/rules/macs/test?version=2

JSON response

[

  {

    "id": "18542fe1-94f2-487c-8f41-9f20965648f5",

    "name": "test",

    "macListRef": "macs",

    "targetedModelIds": [

      "YETST"

    ],

    "firmwareConfig": {

      "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

      "description": "_-",

      "supportedModelIds": [

        "YETST"

      ],

      "firmwareFilename": "_-",

      "firmwareVersion": "_-"

    },

    "macList": [

      "AA:AA:AA:AA:AA:AA"

    ]

  }

]

XML response

<MacRuleBeanWrapper><id>18542fe1-94f2-487c-8f41-9f20965648f5</id><name>test</name><macListRef>macs</macListRef><targetedModelIds><targetedModelIds>YETST</targetedModelIds></targetedModelIds><firmwareConfig><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion></firmwareConfig><macList><macList>AA:AA:AA:AA:AA:AA</macList></macList></MacRuleBeanWrapper>

Retrieve mac rule by mac address (legacy)

...

Request: http://localhost:9091/queries/rules/macs/address/AA:AA:AA:AA:AA:AA.json OR http://localhost:9091/queries/rules/macs/address/AA:AA:AA:AA:AA:AA

JSON response

[

  {

    "name": "test",

    "macListRef": "macs",

    "targetedModelIds": [

      "YETST"

    ],

    "firmwareConfig": {

      "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

      "description": "_-",

      "supportedModelIds": [

        "YETST"

      ],

      "firmwareFilename": "_-",

      "firmwareVersion": "_-"

    }

  }

]

XML response

<ArrayList><item><name>test</name><macListRef>macs</macListRef><targetedModelIds><targetedModelIds>YETST</targetedModelIds></targetedModelIds><firmwareConfig><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion></firmwareConfig></item></ArrayList>

Retrieve mac rule by mac address (v2)

...

Request: http://localhost:9091/queries/rules/macs/address/AA:AA:AA:AA:AA:AA.json?version=2 OR http://localhost:9091/queries/rules/macs/address/AA:AA:AA:AA:AA:AA?version=2

JSON response

[

  {

    "id": "18542fe1-94f2-487c-8f41-9f20965648f5",

    "name": "test",

    "macListRef": "macs",

    "targetedModelIds": [

      "YETST"

    ],

    "firmwareConfig": {

      "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

      "description": "_-",

      "supportedModelIds": [

        "YETST"

      ],

      "firmwareFilename": "_-",

      "firmwareVersion": "_-"

    },

    "macList": [

      "AA:AA:AA:AA:AA:AA"

    ]

  }

]

XML response

<ArrayList><item><id>18542fe1-94f2-487c-8f41-9f20965648f5</id><name>test</name><macListRef>macs</macListRef><targetedModelIds><targetedModelIds>YETST</targetedModelIds></targetedModelIds><firmwareConfig><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion></firmwareConfig><macList><macList>AA:AA:AA:AA:AA:AA</macList></macList></item></ArrayList>

Create/update mac rule

If mac rule is missing it will be being created, otherwise updated. For update operation id field is not needed.

...

Request: http://localhost:9091/updates/rules/macs.json OR http://localhost:9091/updates/rules/macs

JSON request

{

  "id": "18542fe1-94f2-487c-8f41-9f20965648f5",

  "name": "test",

  "macListRef": "macs",

  "targetedModelIds": [

    "YETST"

  ],

  "firmwareConfig": {

    "id": "b65962b5-1481-4eed-a010-2abfa8c3bbfd",

    "description": "_-",

    "supportedModelIds": [

      "YETST"

    ],

    "firmwareFilename": "_-",

    "firmwareVersion": "_-"

  },

  "macList": [

    "AA:AA:AA:AA:AA:AA"

  ]

}

XML request

<MacRuleBeanWrapper><id>18542fe1-94f2-487c-8f41-9f20965648f5</id><name>test</name><macListRef>macs</macListRef><targetedModelIds><targetedModelIds>YETST</targetedModelIds></targetedModelIds><firmwareConfig><id>b65962b5-1481-4eed-a010-2abfa8c3bbfd</id><description>_-</description><supportedModelIds><supportedModelIds>YETST</supportedModelIds></supportedModelIds><firmwareFilename>_-</firmwareFilename><firmwareVersion>_-</firmwareVersion></firmwareConfig><macList><macList>AA:AA:AA:AA:AA:AA</macList></macList></MacRuleBeanWrapper>

Delete mac rule by name

DELETE http://<host>:<port>/delete/rules/macs/{macRuleName}?applicationType={type}

...

Request: http://localhost:9091/queries/models.json OR http://localhost:9091/queries/models

JSON response

[

  {

    "id": "YETST",

    "description": ""

  },

  {

    "id": "PX013ANC",

    "description": "Pace XG1v3 - Cisco Cable Card"

  }

]

XML response

<ArrayList><item><id>YETST</id><description></description></item><item><id>PX013ANC</id><description>Pace XG1v3 - Cisco Cable Card</description></item></ArrayList>


Retrieve model by id

GET http://<host>:<port>/queries/models/<modelId>

...

Request: http://localhost:9091/queries/models/YETST.json OR http://localhost:9091/queries/models/YETST

JSON response

{

  "id": "YETST",

  "description": ""

}

XML response

<Model><id>YETST</id><description></description></Model>

Create model 

POST http://<host>:<port>/updates/models

...

Request: http://localhost:9091/updates/models.json OR http://localhost:9091/updates/models

JSON request

{

  "id": "test",

  "description": ""

}

XML request

<Model><id>YETST</id><description></description></Model>

Delete model by id

DELETE http://<host>:<port>/delete/models/<modelId>

...

Request: http://localhost:9091/queries/nsLists.json OR http://localhost:9091/queries/nsLists

JSON response

[

  {

    "id": "macs",

    "data": [

      "AA:AA:AA:AA:AA:AA"

    ]

  }

]

XML response

<ArrayList><item><id>macs</id><data><data>AA:AA:AA:AA:AA:AA</data></data></item></ArrayList>


Retrieve an NS list by id:

...

Request: http://localhost:9091/queries/nsLists/byId/macs.json OR http://localhost:9091/queries/nsLists/byId/macs


JSON response

{

  "id": "macs",

  "data": [

    "AA:AA:AA:AA:AA:AA"

  ]

}

XML response

<NamespacedList><id>macs</id><data><data>AA:AA:AA:AA:AA:AA</data></data></NamespacedList>


Retrieve NS list by mac part

...

Request: http://localhost:9091/queries/nsLists/byMacPart/AA:AA.json OR http://localhost:9091/queries/nsLists/byMacPart/AA:AA

JSON response

{

  "id": "macs",

  "data": [

    "AA:AA:AA:AA:AA:AA"

  ]

}

XML response

<NamespacedList><id>macs</id><data><data>AA:AA:AA:AA:AA:AA</data></data></NamespacedList>


Create a NS list

POST http://<host>:<port>/updates/nsLists

...

Request: http://localhost:9091/updates/nsLists.json OR http://localhost:9091/updates/nsLists

JSON request

{

  "id": "macs",

  "data": [

    "AA:AA:AA:AA:AA:AA"

  ]

}

XML request

 <NamespacedList><id>macs</id><data><data>AA:AA:AA:AA:AA:AA</data></data></NamespacedList>


add data to NS list

POST http://<host>:<port>/updates/nsLists/<nsListId>/addData

...

Request: http://localhost:9091/updates/nsLists/listName/addData.json OR http://localhost:9091/updates/nsLists/listName/addData

JSON request

{

  "list": [

    "11:22:33:44:55:66"

  ]

}

XML request

<StringListWrapper><list><list>11:22:33:44:55:66</list></list></StringListWrapper>

Delete data from NS list

DELETE http://<host>:<port>/updates/nsLists/<nsListId>/removeData

...

Request: http://localhost:9091/updates/nsLists/listName/removeData.json OR http://localhost:9091/updates/nsLists/listName/removeData

JSON request

{

  "list": [

    "11:22:33:44:55:66"

  ]

}

XML request

<StringListWrapper><list><list>11:22:33:44:55:66</list></list></StringListWrapper>


Delete an NS list by id

DELETE http://<host>:<port>/delete/nsLists/<nsListId>

...

Request: http://localhost:9091/queries/filters/ri.json OR http://localhost:9091/queries/filters/ri

JSON response

[

  {

    "macAddresses": "[AA:AA:AA:AA:AA:AA]",

    "environments": [

      "TEST"

    ],

    "models": [

      "YETST"

    ],

    "id": "7f6d54d8-69e1-44c3-bb28-e1ed2f5b016f",

    "name": "u"

  }

]

XML response

<ArrayList><item><macAddresses>AA:AA:AA:AA:AA:AA</macAddresses><environments><environments>TEST</environments></environments><models><models>YETST</models></models><id>7f6d54d8-69e1-44c3-bb28-e1ed2f5b016f</id><name>u</name></item></ArrayList>

Retrieve and RI filter by rule name

...

Request: http://localhost:9091/queries/filters/ri/testName.json OR http://localhost:9091/queries/filters/ri/testName

JSON response

{

  "macAddresses": "AA:AA:AA:AA:AA:AA",

  "environments": [

    "TEST"

  ],

  "models": [

    "YETST"

  ],

  "id": "7f6d54d8-69e1-44c3-bb28-e1ed2f5b016f",

  "name": "testName"

}

XML response

<RebootImmediatelyFilter><macAddresses>AA:AA:AA:AA:AA:AA</macAddresses><environments><environments>TEST</environments></environments><models><models>YETST</models></models><id>7f6d54d8-69e1-44c3-bb28-e1ed2f5b016f</id><name>u</name></RebootImmediatelyFilter>


Create/update an RI filter

...

Request: http://localhost:9091/updates/filters/ri.json OR http://localhost:9091/updates/filters/ri

JSON request

{

  "macAddresses": "AA:AA:AA:AA:AA:AA",

  "environments": [

    "TEST"

  ],

  "models": [

    "YETST"

  ],

  "id": "7f6d54d8-69e1-44c3-bb28-e1ed2f5b016f",

  "name": "testName"

}

XML request

<RebootImmediatelyFilter><macAddresses>AA:AA:AA:AA:AA:AA</macAddresses><environments><environments>TEST</environments></environments><models><models>YETST</models></models><id>7f6d54d8-69e1-44c3-bb28-e1ed2f5b016f</id><name>u</name></RebootImmediatelyFilter>


Delete RI filter by name

DELETE http://<host>:<port>/delete/filters/ri/{riFilterName}?applicationType={type}

...