Session Models and object IDs explains that object IDs must be retrieved from and sent in SOAP headers for methods on the following Open Client objects:
Each client toolkit provides different means to access SOAP headers. In some environments, such as Microsoft .NET, the interface automatically moves information from the response header to subsequent request headers within the same object. You do have to do a little work to move the information between objects (for example, copying a ProcObject ID from the AppObject that creates a ProcObject to the ProcObject itself). In other environments, you are responsible for extracting the information from the response header and sending it in the SOAP headers for subsequent requests.