RFP Installation REST API
Published: 2025-06-26
Last Updated: 2026-08-26
Perform the installation (application update) phase of MDCMS RFPs.
The request body is a JSON object of optional filters. MDCMS installs every RFP that matches those filters and meets the preconditions. Results are returned as a transaction ID plus a list of per-RFP messages.
Preconditions
An RFP is installed only when all of the following are true:
- Its application, level, RFP number, and impacted projects or tasks match the filter criteria in the request body.
- The submit, approve, and MDRapid phases for the RFP are complete so that installation is pending.
- The owner of the authentication token is authorized in MDSEC to run command
MDINSRFP.
JSON payloads
All MDCMS REST API request and response bodies use JSON. Send Content-Type: application/json.
Authorization
| Header | Type | Required | Description |
|---|---|---|---|
Authorization | string | Yes | Bearer token for the MDSEC user that performs the installation. See Authenticate requests to the MDCMS REST API server. |
Content-Type | string | Yes | application/json |
A missing or invalid token returns HTTP 401 Unauthorized.
Request body
All properties are optional. Omit a property to leave that filter unconstrained. Combine properties to narrow the candidate list.
Schema
| Property | Type | Required | Description |
|---|---|---|---|
appl | string | No | Restrict candidates to this MDCMS application. |
flvl | integer | No | Minimum application level that the RFP is targeting. |
tlvl | integer | No | Maximum application level that the RFP is targeting. |
frfp | integer | No | Minimum RFP number to include. |
trfp | integer | No | Maximum RFP number to include. |
pend | string | No | Which pending statuses to consider. See Pending RFPs. |
schdt | string | No | When pending RFPs are considered, only process those with a scheduled install date on or before this value. Format YYYYMMDD. If omitted, the current date is the maximum. |
proj | string | No | Include an RFP only if one or more of its objects are assigned to this project. |
task | integer | No | Include an RFP only if one or more of its objects are assigned to this project task. |
stsk | integer | No | Include an RFP only if one or more of its objects are assigned to this project subtask. |
pipeline | string | No | 10-character ID of a pipeline server defined in MDOpen. Used for downstream update messages to that server with the MDUPDPIPE command. |
traceKey | string | No | Unique key that identifies the pipeline build MDCMS should communicate with. Used for downstream update messages with the MDUPDPIPE command. |
user | string | No | User to register as the installer of the RFP. See Installer. |
Pending RFPs
| Value | Description |
|---|---|
*YES | RFPs in status 03 or IP are considered. |
*NO | Only RFPs in status 03 are considered. |
*ONLY | Only RFPs in status IP are considered. |
Installer
| Value | Description |
|---|---|
*APPROVER | The user registered as having approved the RFP for installation is also registered as the installer. |
*USER | The owner of the authentication token. |
| (user) | A valid user profile defined in MDSEC. |
Example
Install RFPs for an application, level, project, and task. Replace {endpoint} with the URL endpoint defined for the MDCMS HTTP server.
Response body
Schema
| Property | Type | Description |
|---|---|---|
transactionId | integer | Transaction ID for this API call. Installed RFPs for this ID are written to table MDCMS/MDDIRFP and can be queried in column MDTRN. |
transactions | array | List of transaction message objects, one per result message. |
Transaction object
Each element of transactions has the following properties. appl, lvl, and rfp are present when the message applies to a specific RFP.
| Property | Type | Description |
|---|---|---|
sev | integer | Result severity. See Severity. |
msg | string | Message text. |
appl | string | Application of the RFP. |
lvl | integer | Application level of the RFP. |
rfp | integer | RFP number. |
Severity
| Value | Meaning |
|---|---|
10 | Success |
20 | Warning |
30 | Error |
Example
{
"transactionId": "155",
"transactions": [
{
"appl": "TEST",
"lvl": "30",
"rfp": "1767",
"sev": "10",
"msg": "RFP TEST/1767 installed"
}
]
}
Related resources
| Resource | Description |
|---|---|
| RFP Approval REST API | Approve RFPs for installation |
| RFP Acceptance REST API | Update MDWorkflow test status after install |
| RFP Rollback REST API | Roll back an installed RFP |
| RFP Send REST API | Send RFPs to target locations |