2
votes

We've got a problem with IBM Domino REST API and document's fields starting with dollar sign ($).

IBM Domino has fields starting with $ and these fields are system's fields. When we send GET or POST request with these fields, they don't fill up as expected.

Other fields fill up just fine.

We think REST API is blocking these fields. Is it true or our misunderstanding?

How can we fill these fields without writing the code in Lotus?

For example, we send:

 'Prefix' => '03-1/35',
 'Author_resolution' => '[pcho_P_admin]',
 '$OSN_Eventcode' => 'ctrl_rezolucia_00_00',
 '\$OSN_Eventcode' => 'ctrl_rezolucia_00_00'

And after request the object has next fields:

 'Prefix' => '03-1/35',
 'Author_resolution' => '[pcho_P_admin]',
 '$OSN_Eventcode' => '',
 '\$OSN_Eventcode' => 'ctrl_rezolucia_00_00'

The field $OSN_Eventcode is unfillable.

1
Please add relevant source code to your questionPer Henrik Lausten
This is a request's data. No matter how I send it.AxelPAL
> fields starting with $ and these fields are system's fields - so don't try to fill system fields and don't use $ prefix for your fields. I think the way it works was the simplest solution to not mess with system fields in REST API implementationFrantisek Kossuth
But we have to fill them 'cause the system daemon watches on these fields. If they are empty - they will be skipped.AxelPAL
What is "system daemon", exactly?Frantisek Kossuth

1 Answers

2
votes

As Frantisek Kossuth said in a comment, your application shouldn't prefix item names with '$'. By convention '$' is reserved for the names of system items updated only by Notes and Domino. This includes $Ref, $UpdatedBy, $MessageID, $TUA and many other item names. For simplicity, the Domino REST data service doesn't let you directly update any item whose name begins with '$'.