Search
Welcome to M-Files Empower – our new support experience. We'd love to hear what you think!Give feedback

Last updated on 5 October 2023

Admin
M-Files for Adobe Acrobat Sign

Overview

When you are setting up Adobe Sign, you need to register the webhook with it. Sometimes (e.g., after an Adobe account change or if the account gets logged out, etc.), you may also need to register it again.

In some situations (usually when incorrect data has been entered for the Webhook details at some point), you may get an "invalid pointer" error (sample error stack available at the end of the article).

Solution

The webhook details must be:

Name: M-Files

Address: https://vaultDNSname

The key points are:

  • The address must not have a trailing slash, must not have "/webhook" at the end.
  • The address must be publicly accessible from the internet.
  • The address must have been correct from the first time the setup was done.

Note: Version 2.2.129 (released in October 2023) and newer have improved information messages around webhook registration issues. 

If errors are encountered during the process, the errors that will pop up in M-Files Admin show some more details. 

Please read through them and this will guide you to solving them. 

For example, if the error message says that the webhook is duplicate on Adobe side, then delete the old one from there; or if the error message says there are insufficient rights, log out the Adobe user, double check you have the correct credentials and log in again to perform the operation again.

Workaround

Adobe Sign can be used without the Webhook as well. A document can be sent to it and signed from the vault via the standard workflow transitions or the one-time context menu option.

The webhook is used to update its status in the vault when a change happens in the Adobe Sign side. So while the webhook is not working correctly, the documents can still be signed in Adobe Sign, but to get their status in the vault, you (the end user) must right click the document and select "check for update".

More Details

There are a few other things that may prevent the registration, here are the most commonly encountered issues.

Ensure the correct account is used

When authenticating the Adobe user, it goes through an OAuth flow, and that may pick up your current windows user, which may be incorrect and so you may get an error like "login failed" or "access denied" because this is not the Adobe user.

Changing the webhook details

To change the webhook details (say, address or name), you need to explicitly Log Out the Adobe user, then log back in again. You can also use the "Switch User" command. After doing that, then change the desired details and click Save.

If you get the "invalid pointer" error, you can try the following set of actions that usually resolves it:

  1. Save the Adobe Sign app configuration so you can later reuse it more easily 
  2. Un-install the Adobe Sign app
  3. Restart the vault
  4. Install the app again
  5. Restart the vault
  6. Log out the Common User
  7. Login/Authenticate the Common User again
  8. Register the Webhook

Duplicate Webhook

If you had registered the webhook with the same name before, it may still remain in the Adobe side and you may get an error that it already exists when you try to register it.

Either use a different name or delete the webhook from Adobe.

Insufficient rights for the Adobe user

The user in Adobe Sign must have elevated permissions because it is used to also register the webhook, and so the webhook must also have a certain set of scopes that, while the vault app enables by default, may get changed during troubleshooting, by mistake or for some other reason.

The Adobe user must be a "Adobe Sign Account Admin" 

image.png

The API integration for the webhook must have the user_read, user_login, agreement_read and agreement_write scopes with an account modifier.

image.png

And in the OAuth settings dialog, below the Client ID and name, there need to be these scopes at least:

image.png

Sample error stack

Error: Invalid pointer. (Object reference not set to an instance of an object.)

   at MFilesErrorHelper.GetAsyncRejectionError (/lib/mfiles/MFilesErrorHelper.js:24:17)

   at Anonymous function (/lib/mfiles/helpers/VaultExtensionMethodCaller.js:88:21)

AsyncCaller.cpp, 362, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

CoVaultExtensionMethodOperations.cpp, 142, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

LatestRPC.generated.cpp, 47342, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

IRPCVaultExtensionMethods.generated.cpp, 69, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

gRPCClient.cpp, 496, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

gRPCClient.cpp, 465, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

gRPCClient.cpp, 98, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

gRPC.generated.cpp, 31827, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

RPCVaultExtensionMethods.cpp, 117, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

MCallInLoop.h, 521, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

RPCVaultExtensionMethods.cpp, 652, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

VaultDBSessionEvents.cpp, 955, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

VaultScriptSessionTemplates.cpp, 396, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

VaultScriptSessionTemplates.cpp, 523, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

CoActiveScriptSite.cpp, 897, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

CoActiveScriptSite.cpp, 739, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

VaultExtensionMethod::AdobeSignVaultApp.MFEventHandlerVaultExtensionMethod, 22, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

CoDynamicCLRObjectWrapper.cpp, 552, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

CoDynamicCLRObjectWrapper.cpp, 322, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

ManagedError.cpp, 149, Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

VaultApplicationBase.cs, 275 (IL:67), Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

VaultApplicationBase.cs, 954 (IL:191), Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

MethodInfo.cs, 472 (IL:294), Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

AdminConfigurationManager.cs, 116 (IL:141), Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

AdminConfigurationManagerBase.cs, 211 (IL:128), Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

AdminConfigurationManagerBase.cs, 304 (IL:115), Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

VaultApplication.cs, 1615 (IL:170), Invalid pointer. (Object reference not set to an instance of an object.) (0x80004003)

(M-Files 23.5.12628.4 2023-06-02T16:34:50.862Z)

Still need help?