Postman collection for Penneo Webhook

Test Penneo's webhook API using our official Postman collection. Create and manage webhook subscriptions, fire test events to your endpoint, and inspect the exact payload structure.

Import the collection

In Postman, go to Import → Link and paste the URL below:

https://raw.githubusercontent.com/Penneo/Penneo-api-postman/main/penneo-webhooks.postman_collection.json

Prerequisites

Before running the collection you need:

  • An OAuth client created in Penneo (to create an OAuth client you need Admin access)
  • API keys generated for your account
  • A publicly reachable URL to receive webhook events - use webhook.site for a free disposable endpoint during testing

See Authentication for step-by-step instructions on setting up OAuth clients and API keys.

Setup

After importing, open the collection in Postman and go to the Variables tab. Fill in the required variables:

VariableDescription
clientIdYour OAuth client ID
clientSecretYour OAuth client secret
apiKeyYour Penneo API key
apiSecretYour Penneo API secret
webhookEndpointThe URL Penneo should POST events to

The collection is pre-configured for sandbox. When you are ready to test against production, update the following variables:

VariableProduction value
baseUrlhttps://app.penneo.com
authUrlhttps://login.penneo.com

Requests

1. Get Access Token

Authenticates using the API Keys Grant flow. The nonce, timestamp, and digest are calculated automatically by the pre-request script - no manual steps required.

The access token is valid for 10 minutes. If a later request returns 401, re-run this request to get a fresh token.

2. Create Subscription

Creates a webhook subscription. Penneo will POST a JSON payload to your webhookEndpoint URL whenever any of the subscribed eventTypes occur.

The request body is pre-configured with a set of common event types and isActive: true. Update the eventTypes array to match the events your integration needs. See Supported event types below for the full list.

The subscription ID and secret are saved automatically on success.

Each endpoint URL can only be used by one subscription per account. Creating a second subscription with the same endpoint returns 409 Conflict.

3. Get Subscription

Fetches the details of the subscription created in request 2. Useful for confirming the configuration is correct before sending test events.

4. List Subscriptions

Returns all webhook subscriptions registered on your account. Use this to audit what is currently configured.

5. Test Subscription

Fires a webhook.subscription.test event to all active subscriptions that include it in their eventTypes. Open your webhook endpoint after running this request to inspect the exact payload structure Penneo delivers.

Make sure your subscription includes webhook.subscription.test in its event types. The default configuration in request 2 already includes it.

6. Update Subscription

Replaces the configuration of the subscription. Use this to add or remove event types, or to temporarily pause delivery by setting isActive to false.

This is a full replace - all fields must be included in the request body.

7. Delete Subscription

Permanently removes the subscription. Penneo will stop delivering events to the endpoint immediately. The subscriptionId variable is cleared automatically after a successful deletion.


Supported event types

Casefile events

Event typeDescription
sign.casefile.completedEveryone has signed and the signed PDF documents are ready for download.
sign.casefile.expiredThe signing process has expired (e.g. a deadline was reached without all required signatures).
sign.casefile.failedAn error occurred on our side; this may require contacting support.
sign.casefile.rejectedOne or more signers have rejected the signing request.

Signer events

Event typeDescription
sign.signer.requestActivatedSigner is prepared to sign after casefile activation or signing round availability.
sign.signer.requestSentInitial signing request email delivery occurred.
sign.signer.reminderSentSigning reminder notification was sent.
sign.signer.requestOpenedA signing request email has been opened.
sign.signer.undeliverablePenneo cannot send emails to the signer; check the signer's email address.
sign.signer.openedThe signer has viewed the signing page.
sign.signer.rejectedThe signer has rejected the signing request.
sign.signer.signedThe signer has signed.
sign.signer.signedWithImageUploadAndNAPSigner completed signing via image upload with NAP.
sign.signer.finalizedThe casefile containing the signer has been finalized.
sign.signer.deletedThe signer has been deleted from the casefile.
sign.signer.transientBounceThe signer's email temporarily failed delivery.

Test events

Event typeDescription
webhook.subscription.testTest event for validating endpoint functionality. Triggered by request 5.