2 weeks ago - last edited 2 weeks ago
Hi Community,
I'm working with SAP Cloud Transport Management (TMS) and looking to upload .mtaext files to specific nodes (e.g., QA, PROD) after the corresponding .mtar file has been uploaded and transported.
While exploring the Project "Piper" source code, I came across a method UploadMtaExtDescriptorToNode, which sends a POST request to the following endpoint:
/v2/nodes/{nodeId}/mtaExtDescriptors
It posts a .mtaext file via multipart/form-data, along with mtaVersion and description fields. I tried using this endpoint directly via Postman, but it resulted in an exception (500 Internal Server Error). I also noticed that this endpoint is not documented in the SAP Business Accelerator Hub, which makes it unclear whether this API is supported or deprecated.
My question:
Is there any recommended way to upload .mtaext files via API after .mtar has been uploaded and transported?
Any guidance would be appreciated. Thank you!
Request clarification before answering.
Hi Mio,
If API endpoint /v2/nodes/{nodeId}/mtaExtDescriptors is not exposed via the API Hub direct use is actually not supported - However, since the the API is kind of "public" via the piper library, it makes sense to document the usage also via the API Hub.I will talk to the developers and ask them to adjust this.
As you can see in piper, the API parameters you should send are "nodeId" (int), file as formData, "tms-named-user" (string), "mtaVersion" (string), "description" (string).
In addition to Project Piper, MTA descriptors (.mtaext files) can be uploaded at any time through the Cloud Transport Management UI. You will need the TransportOperator role to do this. You can upload the corresponding files via the "MTA Extension Descriptors" option of the import queue of a transport node that handles the MTA content type:
Related info: https://help.sap.com/docs/cloud-transport-management/sap-cloud-transport-management/upload-mta-exten...
Hope this helps,
Sven
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thank you very much for your quick reply! I have reviewed my request and corrected it as below, and It worked!
### Upload mtaext
@nodeid=4
POST {{apiUrl}}/v2/nodes/{{nodeid}}/mtaExtDescriptors
Authorization: Bearer {{TokenRequest.response.body.access_token}}
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarymtaextupload
tms-named-user: MioYasutake
------WebKitFormBoundarymtaextupload
Content-Disposition: form-data; name="file"; filename="prod.mtaext"
Content-Type: application/octet-stream
< ./prod.mtaext
------WebKitFormBoundarymtaextupload
Content-Disposition: form-data; name="mtaVersion"
1.0.0
------WebKitFormBoundarymtaextupload
Content-Disposition: form-data; name="description"
Extension file for production
------WebKitFormBoundarymtaextupload--
User | Count |
---|---|
39 | |
15 | |
9 | |
7 | |
6 | |
5 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.