Skip to content

Object Creation REST API

Published: 2026-10-08

Last Updated: 2026-10-08

Create development objects for one object request, or for the objects in an RFP, and retrieve the status of that creation.

Creation is submitted to batch. The POST response returns a log id with status pending. Use GET with that log id to poll until the creation is complete.

Method Path Description
POST /object-creation Submit creation of development objects.
GET /object-creation Return the status of a creation request.

JSON payloads

All MDCMS REST API request and response bodies use JSON. Send Content-Type: application/json on POST.

Authorization

Header Type Required Description
Authorization string Yes Bearer token for the MDSEC user that creates the objects. See Authenticate requests to the MDCMS REST API server.
Content-Type string Yes application/json. Required on POST.

A missing or invalid token returns HTTP 401 Unauthorized.

POST

Submit creation of the development objects for one object request, or for an RFP. The request returns as soon as the job is submitted.

POST /object-creation

When objectId is greater than zero, that object request is created. Otherwise the objects in the application and RFP are created.

Request body

Schema

Property Type Required Description
objectId integer No Object request number to create. Required when appl and rfp are not both supplied.
appl string No Application code of the RFP. Required, and must be non-blank, when objectId is omitted or zero.
rfp integer No RFP number. Required, and must be greater than zero, when objectId is omitted or zero.
fromFirstMissing string No *YES or *NO. See fromFirstMissing. Defaults to *NO.
stopWhenError string No *YES or *NO. See stopWhenError. Defaults to *NO.

Either objectId must be greater than zero, or appl must be non-blank and rfp must be greater than zero. If neither is true, the API returns HTTP 400 with the message Either objectId must be > 0, or appl must be non-blank and rfp must be > 0.

fromFirstMissing and stopWhenError are case-insensitive. Omit a flag, or leave it blank, to use the default *NO. Any other value returns HTTP 400 with the message {property} must be *YES or *NO.

A missing request body returns HTTP 400 with the message Request Body missing. A body that is not valid JSON returns HTTP 400.

fromFirstMissing

Value Description
*YES Skip objects that already exist until the first object that does not exist. Creation continues from that object. Skipped objects are ignored.
*NO Start at the first object, including objects that already exist. This is the default.

stopWhenError

Value Description
*YES Stop creating further objects after an object whose create status is Error.
*NO Continue creating objects after an error. This is the default.

Example

Create the objects in an RFP, starting at the first missing object and stopping if an object fails. Replace {endpoint} with the URL endpoint defined for the MDCMS HTTP server.

{
  "appl": "TEST",
  "rfp": 1769,
  "fromFirstMissing": "*YES",
  "stopWhenError": "*YES"
}
curl -X POST "https://{endpoint}/object-creation" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{"appl":"TEST","rfp":1769,"fromFirstMissing":"*YES","stopWhenError":"*YES"}'
POST /object-creation HTTP/1.1
Host: {endpoint}
Authorization: Bearer {token}
Content-Type: application/json

{
  "appl": "TEST",
  "rfp": 1769,
  "fromFirstMissing": "*YES",
  "stopWhenError": "*YES"
}

Response body

A successful submit returns HTTP 200. The body contains the log id and status pending. It does not contain the objects. Poll GET with logId for the result.

If MDCMS cannot create the log or submit the job, the API returns HTTP 500.

Schema

Property Type Description
logId integer Log id for this creation request. Pass this value to GET.
status string pending. The creation job has been submitted.

Example

{
  "logId": 45821,
  "status": "pending"
}

GET

Return the status of a creation request.

GET /object-creation

Query parameters

Parameter Type Required Description
logId integer Yes Log id returned by POST. Must be greater than zero.

If logId is omitted, the API returns HTTP 400 with the message Mandatory query parameter: "logId". If it is not greater than zero, the API returns HTTP 400 with the message logId must be > 0.

If no creation log exists for logId, the API returns HTTP 404 with the message Object creation log {logId} not found.

Example

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

curl -H "Authorization: Bearer {token}" \
  "https://{endpoint}/object-creation?logId=45821"
GET /object-creation?logId=45821 HTTP/1.1
Host: {endpoint}
Authorization: Bearer {token}

Response body

Schema

Property Type Description
logId integer Log id from the request.
status string Creation status. See Status.
job string Qualified job name, number/user/name. Present when status is running or abnormal-jobend.
objects array List of created object results. Present when status is complete.

Status

status HTTP Description
pending 200 The job is still on the job queue, and it was submitted less than 10 minutes ago.
jobq-timeout 220 The job has not been release to the subsystem used for MDOpen jobs, and it was submitted 10 minutes ago or longer.
running 200 The creation job is active. The response includes job.
abnormal-jobend 220 Creation started, but the job is no longer active. The response includes job.
complete 200 Creation has finished. The response includes objects. Inspect each object's createStatus.

HTTP 220 responses still include the JSON body. HTTP 400, 404, and 500 return the standard MDCMS error response.

Created object

Property Type Description
objectId integer Object request number.
objectName string Object name.
attr string MDCMS attribute.
createStatus string Result for this object. One of Created, Warning, Error, or Ignored.
spoolFound boolean true when a spool file was found for the create. Otherwise false. When true, retrieve the listing with the Object Creation Spool File REST API.
ignoreReason string Reason the object was ignored. Empty unless createStatus is Ignored.

Objects are returned in compile sequence.

Example — pending

{
  "logId": 45821,
  "status": "pending"
}

Example — complete

{
  "logId": 45821,
  "status": "complete",
  "objects": [
    {
      "objectId": 45290,
      "objectName": "MDDCMSD",
      "attr": "PF",
      "createStatus": "Ignored",
      "spoolFound": false,
      "ignoreReason": "Object exists and first non-exist not reached yet"
    },
    {
      "objectId": 45281,
      "objectName": "MDWSREQS",
      "attr": "SQLRPGLE",
      "createStatus": "Created",
      "spoolFound": true,
      "ignoreReason": ""
    },    
    {
      "objectId": 45302,
      "objectName": "MDCCRFP",
      "attr": "CBLLE",
      "createStatus": "Error",
      "spoolFound": true,
      "ignoreReason": ""
    }
  ]
}
Resource Description
Object Creation Spool File REST API Download the spool file for an object request
Object Request REST API Add or update an object request
Object Requests REST API List or delete object requests
Open RFPs REST API List active RFPs for an application and level
RFP Submission REST API Submit RFPs for verification and compile