Skip to main content

Implementing a Partner Channel in Stager

A guide for partner's of Stager to implement their partner channel within Stager using our push feed.

Updated this week

Stager has a push feed, which allows us to automatically send data to partner platforms when specific actions occur, called ‘triggers’. It uses a webhook, that we push structured event data to, triggered by actions like creating or updating events. This is especially handy for partners who need real-time updates from Stager to display or process event information.

The push feed for Stager users

Event organisers working in the Stager backstage only need to simply activate a partner channel in their settings, and start publishing events to it through the publicity tab. If the partner platform uses a whitelist for incoming connections, we can add this to their partner channel setup page.

Please note - this article is for partners implementing a partner channel with us. For Stager users who want to learn more about connecting with partner channels in Stager, you can read our article on using partner publication channels.

How to implement the push feed

There are five steps you can follow to implement a Stager partner channel with our push feed.

Step 1: Set up your webhook

First, you’ll need to prepare a webhook endpoint (a URL) where Stager can send the event data. This URL needs to accept HTTP POST requests with relatively large payloads. Make sure your server can handle large messages. This may mean you’ll need to increase the default maximum request size.

Step 2: Use a queue system

Stager can send a high volume of messages, especially during peak times. To keep things smooth, we recommend setting up a queue system so your server doesn’t get overwhelmed.

This will prevent overload in busier moments, like peak sales, and keep your server available for messages pushed by Stager. By processing messages asynchronously with a queue, you can avoid timeouts or dropped messages during these high-load periods, whilst remaining fast and responsive.

For software that can aid in this, there are lightweight options such as Redis, which can be used to build a simple queue system, or more advanced message solutions like Amazon SQS or RabbitMQ for more complex needs.

Step 3: Validate the messages with an authentication token

To ensure the messages are truly from Stager, they are signed using the HMAC-SHA256 hashing algorithm. Each message includes an X-Signature HTTP header containing the signature. You can verify this request using a cryptography library of your choice. Usually this means generating your own signature using the same algorithm, authentication key and full request body and comparing it to the signature provided by us. If they match, continue processing. If not, reject the message with a 401 Unauthorized response.

More details and code examples are available in our verification guide.

Implement this with a mock authentication token first. You will receive your real authentication token at a later step.

Step 4: Process the messages

Every message Stager sends includes:

  • messageType: defines what the message is (e.g. UPDATE_EVENTS)

  • messageContent: the actual information, formatted according to a schema based on the message type

What do you need to do?

  • Check the messageType to see if it’s relevant to your system

  • Deserialize the messageContent based on our schemas. For more information on our schemas, check the push feed documentation.

  • Handle each of the 6 possible message types properly

  • Always return the correct HTTP status code to confirm successful delivery

As a partner, you’ll receive limited data fields. For a complete overview of the data fields and schemas used, please refer to our push feed documentation with the button below:

Messages are pushed immediately when actions are triggered in a simple ‘fire and forget’ mechanism. We do not retry failed deliveries, so we send a nightly ORGANIZATION_SYNC at 2AM with a full update of all upcoming events per organization. This allows us to sync up anything that might have gotten lost throughout the day.

Step 5: Test and go-live

Once you’ve implemented your endpoint, send us your webhook URL and technical contact email. We will then give you access to a dedicated organization in our staging environment to test.

Once your implementation is ready, it will be added as a temporary partner channel with live messages for testing. At this step, you will also receive your actual authentication token. After this succeeds, we move to production and stop sending messages from our staging environment to your webhook.

Did this answer your question?