Skip to content

Object Requests REST API

Published: 2026-08-31

Last Updated: 2026-09-01

List or delete object requests in MDCMS.

Method Path Description
GET /object-requests Return object requests. Optional query parameters further limit the list.
DELETE /object-requests Delete matching object requests. Optional flags also delete source or objects in the developer library and close empty RFPs.

JSON payloads

All MDCMS REST API response bodies use JSON.

Authorization

Header Type Required Description
Authorization string Yes Bearer token for the MDSEC user. See Authenticate requests to the MDCMS REST API server.

A missing or invalid token returns HTTP 401 Unauthorized.

GET

Return object requests in MDCMS. Optional query parameters further limit the list by request number, application, level, RFP, reason, status, create status, object type, attribute, object name, source name, user, Git repository, branch, or linked project, task, and subtask.

GET /object-requests

Query parameters

All parameters are optional. Omit all parameters to return every object request.

Parameter Type Required Description
objectId integer No Limit the list to this object request number.
appl string No Application code that contains the object requests to list.
lvl integer No Application level that contains the object requests to list.
rfp integer No Limit the list to this RFP number.
reason string No Limit the list to object requests with this reason. Allowed values: modify, delete, recompile, update.
status string No Limit the list to object requests with this status code.
createStatus string No Limit the list to object requests with this create status. Allowed values: created, error.
objectType string No Limit the list to this object type.
attr string No Limit the list to this MDCMS attribute.
objectName string No Substring to match against the object name. Any request whose object name contains this value is returned. Matching is case-insensitive.
sourceName string No Substring to match against the source name. Any request whose source name contains this value is returned. Matching is case-insensitive.
user string No Limit the list to object requests assigned to this user.
repoId string No Limit the list to object requests for this Git repository ID.
branch string No Limit the list to object requests for this Git branch.
project string No Limit the list to object requests linked to this project.
task integer No Limit the list to object requests linked to this task.
subtask integer No Limit the list to object requests linked to this subtask.

project, task, and subtask can be combined. When any of them is supplied, only object requests with a matching project/task/subtask assignment are returned. Each matching request still includes every project/task/subtask assignment in the tasks array.

Example

Replace {endpoint} with the URL endpoint defined for the MDCMS HTTP server.

curl -H "Authorization: Bearer {token}" \
  "https://{endpoint}/object-requests?appl=TEST&lvl=10&reason=modify&objectName=MDWS&project=DEMO044"
GET /object-requests?appl=TEST&lvl=10&reason=modify&objectName=MDWS&project=DEMO044 HTTP/1.1
Host: {endpoint}
Authorization: Bearer {token}

Response body

Schema

Property Type Description
objectRequests array List of object request objects.

Object request object

Property Type Description
objectId integer Object request number.
appl string Application code.
lvl integer Application level.
rfp integer RFP number. 0 if the request is not assigned to an RFP.
reason string Reason for the request. One of modify, delete, recompile, or update.
status string Object request status code.
createStatus string Create status. One of created or error. Empty when neither applies.
objectType string Object type.
attr string MDCMS attribute.
objectName string Object name.
sourceName string Source member or source file name.
user string User assigned to the object request.
repoId string Git repository ID, when the request is linked to Git.
branch string Git branch, when the request is linked to Git.
fromObjectLibrary string Library or IFS path that contains the object.
fromSourceLibrary string Library or IFS path that contains the source.
fromSourceFile string Source file that contains the source member.
tasks array List of task assignments for the request.

Task object

Property Type Description
project string Project ID.
task integer Task number. 0 when the request is assigned directly to the project.
subtask integer Subtask number. 0 when the request is assigned directly to the project or task.

Example

{
  "objectRequests": [
    {
      "objectId": 45281,
      "appl": "TEST",
      "lvl": 10,
      "rfp": 1340,
      "reason": "modify",
      "status": "00",
      "createStatus": "created",
      "objectType": "*PGM",
      "attr": "SQLRPGLE",
      "objectName": "MDWSREQS",
      "sourceName": "MDWSREQS",
      "user": "MMORGAN",
      "repoId": "MDCMS",
      "branch": "V8.6-83",
      "fromObjectLibrary": "MMORGAN13",
      "fromSourceLibrary": "MMORGAN13",
      "fromSourceFile": "QRPGLESRC",
      "tasks": [
        {
          "project": "DEMO044",
          "task": 2,
          "subtask": 3
        }
      ]
    },
    {
      "objectId": 45290,
      "appl": "TEST",
      "lvl": 10,
      "rfp": 0,
      "reason": "recompile",
      "status": "00",
      "createStatus": "",
      "objectType": "*FILE",
      "attr": "PF",
      "objectName": "MDDCMSD",
      "sourceName": "MDDCMSD",
      "user": "MMORGAN",
      "repoId": "",
      "branch": "",
      "fromObjectLibrary": "MMORGAN13",
      "fromSourceLibrary": "MMORGAN13",
      "fromSourceFile": "QDDSSRC",
      "tasks": [
        {
          "project": "DEMO044",
          "task": 2,
          "subtask": 0
        },
        {
          "project": "DEMOCH",
          "task": 1,
          "subtask": 0
        }
      ]
    }
  ]
}

When no matching object requests are found, the API returns HTTP 221 with message No object requests found.

DELETE

Delete object requests that match the query parameters. Each matching request is returned with flags that show whether the request, source, and object were deleted.

A request is deleted only when its status is 00 or 01. If the request is assigned to an RFP, that RFP must be in status 00, 01, or SE.

The owner of the authentication token must be authorized in MDSEC for the request's application and level: code 38 to delete a request they own, or code 31 to delete a request owned by another user. Requests that fail these checks are left in place and reported in the response with requestDeleted set to false.

DELETE /object-requests

Query parameters

Each parameter is optional, but the request must include at least one of these combinations:

  • objectId greater than 0
  • rfp greater than 0
  • appl, lvl greater than 0, and user
  • project and task greater than 0

If none of those combinations is present, the API returns HTTP 400 Bad Request.

When more than one parameter is supplied, they are combined. For example, objectId with appl deletes the request only if it also belongs to that application.

Parameter Type Required Description
objectId integer No Delete this object request number.
appl string No Application code of the object requests to delete.
lvl integer No Application level of the object requests to delete.
rfp integer No Delete object requests assigned to this RFP number.
user string No Delete object requests assigned to this user.
project string No Delete object requests linked to this project.
task integer No Delete object requests linked to this task.
subtask integer No Delete object requests linked to this subtask.
deleteSource boolean No When true, also delete the source from the developer library if it exists and that library is not managed by MDCMS. Default false.
deleteObjects boolean No When true, also delete the object from the developer library if it exists and that library is not managed by MDCMS. Default false.
closeEmptyRfps boolean No When true, close an RFP (status 09) if the last object request is removed from it while the RFP is in status 01. When false, an emptied RFP in status 01 is returned to status 00. Default false.

Boolean parameters accept true, yes, y, or 1. Matching is case-insensitive. Any other value, including omitting the parameter, is treated as false.

project, task, and subtask can be combined. When any of them is supplied, only object requests with a matching project/task/subtask assignment are deleted.

Source and object in the developer library are not deleted for every request. For example, they are left in place for delete and update reasons, for *DTAGRP, *DUMMY, and *PIPE objects, and when the request was generated from another level. The sourceDeleted and objectDeleted flags in the response show what actually occurred.

Example

Delete the object requests assigned to an RFP, and delete matching source and objects from the developer libraries. Replace {endpoint} with the URL endpoint defined for the MDCMS HTTP server.

curl -X DELETE \
  -H "Authorization: Bearer {token}" \
  "https://{endpoint}/object-requests?rfp=1340&deleteSource=true&deleteObjects=true&closeEmptyRfps=true"
DELETE /object-requests?rfp=1340&deleteSource=true&deleteObjects=true&closeEmptyRfps=true HTTP/1.1
Host: {endpoint}
Authorization: Bearer {token}

Response body

The response is HTTP 200 even when some matching requests are not deleted. Inspect requestDeleted and errorMessage for each item. When no requests match the filters, objectRequests is an empty array.

Schema

Property Type Description
objectRequests array List of deleted object request objects.

Deleted object request object

Property Type Description
objectId integer Object request number.
objectName string Object name.
attr string MDCMS attribute.
requestDeleted boolean Whether the object request was deleted.
sourceDeleted boolean Whether the source was deleted from the developer library.
objectDeleted boolean Whether the object was deleted from the developer library.
errorMessage string Reason the request was not deleted. Empty when the request was deleted.

Error messages

errorMessage Description
Object Request not found No object request exists for the returned objectId.
Object Request not in valid Status for Deletion The request status is not 00 or 01.
RFP not in valid Status for Deletion The request is assigned to an RFP whose status is not 00, 01, or SE.
Not authorized to delete request The token user lacks MDSEC code 38 (own request) or 31 (another user's request) for the application and level.

Example

{
  "objectRequests": [
    {
      "objectId": 45281,
      "objectName": "MDWSREQS",
      "attr": "SQLRPGLE",
      "requestDeleted": true,
      "sourceDeleted": true,
      "objectDeleted": true,
      "errorMessage": ""
    },
    {
      "objectId": 45290,
      "objectName": "MDDCMSD",
      "attr": "PF",
      "requestDeleted": false,
      "sourceDeleted": false,
      "objectDeleted": false,
      "errorMessage": "Object Request not in valid Status for Deletion"
    }
  ]
}
Resource Description
Object Request REST API Create or update an object request
Open RFPs REST API List active RFPs
Attributes REST API List attributes for an application and level
Git Repositories REST API List Git repositories defined in MDCMS
Open Projects REST API List active projects
Open Tasks REST API List active tasks for a project
Open Subtasks REST API List active subtasks for a project and task