Skip to main content

Ad Astra

Ad Astra Logo

The Ad Astra connector integrates with Ad Astra's room scheduling and calendar management system to bring space utilization and booking data into the Mapped graph. The connector synchronizes calendar events, room assignments, and schedule changes to provide visibility into how spaces are being used across your campus or facilities.

Use Cases​

Potential use cases include:

  • Space Utilization Analysis: Track actual room usage patterns against scheduled events to identify underutilized spaces and optimize space allocation
  • Schedule Coordination: View real-time and future room bookings across buildings to support scheduling decisions and space planning
  • Historical Analysis: Access historical booking data to analyze trends in space usage and support data-driven facilities management decisions

Configuration​

Auth Requirements​

In order to authenticate, the following is required:

Place Mappings​

The connector maps Ad Astra rooms to Mapped spaces using the following structure:

FieldRequiredDescription
building.siteIdYesCampus ID from Ad Astra (user selected during configuration)
building.refIdYesBuilding ID from Ad Astra (auto-populated, must be unique)
building.nameYesBuilding name from Ad Astra (auto-populated)
building.addressYesUser-entered physical address of the building
floor.nameNoFloor name or identifier (user entered))
floor.levelNoNumeric floor level (user entered)
space.refIdYesRoom ID from Ad Astra (auto-populated, must be unique)
space.nameYesRoom name from Ad Astra (auto-populated)
space.codeYesRoom number from Ad Astra (auto-populated)

Advanced Options​

Site Selection

Select one or more campuses/sites from your Ad Astra instance to include in the connector. Only rooms from selected sites will be synchronized.

Calendar Backfill

The connector provides an on-demand backfill action to synchronize historical calendar events for a specific date range. This is useful for:

  • Loading historical data when first setting up the connector
  • Recovering data after a gap in synchronization
  • Analyzing past space utilization patterns

To use the backfill feature: 1: Navigate to the "Backfill Calendar Events" section

2: Specify a start date and end date (ISO 8601 format)

3: Trigger the backfill action

4: Monitor the action status (only one backfill can run at a time)

Mapped Concepts​

Ad Astra API to Mapped Entities​

Ad Astra API ObjectMapped Entity TypeDescription
Room (from selected sites)SpacePhysical rooms that can be scheduled
Room ScheduleCalendarContainer for calendar events associated with a space
Activity/EventCalendarEventIndividual scheduled events in rooms
Activity IDExternalIdentityExternal identifier linking calendar events to Ad Astra activities

Relationships:

  • Calendar → hasCalendarEvent → CalendarEvent: A calendar contains multiple scheduled events
  • Calendar → addCalendarOf → Space: A calendar is associated with a specific space
  • CalendarEvent → addLocation → Space: Calendar events are located in specific spaces
  • CalendarEvent → identities → ExternalIdentity: Calendar events are linked to Ad Astra activity IDs

Important Notes

  • Each mapped Space receives one Calendar entity
  • Calendar events can change rooms; the connector automatically updates relationships when events move between spaces
  • Events are identified by their Ad Astra Activity ID using the format: urn:ad-astra:activity🆔{ActivityId}

Polling Behavior​

Note that the Ad Astra connector does not create timeseries points. All data is represented as graph entities (calendar events with start and end times). The connector runs two separate polling functions:

Current Events Poll

  • Frequency: Every 30 minutes
  • Purpose: Synchronizes recently modified calendar events
  • Scope: Events modified since the last successful poll (or within the last 30 minutes on first run)

Future Events Poll

  • Frequency: Every 7 days
  • Purpose: Synchronizes upcoming scheduled events
  • Scope: Events starting within the next 30 days that have been modified since the last poll

Both polling functions process events incrementally and handle pagination automatically. Only events for configured rooms in selected sites are synchronized.

Sample Code​

Query spaces with their calendars and upcoming events

Note you'll need the connectorId of your Ad Astra connector to execute this query. You can find this on the Mapped Console grid view connectors tab.

{
spaces(filter: { connectedDataSourceId: {eq: "your-connector-Id"} }) {
id
mappingKey
name
identities {
...on SpaceCode {
__typename
value
scope
scopeId
}
}
hasCalendar {
id
name
hasCalendarEvent {
id
name
startTime
endTime
}
}
}
}

Query calendar events with their identities and locations

{
calendarEvents(
filter: {connectedDataSourceId: {eq: "CON5ETAsX1XgEA39FckG6o6DB"}}
) {
id
mappingKey
name
startTime
endTime
identities {
... on ExternalIdentity {
__typename
value
scope
scopeId
}
}
hasLocation {
id
name
exactType
}
}
}

Query a specific space's calendar for a time range

{
spaces(filter: { name: {eq: "Aurora Motion Studio"} }) {
id
name
mappingKey
hasCalendar {
hasCalendarEvent(
filter: {
startTime: { gte: "2026-04-01T00:00:00Z" }
endTime: { lte: "2026-06-30T23:59:59Z" }
}
) {
name
startTime
endTime
}
}
}
}