For correction in device profile API response as it is not working properly

Viewed 47

{
"id": "DEVICE_PROFILE_ID",
"appLayerParams": {
"ts003_version": "V300",
"ts004_version": "V300",
"ts005_version": "V300",
"ts003_f_port": 202,
"ts004_f_port": 201,
"ts005_f_port": 200
}
}
In the device profile API if you fill the verets003_version,ts004_version & ts005_version with the value of the variable V300 i.e greater than 2 then api throw successfull response and on the chirpstack UI,device profile is shown but you cannot have device profile ID and also you can't delete that profile, you have to delete the whole tenant.

Could you please update your question with how you are making this modification / where do you fill in these invalid versions? Are you using the REST API proxy for this? V300 is not a valid enum in the Protobuf definition, so I'm not sure how you manage that to write into the database.

2 Answers

Request Body (JSON):

"id": "DEVICE_PROFILE",
"name": "XYZ",
"description": "device profile",
"tenantId": "856e08ff-13c3-4c19-90ee-68e147f0a2d5",
"region": "IN865",
"macVersion": "Lorawan104",
"regParamsRevision": "Rp002103",
"supportsOtaa": true,
"uplinkInterval": 120,
"deviceStatusReqInterval": 1,
"flushQueueOnActivate": true,
"appLayerParams": {
"ts003_version": "V100",
"ts004_version": "V100",
"ts005_version": "V100",
"ts003_f_port": 202,
"ts004_f_port": 201,
"ts005_f_port": 200
}
iam using postman to send this rest API

In the device profile API if you fill the verets003_version,ts004_version & ts005_version with the value of the variable V300 i.e greater than 2 then api throw successfull response and on the chirpstack UI

Please note that the REST API is a bridge between the gRPC API and a REST client. In general, using gRPC is recommended as the requests and responses are typed. This means that using an incorrect value will be a type-error as V300 simply does not exist. This might be ignored in case of the REST API as it will discard, in which case the default value will be used.