Process Schedules object
The Process Schedules object represents the run schedules for a deployed process.
The platform creates the Process Schedules object for every deployed process by default. Initially, the object is empty, and a run schedule is not in effect.
Structure
<ProcessSchedules id="" atomId="" processId="">
<Schedule years="" months="" daysOfMonth="" daysOfWeek="" hours="" minutes=""/>
.
.
.
<Schedule years="" months="" daysOfMonth="" daysOfWeek="" hours="" minutes=""/>
<Retry maxRetry="">
<Schedule years="" months="" daysOfMonth="" daysOfWeek="" hours="" minutes=""/>
.
.
.
<Schedule years="" months="" daysOfMonth="" daysOfWeek="" hours="" minutes=""/>
</Retry>
</ProcessSchedules>
| Field | Type | Description |
|---|---|---|
| Filter | Filter | Filter |
| id | string | The object’s conceptual ID, which is synthesized from the process and Runtime IDs. |
| atomId | string | A unique ID assigned by the system to the Runtime. |
| processId | string | A unique ID assigned by the system to the process. Must not be a listener process. |
| years | string | The standard year format. In most cases this is set to an asterisk [*]. |
| months | string | 1 is January and 12 is December. In most cases this is set to an asterisk [*]. |
| daysOfMonth | string | 1 is the first day of the month and 31 is the last day of the month. |
| daysOfWeek | string | 1 is Sunday and 7 is Saturday. |
| hours | string | Uses a 24-hour clock. 0 is midnight and 12 is noon. |
| minutes | string | 0 is the first minute of the hour — for example, 1:00 A.M.59 is the last minute of the hour — for example, 1:59 A.M. |
| maxRetry | int | (Retry schedules only) The maximum number of retries. The minimum valid value is 1; the maximum is 5. |
The fields used to specify run times conform with the Advanced (cron) syntax supported in the Scheduling dialog in the user interface at Manage > Runtime Management.
In schedule fields, an asterisk [*] indicates that the schedule runs every minute, hour, day of the week, day of the month, month, or year. Use hyphens to specify ranges of values, and use commas as delimiters between values and ranges. The time specification of a range — whether it be a range of years, months, days of the month or week, hours, or minutes — can optionally be followed by a slash and an interval of that unit of time. For example:
-
In the minutes field, a value of 0-59/15, specifies 0, 15, 30, and 45 minutes after the hour.
-
In the daysOfMonth field, a value of 3-30/3 specifies every third day beginning with the third day of the month.
Supported operations
| GET | QUERY | CREATE | UPDATE | EXECUTE | DELETE |
|---|---|---|---|---|---|
| Supported | Supported | Not supported | Supported | Not supported | Not supported |
Using the GET operation
The ordinary GET operation retrieves the Process Schedules object with a specific conceptual ID. The bulk GET operation retrieves the Process Schedules objects with specific conceptual IDs to a maximum of 100. In addition, you can obtain conceptual IDs from the QUERY operation.
Using the QUERY operation
You can use the following fields as QUERY filters for the Process Schedules object:
| Field | Allowed values |
|---|---|
| atomId | Any string value. |
| processId | Any string value. |
The operators allowed for the Process Schedules object filters are:
-
BETWEEN
-
EQUALS
-
GREATER_THAN
-
GREATER_THAN_OR_EQUAL
-
IS_NOT_NULL
-
IS_NULL
-
LESS_THAN
-
LESS_THAN_OR_EQUAL
-
LIKE
-
NOT_EQUALS
Using the UPDATE operation
The UPDATE operation clears and updates the process run schedules specified in the Process Schedules object with a specific ID. The body of the request must specify not only the conceptual object ID but also the Atom and process IDs. You can obtain the object ID from a QUERY operation.
A Process Schedules object exists for every deployed process. If you do not update the schedule, the object is empty and a run schedule is not in effect.
Note: Listener processes cannot be scheduled. If a listener process is referenced, the call will fail with a 400 status code.
You must have the Runtime Management privilege and the Scheduling privilege to perform the UPDATE operation. If you have the Runtime Management Read Access privilege, you cannot update process run schedules.
Note: After you update run schedules for a process on a Runtime, those schedules appear in the Scheduling dialog using the Advanced (cron) syntax.
You can additionally employ a Bulk UPDATE operation for the Process Schedules object. See related links for more information about performing a Bulk UPDATE operation.
SOAP implementation
-
GET operation
Request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:api="http://api.platform.boomi.com/">
<soapenv:Header>
<wsse:Security
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken wsu:Id="UsernameToken" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:Username>ATOMSPHERE_USER_NAME</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">ATOMSPHERE_PASSWORD</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<api:get>
<api:objectType>ProcessSchedules</api:objectType>
<api:objectId>Ab0Cd1Ef1Gh3Ij4Kl5Mn6Op7Qr8St9Uv0Wx9Yz8Zy7Xw6Vu5Ts4Rq3Po2Nm1Lk0Ji1Hg</api:objectId>
</api:get>
</soapenv:Body>
</soapenv:Envelope>Response:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<bns:getResponse xmlns:bns="http://api.platform.boomi.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<bns:result xsi:type="bns:ProcessSchedules" id="Ab0Cd1Ef1Gh3Ij4Kl5Mn6Op7Qr8St9Uv0Wx9Yz8Zy7Xw6Vu5Ts4Rq3Po2Nm1Lk0Ji1Hg"
atomId="3456789a-bcde-f0123-4567-89abcdef012" processId="789abcde-f012-3456-789a-bcdef0123456">
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="2,3,4,5,6" hours="8-18" minutes="0-59/15"/>
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="1" hours="19-23" minutes="0-59/15"/>
<bns:Retry maxRetry="5">
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="7" hours="19-23" minutes="0-10/5"/>
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="2,3,4,5,6" hours="8-18" minutes="0-59/20"/>
</bns:Retry>
</bns:result>
</bns:getResponse>
</S:Body>
</S:Envelope> -
QUERY operation
The following example query returns run schedules for the process with ID 789abcde-f012-3456-789a-bcdef0123456 deployed to the Atom with ID 3456789a-bcde-f0123-4567-89abcdef012.
Request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:api="http://api.platform.boomi.com/">
<soapenv:Header>
<wsse:Security
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken wsu:Id="UsernameToken" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:Username>ATOMSPHERE_USER_NAME</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">ATOMSPHERE_PASSWORD</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<api:query>
<api:objectType>ProcessSchedules</api:objectType>
<api:queryConfig>
<api:QueryFilter>
<api:expression operator="and" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="api:GroupingExpression">
<api:nestedExpression operator="EQUALS" property="atomId" xsi:type="api:SimpleExpression">
<api:argument>3456789a-bcde-f0123-4567-89abcdef012</api:argument>
</api:nestedExpression>
<api:nestedExpression operator="EQUALS" property="processId" xsi:type="api:SimpleExpression">
<api:argument>789abcde-f012-3456-789a-bcdef0123456</api:argument>
</api:nestedExpression>
</api:expression>
</api:QueryFilter>
</api:queryConfig>
</api:query>
</soapenv:Body>
</soapenv:Envelope>Response:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<bns:queryResponse xmlns:bns="http://api.platform.boomi.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<bns:results numberOfResults="1">
<bns:result xsi:type="bns:ProcessSchedules" id="Ab0Cd1Ef1Gh3Ij4Kl5Mn6Op7Qr8St9Uv0Wx9Yz8Zy7Xw6Vu5Ts4Rq3Po2Nm1Lk0Ji1Hg"
atomId="3456789a-bcde-f0123-4567-89abcdef012" processId="789abcde-f012-3456-789a-bcdef0123456">
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="2,3,4,5,6" hours="8-18" minutes="0-59/15"/>
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="1" hours="19-23" minutes="0-59/15"/>
<bns:Retry maxRetry="5">
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="7" hours="19-23" minutes="0-10/5"/>
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="2,3,4,5,6" hours="8-18" minutes="0-59/20"/>
</bns:Retry>
</bns:result>
</bns:results>
</bns:queryResponse>
</S:Body>
</S:Envelope> -
UPDATE operation
Request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:api="http://api.platform.boomi.com/">
<soapenv:Header>
<wsse:Security
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken wsu:Id="UsernameToken" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:Username>ATOMSPHERE_USER_NAME</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">ATOMSPHERE_PASSWORD</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<api:update>
<object xsi:type="api:ProcessSchedules" id="Ab0Cd1Ef1Gh3Ij4Kl5Mn6Op7Qr8St9Uv0Wx9Yz8Zy7Xw6Vu5Ts4Rq3Po2Nm1Lk0Ji1Hg"
atomId="3456789a-bcde-f0123-4567-89abcdef012" processId="789abcde-f012-3456-789a-bcdef0123456"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<api:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="2,3,4,5,6" hours="8-18" minutes="0-59/15"/>
<api:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="1" hours="19-23" minutes="0-59/15"/>
<api:Retry maxRetry="5">
<api:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="7" hours="19-23" minutes="0-10/5"/>
<api:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="2,3,4,5,6" hours="8-18" minutes="0-59/20"/>
</api:Retry>>
</object>
</api:update>
</soapenv:Body>
</soapenv:Envelope>Response:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<bns:updateResponse xmlns:bns="http://api.platform.boomi.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<bns:result xsi:type="bns:ProcessSchedules" id="Ab0Cd1Ef1Gh3Ij4Kl5Mn6Op7Qr8St9Uv0Wx9Yz8Zy7Xw6Vu5Ts4Rq3Po2Nm1Lk0Ji1Hg"
atomId="3456789a-bcde-f0123-4567-89abcdef012" processId="789abcde-f012-3456-789a-bcdef0123456">
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="2,3,4,5,6" hours="8-18" minutes="0-59/15"/>
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="1" hours="19-23" minutes="0-59/15"/>
<bns:Retry maxRetry="5">
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="7" hours="19-23" minutes="0-10/5"/>
<bns:Schedule years="*" months="*" daysOfMonth="*" daysOfWeek="2,3,4,5,6" hours="8-18" minutes="0-59/20"/>
</bns:Retry>
</bns:result>
</bns:updateResponse>
</S:Body>
</S:Envelope>