The following symptoms related to APIMSGS DD might be observed in the started tasks spawned to service requests to Endevor Web Services, normally named WSEWSSTC:
These symptoms arise when the started task has allocated ddname APIMSGS outside Endevor, either via JCL or via dynamic allocation from an user exit like exit 05 (initialization exit) or user exit 07 (package exit) during the SETUP call at initialization
Abend S001-1 abend will arise if APIMSGS DD has been allocated to JES2, as in SYSOUT=*. This is because the started task tries to read the API messages written by the API to this DD in order to return them to the client.
Dataset contention will arise if APIMSGS DD has been allocated to a temporary dataset (as in DSN=&&APIMSGS) and two or more STCs start at the same second (for example, because the datasource been used defines STC pooling to start multiple tasks at once)
APIMSGS DD should not be allocated by the started task, neither in the JCL nor in any user exit. This way, Endevor will allocate it to disk using a dataset name which will be unique and will not raise dataset contentions when several tasks start at once.
If the DD is allocated by JCL, just remove or comment out the DD statement
If the DD is dynamically allocated, the user exit must skip the allocation when running in a Web Services spawned STC. The exit may check this point by examining the control blocks passed by Endevor:
Both fields contain the value 'W' when the exit is running in a Web Services spawned STC