Tiong Ghee
Tiong Ghee

Reputation: 11

Maximo REST API : MXAPIMeter Create Meter Failed

I tried to create Meter using HTTP POST olscmeter and mxapimeter.

My python code is

postReq = mxURL + "/maximo/oslc/os/oslcmeter"
headers = {'Content-type': 'application/json', 'maxauth' : maxAuth}
body = {'METERNAME' : meterName, 'METERTYPE' : meterType, 'DESCRIPTION' : description, 'READINGTYPE' : 'ACTUAL', 'MEASUREUNITID' : ''}

print(postReq, headers, body)
r = requests.post(url = postReq, headers = headers, json = body)
print(r.status_code, r.text)

And I kept encountering the under-mentioned error.

400

{"oslc:Error":
{"oslc:statusCode":"400",
"errorattrname":"metername",
"spi:reasonCode":"BMXAA4195E",
"errorobjpath":"meter",
"correlationid":null,
"oslc:message":"BMXAA4195E - A value is required for the Meter field on the METER object.",
"oslc:extendedError":{"oslc:moreInfo":{"rdf:resource":"http:\/\/mx7vm\/maximo\/oslc\/error\/messages\/BMXAA4195E"}
}
}
}

Any advice on what I have missed?

Upvotes: 1

Views: 704

Answers (1)

Daniel Jacobson
Daniel Jacobson

Reputation: 121

BMXAA4195E is just a generic error that means a required field is missing.

I have never generated MBOs this way, but I think the issue is that JSON keys are case sensitive. In all the examples I've seen online, the attributes in the body are always lowercase. This also makes sense with the error message.

Try using all lowercase keys in your body.

Upvotes: 1

Related Questions