Expand my Community achievements bar.

Example for UserSyncTool using OAuth-Server-to-Server with existing AccessToken and new one

Avatar

Level 1
Level 1

Hallo,

I am looking for an example, how to use the UserSyncTool (UST) in combination with the OAuth-Server-to-Server-Credential with an existing OAuth-AccessToken.
Testing the new OAuth-connection always generates a new OAuth-AccessToken. The UST documentation seems to have only an example for the connector-umapi.yml but no example for an OAuth-parameter of the UST v9+ to handle an existing AccessToken.

Many Adobe-Websites have an outdated hyperlink to a 404-site (https://github.com/adobe-apiplatform/user-sync.py/blob/user-guide-wip/en/user-manual/connect_adobe.md), and at https://adobe-apiplatform.github.io/user-sync.py/en/user-manual/connect_adobe.html only the yml-file is described.
Can anyone help me to find an example of an UST-command using an existing OAuth-AccessToken?

8 Replies

Avatar

Employee

Older UST scripts (<2.9.0) will not have OAuth support.

If that's the case for you as well, update it by downloading the latest release for your OS from releases, then put the new unzipped script file in the existing UST folder.

Make sure you use the updated connector-umapi.yml file. Copy the contents from the sample here and make sure you complete inside the quotes the values required for OrgID, Client ID and Secret as you have them in the OAuth deployed project.

Run your newer UST in test mode (add -t to command line) and check if it connects successfully and also does same sync as you're used to see.

Open a support ticket with dev support team if you bump into issues.

Avatar

Level 1
Level 1

Thank you for your answer and for referring to the Dev Support Team if their help should be needed!

 

Maybe my description was not exactly enough.

The main question is how to use an existing OAuth-AccessToken with UserSyncTool (UST) v9+ instead of generating a new Token.

The system requirements and the yml-configuration file are not the problem. Also the connection works in test mode with version 9.1, but every UST command seems to generate a new OAuth-AccessToken.

 

As described on https://developer.adobe.com/developer-console/docs/guides/authentication/ServerToServerAuthenticatio... "it is a good practice to cache access tokens for reuse until they expire. ... Adobe can throttle your integration if it generates too many access tokens."

 

Therefore I need a command line example to use an existing cached OAuth-AccessToken with the UserSyncTool version 9 and newer. I did not find any information if and how the UST can handle cached AccesTokens or if it always generates a new one.

 

Do I have to ask the Dev Support Team?

Avatar

Employee

In short, no, you cannot cache the token.

UST has no logic for caching the token, it will always generate a new one on every run.

Thing is, the script is not going to be run too often anyway, as UMAPI has some heavy throttling set for the frequency of this script, and the recommendation is to run it at most once every 2 hours. 

 

Avatar

Level 1
Level 1

Thank you very much! Your answer is very helpful.

It also is good to know about the 2 hours limitation.

 

These details I missed in the UserSyncTool's user manual.

Avatar

Level 1
Level 1

Where can I find a documentation about the limits for

  • the 2 hours frequency
  • the new created access tokens per day?

I can not find a quota information for the UM API credential as described at https://developer.adobe.com/developer-console/docs/guides/quota/.

 

Where can I find an example for creating a new user account using a cached token or for the combination of using an access token and creating a new user account? I could not find any solution in the documentation for using

  • umapi_client.py
  • cURL

I wonder why in the API reference for Server-to-Server-Authentication refreshing (=cashing?) a token is not recommended although there seems to be a limit of creating new tokens per 24 hours:

Could you help  me with further information, please?

Avatar

Employee

There's much to talk about and since you have UMAPI access, it means your Org has access to Enterprise Support - please raise a ticket from Admin Console (or have one of your admins to raise it for you and add you to the list of watchers). Ask for developer support for UMAPI.

For reference, the 2 hours recommendation is stated in UMAPI documentation - announcements section: https://adobe-apiplatform.github.io/umapi-documentation/en/ 

(look for the February 2021 entry)