I am currently using i-doit 1.18.2 OPEN and API 1.12.3.
In this setup, there are some API calls that fail and that used to work in my previous i-doit version. They are still working in the i-doit demo.
The API response includes the error: "The provided property is virtual and can not be updated via API. Please provide a valid definition."
I have not been able to find anything in the changelog that suggests why this may happen. I have not found any reference to virtual properties in the Knowledge Base either.
The API call that fails are the following.
- Creating 'C__CATS__FILE_VERSIONS' including 'file_content' property
{
"version": "2.0",
"method": "cmdb.category.save",
"params": {
"object": 3628,
"category": "C__CATS__FILE_VERSIONS",
"apikey": "XXXXX",
"language": "en",
"data": {
"file_title": "file.txt",
"file_physical": "file.txt",
"file_content":"VGhpcyBpcyBhIHRlc3QgZmlsZS4NClRoaXMgaXMgYSB0ZXN0IGZpbGUuDQpUaGlzIGlzIGEgdGVzdCBmaWxlLg0KVGhpcyBpcyBhIHRlc3QgZmlsZS4NClRoaXMgaXMgYSB0ZXN0IGZpbGUuDQpUaGlzIGlzIGEgdGVzdCBmaWxlLg=="
}
},
"id": 1
}
Error:
{
"id": 1,
"jsonrpc": "2.0",
"error": {
"code": -32603,
"message": "Internal error: There was an validation error",
"data": {
"file_content": "(The provided property is virtual and can not be updated via API. Please provide a valid definition.) "
}
}
}
- Creating C__CATG__NETWORK_PORT including 'addresses' property
{
"version": "2.0",
"method": "cmdb.category.save",
"params": {
"apikey": "XXXXX",
"language": "en",
"object": 1334,
"category": "C__CATG__NETWORK_PORT",
"data": {
"title": "eth0",
"port_type": "Ethernet",
"addresses": 209
}
},
"id": 1
}
Error:
{
"id": 1,
"jsonrpc": "2.0",
"error": {
"code": -32603,
"message": "Internal error: There was an validation error",
"data": {
"addresses": "(The provided property is virtual and can not be updated via API. Please provide a valid definition.) "
}
}
}