Adobe credentials for standalone actions execution | Community
Skip to main content
Urs_Boller
Community Advisor
Community Advisor
August 25, 2020
Solved

Adobe credentials for standalone actions execution

  • August 25, 2020
  • 1 reply
  • 1930 views

We successfully implemented a Firefly App that fetches data from an external API and writes data into Adobe Analytics (using the old API 1.4). This works perfekt since the action can use the UI-User credentials (read from params) like this:

const resHeaders = { "authorization": params.__ow_headers["authorization"], "x-api-key": params.__ow_headers["x-api-key"], "w-gw-ims-org-id": params.__ow_headers["w-gw-ims-org-id"], "x-api-key": params.__ow_headers["x-api-key"] }

 but where does the action gets the credentials if there is no UI providing the params? what "user/key" does it have to execute requests against Analytics API? or can I somewhere add credentials to manually set the desired values?
Thanks a lot for the support!

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 duynguyen_adobe

Hi @urs_boller , first of all it would be good to identify whether your app is an SPA or headless, as described in the Security Overview . I assume you have the `require-adobe-auth` flag set to true for your actions.

If it is an SPA, the user token must be passed from the Adobe Experience Cloud (ExC) Shell, specific to the user session you are logged in.

If it is a headless app, you need to pass a service token which is obtained with the JWT auth flow.

You could also use a user token in a headless app to call the backend services, as long as it has valid authorization and scopes. However, you can not use a service token to call backend services of an SPA, because the session has to be tied to a specific user.

Please let me know if something needs further clarification.

1 reply

duynguyen_adobeAdobe EmployeeAccepted solution
Adobe Employee
August 25, 2020

Hi @urs_boller , first of all it would be good to identify whether your app is an SPA or headless, as described in the Security Overview . I assume you have the `require-adobe-auth` flag set to true for your actions.

If it is an SPA, the user token must be passed from the Adobe Experience Cloud (ExC) Shell, specific to the user session you are logged in.

If it is a headless app, you need to pass a service token which is obtained with the JWT auth flow.

You could also use a user token in a headless app to call the backend services, as long as it has valid authorization and scopes. However, you can not use a service token to call backend services of an SPA, because the session has to be tied to a specific user.

Please let me know if something needs further clarification.

Urs_Boller
Community Advisor
Community Advisor
August 25, 2020

Hi @duynguyen_adobe thanks for the details.

Yes, action is secured and I am able to hand over credentials within the SPA, action gets executed successfully using my login credentials.
but in the end, we want the action to run as headless (scheduled execution), where there is no login. Do you have any example for "pass a service token which is obtained with the JWT auth flow" in the Firefly environment?