Invoking external REST API from Campaign Workflow | Community
Skip to main content
Level 2
June 18, 2017
Solved

Invoking external REST API from Campaign Workflow

  • June 18, 2017
  • 8 replies
  • 14926 views

We have a requirement where we need to make an external API call from Campaign Workflow for initiating a third-party service. The external REST API is protected by OAuth 2.0. Can you please help suggest if there any OOTB activity that can used for this purpose, if not, then what possible options do we have? We are on Campaign V7.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by Amit_Kumar

Hi,

You have three options:

1. Use web download, if you are using rest call to dowwnla something to campaign server. Read more Web download.

2. Use JS to make the call example:

  • var http = new HttpClientRequest("https://...");
  •   http.header["UserName"] = strLogin;
  •   http.header["Password"] = strPwd;
  •   http.method = "GET"
  •   http.execute();
  •   var resp = http.response;

3. if you have a website server than make this rest as soap call and use Loading (SOAP).

Regards,

Amit

8 replies

Amit_Kumar
Amit_KumarAccepted solution
Level 10
June 19, 2017

Hi,

You have three options:

1. Use web download, if you are using rest call to dowwnla something to campaign server. Read more Web download.

2. Use JS to make the call example:

  • var http = new HttpClientRequest("https://...");
  •   http.header["UserName"] = strLogin;
  •   http.header["Password"] = strPwd;
  •   http.method = "GET"
  •   http.execute();
  •   var resp = http.response;

3. if you have a website server than make this rest as soap call and use Loading (SOAP).

Regards,

Amit

Level 2
June 19, 2017

Thank you Amit. This is exactly what I was looking for. Option 2 should work for us.

davidl14970702
Level 4
April 6, 2018

Did you get it working? Could you provide an example of how you parsed the response and saved/used it?

July 2, 2018

Hi Amit, I couldn't able to see any JS activity in Adobe Campaign Standard, please let us know how can I make external API call for Standard?

Adhiyan
Adobe Employee
Adobe Employee
July 2, 2018

Hi Harish,

For ACS , you need use a REST Client like Postman and then follow the documentation given here :

Adobe Campaign Standard API

Using this , you can make external REST calls using the Campaign standard APIs

Regards,
Adhiyan

July 3, 2018

Thanks Adhlyan for quick reply,

The above documentation giving info about how can we make a calls to ACS API's through REST. But my requirement is, Need to call third-party API's from ACS workflows. In Classic I used to call third-party API's through JS activity in workflow like as below JS snippet

  • var http = new HttpClientRequest("https://...");
  •   http.header["UserName"] = strLogin;
  •   http.header["Password"] = strPwd;
  •   http.method = "GET"
  •   http.execute();
  •   var resp = http.response;

In Standard am not able to see any JS activity. Is there any other approaches to call third-party API's from ACS workflows?

December 11, 2018

Hey Amit_Kumar​,

I have this use-case to call external API for every recipient in a campaign and use the response to personalise the email for them. Do you think Adobe Campaign can handle that? If we have, say 1m users in the target audience, would we be able to call the API 1m times without affecting overall performance?

Abi

Amit_Kumar
Level 10
December 11, 2018

No, Adobe is not designed to scale for API calls like this. imagine if you have 100 million users in your database in a year number of email will reach 2 billion. so you need 2 billion API calls. Adobe can not scale to such levels.

It's best to redesign the API to support Bulk operations or Change the approach.