Ad Astra

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:
- Base URL: Your Ad Astra instance URL (e.g., https://your-instance.aaiscloud.com)
- Username: Your Ad Astra account username
- Password: Your Ad Astra account password
Place Mappings
The connector maps Ad Astra rooms to Mapped spaces using the following structure:
| Field | Required | Description |
|---|---|---|
| building.siteId | Yes | Campus ID from Ad Astra (user selected during configuration) |
| building.refId | Yes | Building ID from Ad Astra (auto-populated, must be unique) |
| building.name | Yes | Building name from Ad Astra (auto-populated) |
| building.address | Yes | User-entered physical address of the building |
| floor.name | No | Floor name or identifier (user entered)) |
| floor.level | No | Numeric floor level (user entered) |
| space.refId | Yes | Room ID from Ad Astra (auto-populated, must be unique) |
| space.name | Yes | Room name from Ad Astra (auto-populated) |
| space.code | Yes | Room 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 Object | Mapped Entity Type | Description |
|---|---|---|
| Room (from selected sites) | Space | Physical rooms that can be scheduled |
| Room Schedule | Calendar | Container for calendar events associated with a space |
| Activity/Event | CalendarEvent | Individual scheduled events in rooms |
| Activity ID | ExternalIdentity | External 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
}
}
}
}