Skip to main content

Federation

Share your public events with the eventschedule.com listings and send the discovery traffic back to your own site. An administrator turns the network on for the whole install, eventschedule.com approves it once, and each schedule then chooses whether to be listed.

Overview

Federation is an optional network that shares your public events with the listings on eventschedule.com. Every listing links straight back to the event on your own site, so the discovery traffic comes to you rather than staying somewhere else.

It is available on any Event Schedule install other than eventschedule.com itself, whether you run a single schedule for yourself or a multi-tenant SaaS for customers. It is free, off by default, and can be switched off again at any time.

What gets shared. Public, upcoming events, online and in person. Private, draft, cancelled and password-protected events are never sent, and neither are events from schedules that have opted out or have not opted in.

Turning it on

  1. Sign in as an administrator and open Admin → Settings.
  2. Switch on Share events with the network.
  3. Add a contact email. It is shown to the administrator who reviews your install, and used to email you their decision. It is never published.
  4. Save.

Before you save, the page lists exactly which events would be shared on the next run, so you can see what leaves your install rather than having to trust a description of it.

Saving registers your install with the network and puts it in a review queue. Nothing is published until an administrator at eventschedule.com approves it, which is a one-time step for the whole install. You will get an email either way, and the connection status on the settings page shows where you stand: Not connected, Pending review, Approved or Suspended.

Per-schedule control

Once the network is on for the install, each schedule gets its own toggle under Settings on the schedule edit page: List this schedule on the network.

A schedule created since federation was added to your install starts out unlisted, and its owner opts in with that toggle, so a new customer is never carried onto the network by your decision alone. Schedules that predate the feature keep the listing they already had and can be switched off individually. The settings page counts the schedules still waiting on that decision, which is the usual reason the preview is shorter than you expected.

The toggle only appears after you have enabled the network for the whole install, so on a multi-tenant deployment your customers never see an option you have not opted into.

On an event with more than one schedule attached, a talent and a venue for instance, any one of them opting out is enough to keep the event off the network: a listing carries every participant's name and the venue's address, so nobody is published on someone else's say-so.

What a listing looks like

Listings appear in their own section on the eventschedule.com browse page, badged with your site's address and filterable by country and language. Clicking one goes straight to the event on your site: there is no copy of the event page on eventschedule.com, and the link is a normal followable link rather than a tracking redirect.

An event needs a picture to be listed, matching the bar applied to eventschedule.com's own events. That can be the event flyer or the profile image of a talent or venue schedule attached to it.

Recurring events are listed with their next few dates, and times are shown in the event's own timezone rather than the visitor's.

Keeping it in sync

Sharing runs hourly on your existing scheduler, so it needs no extra setup beyond the cron entry Event Schedule already requires. Edits appear within the hour, and an event that stops qualifying, because it was unpublished, cancelled, made private, or its schedule opted out, is removed from the listings on the next run.

You can also run it by hand:

php artisan federation:push

The settings page records the last successful sync, and shows a warning if the most recent attempt did not complete. Failures retry automatically.

Schedules must be verified. Only schedules with a verified email address or phone number are shared, matching the rule eventschedule.com applies to its own listings. On a multi-tenant install this is the usual reason a particular customer's events do not appear. The settings page shows how many schedules are being held back for this reason.

What is shared, and what is not

Only information that is already public on your event pages is sent. Rather than describe it, here is the complete list, field by field, and where each one ends up.

What is sent When Where it is visible
Event name Every listing On the listing card
Next date, time and timezone Every listing On the listing card, in the event's own timezone
Link back to the event on your site Every listing The card's link. This is the whole point of federation
Picture Every listing (an event without one is not listed) Copied and stored by eventschedule.com, shown on the card
Venue name and city When the event has a venue The card's location line
Short description, end time, further dates Every listing Sent, but not currently shown anywhere
Street address, postal code, coordinates, country When the event has a venue Not shown. The country drives the country filter
Language Every listing Not shown. Drives the language filter
Whether the event is online Every listing Decides the online label. The joining link itself is never sent
Schedule name, and the address of its public page Every listing Shown to the administrator who reviews your install, so they can see what they are approving
Your site address Every request The source badge on every card
Install name, contact email, version number Once, when you join Shown to the reviewing administrator only. Never published

No attendee data, ticket data, sales, contact details or private fields ever leave your install. Neither does the joining link for an online event: the network is told only that there is one, because a label is all it has ever done with it.

Pictures are copied and stored by eventschedule.com rather than loaded from your server, so visitors browsing the listings never make requests to your site until they click through.

Turning the setting off stops sharing immediately and takes your existing listings down with it: switching off tells the network to drop everything it holds from your install, there and then. If it cannot be reached at that moment, the request is retried on the next hourly run until it lands.

Last updated 4 September 2026 Improve this page on GitHub