RFP Submission REST API
Published: 2025-06-26
Perform the initial submit (verification and compile) phase of MDCMS RFPs.
The request body is a JSON object of optional filters. MDCMS submits 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 submitted 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.
- Its status is currently 01 – Requests Assigned or SP – Submission Pending.
- The owner of the authentication token is authorized in MDSEC to run command
MDSBMRFP.
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 submission. 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 submit 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 submitter of the RFP. See Submitter. |
Pending RFPs
| Value | Description |
|---|---|
*YES | RFPs in status 01 or SP are considered. |
*NO | Only RFPs in status 01 are considered. |
*ONLY | Only RFPs in status SP are considered. |
Submitter
| Value | Description |
|---|---|
*CREATOR | The user that owns the RFP is also registered as the submitter. |
*USER | The owner of the authentication token. |
| (user) | A valid user profile defined in MDSEC. |
Example
Submit 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. Submitted RFPs for this ID are written to table MDCMS/MDDSRFP 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": "163",
"transactions": [
{
"appl": "TEST",
"lvl": "30",
"rfp": "1769",
"sev": "10",
"msg": "RFP TEST/1769 submitted"
}
]
}
Related resources
| Resource | Description |
|---|---|
| Open RFPs REST API | List active RFPs for an application and level |
| RFP Approval REST API | Approve RFPs for installation |
| RFP Installation REST API | Install approved RFPs |