I am still currently exploring in APIM. I have a payload in payload #1, which I want to transform into another payload # 2(expected).
How would I edit my policy to construct this pay load?
Payload 1
{
"dependtee_name": "Steve",
"depdentee_last_name": "Rogers",
"dependtee_comment" : "This is test",
"file": "file.txt",
"file_type": "text file",
"insurer_name": "Steve",
"insurer_last_name": "Rogers",
"insurer_comment" : "This is test",
"extra_info": "This is comments"
}
Payload 2 - Expected
{
"dependtee_info": {
"name": "Steve",
"last_name": "Rogers"
},
"file_details": {
"all_file": [ "file.txt", "null" ],
"fileFormat": "text file"
},
"insurer_info": {
"i_name": "Tony",
"i_last_name": "Stark"
},
"extra_info": "This is comments"
}
Current Code
<policies>
<inbound>
<base />
<return-response>
<set-status code="200" reason="ok" />
<set-header name="Content-Type" exists-action="override">
<value>application/json</value>
</set-header>
<set-body>@{
var body = context.Request.Body.As<JObject>(true);
var transformedBody = new JObject();
transformedBody["extra_info"] = body["extra_info"];
var dependentee= new JObject();
dependetee["name"] = body["dependtee_name"];
dependentee["lastName"] = body["depdentee_last_name"];
transformedBody["dependtee_info"] = dependentee;
var file_details = new JObject();
dependentee["all_file"] = body["file"];
dependentee["fileFormat"] = body["file_type"];
transformedBody["file_details"] = file_details;
var insurer_info = new JObject();
dependetee["i_name"] = body["insurer_name"];
dependentee["i_last_name"] = body["insurer_last_name"];
transformedBody["insurer_info"] = insurer_info;
return transformedBody.ToString();
}</set-body>
</return-response>
</inbound>
<backend>
<base />
</backend>
<outbound>
<base />
</outbound>
<on-error>
<base />
</on-error>
</policies>
Looking to change the body specifically for the file.
I want to know how I can add those square brackets in my expected payload.
Payload 2 should have more than one value for key "all_file", but I want to be able to get it from Payload 1.
Thank you for your help
