Expand my Community achievements bar.

SOLVED

Can we call an api using workflow in ACS?

Avatar

Level 4

Wondering if we can  call an api using workflow in ACS?

1 Accepted Solution

Avatar

Correct answer by
Level 10

Hi,

What Menno wrote is true for AC Classic.

For AC Standard, it is not possible for now. You can call a workflow from the rest API, but not the other way around.

Available APIs for AC Standard and how to use them are detailed in this document: https://docs.campaign.adobe.com/doc/standard/en/api/ACS_API.html 

Florent

View solution in original post

3 Replies

Avatar

Level 2

HI,

Yes, you can!

By using a javascript code from the action repository.

Basic code is like this:

var url = ''  // the URL to be called.

var http = new HttpClientRequest(url);

 

//use parameters below if login is requiered.

//http.header["UserName"] = strLogin;

//http.header["Password"] = strPwd;

//Set header type

http.header["Content-Type"] = "application/xml";

 

http.method = "GET";

http.execute();

//pull the response as text.

var httpResponse = http.response.body.toString()

//Process the response from here.

Please note that the  URL you want to connect to is probably not whitelisted....

This is because the default list of URLs that can be called by JavaScript codes (workflows, etc.) is limited (as a security meas.

ure) To allow a new URL, the administrator needs to reference a new urlPermission in the serverConf.xml file.

Kind regards,

Menno

Avatar

Correct answer by
Level 10

Hi,

What Menno wrote is true for AC Classic.

For AC Standard, it is not possible for now. You can call a workflow from the rest API, but not the other way around.

Available APIs for AC Standard and how to use them are detailed in this document: https://docs.campaign.adobe.com/doc/standard/en/api/ACS_API.html 

Florent

Avatar

Level 5

Is there a good example of how to store the results of the API GET call into a list or rec table? For practice I have just been calling the free weather api Weather API - OpenWeatherMap . I think I need to turn the results into an object, then begin to parse it?