How Drupak Automated Swapcard-to-Drupal Content Sync for Event Management

How Drupak Automated Swapcard-to-Drupal Content Sync for Event Management

When one of Drupak's clients hit a wall trying to keep their event content in sync between Swapcard and Drupal, the team stepped in to build a reliable, automated pipeline. The client had sessions, speakers, exhibitors, and tracks stored in Swapcard, but needed everything available inside Drupal-accurately linked and consistently up to date-without relying on manual entry. Editors were stuck copy-pasting content from one platform to another, which slowed them down and introduced inconsistencies. Drupak was brought in to fix that.

To understand how they approached the problem, The Drop Times spoke with Hussain Ahmad, Business Development and Partnership Manager at Drupak, who broke down the process and key decisions they made.

The first step was to get a clear picture of the content that needed to move.

"We listed all the content types to migrate-sessions, speakers, exhibitors, tracks, and images-and mapped each one to the appropriate Drupal entities," Hussain explained.

That meant defining which pieces would become nodes, which would be taxonomy terms or media, and how they would relate to each other once inside Drupal.

From there, Drupak finalised the Drupal content types and their fields, ensuring every element from Swapcard dates, images, text, and relationships had a place to land. They then built a custom Drupal module, custom_swapcard_migration, leveraging the Drupal Migration API. Each content type was handled by its own migration process to keep things clean and reusable.

The real challenge came with fetching and transforming the data. Drupak built a custom source plugin to call the Swapcard API using GraphQL, allowing the migration to pull structured data directly from the platform. 

"We used process plugins to normalise date formats, sanitise rich text, and ensure references between content types were maintained using migration_lookup," Hussain said. 

This meant that sessions correctly pointed to their associated speakers, exhibitors were linked properly, and everything stayed in sync even as data changed.

To avoid duplication and make migrations safe to run multiple times, they stored stable external IDs with each Drupal entity. The entire migration was driven by configuration files using YAML, which gave them fine-grained control over the process and made it easy to manage using tools like Migrate Plus and Migrate Tools.

Accuracy and consistency were key goals throughout the project.

"We have used cron, which runs every six hours by default," Hussain explained. "We defined a script that syncs between Drupal and Swapcard during each cron run." 

This regular schedule meant editors didn't have to manually trigger updates or worry about stale data-new or updated content simply appeared in Drupal shortly after it changed in Swapcard.

Relational integrity was another area of focus. 

"Drupal migration has a mapping approach in which we map the Drupal reference field to Swapcard," he noted. 

This ensured that linked content like session-speaker relationships didn't break or mismatch during the migration process.

Before going live, Drupak ran test migrations in a staging environment, validating that all data fields were covered, links between entities worked correctly, and images and media were handled properly. They also built in logging and error reporting to help identify and resolve any issues quickly after launch. With everything tested and confirmed, the migration was deployed to production, complete with rollback options and monitoring tools so any problems could be flagged and fixed fast.

Perhaps most importantly, the system is not a one-off. The client can reuse the setup for future events without starting from scratch.

"Yes, we can reuse it with the same data model-entity types and fields," Hussain confirmed. 

This makes the solution scalable for future needs, whether the next event uses the same platform or a similar one with comparable data structures.

In the end, Drupak delivered exactly what the client needed: a hands-off, automated, and reliable way to keep event content synced between Swapcard and Drupal. Editors no longer waste time on manual updates. Relationships between sessions, speakers, and exhibitors hold steady. And the whole system is flexible enough to support future events without new development.

For organisations running large events or managing complex content flows, Drupak's work here is a reminder that with the right planning and tools, even tricky platform integrations can be solved in a clean, sustainable way.

Disclosure: This content is produced with the assistance of AI.

Note: The vision of this web portal is to help promote news and stories around the Drupal community and promote and celebrate the people and organizations in the community. We strive to create and distribute our content based on these content policy. If you see any omission/variation on this please reach out to us at #thedroptimes channel on Drupal Slack and we will try to address the issue as best we can.

Related Organizations

Related People

Upcoming Events

Latest Opportunities