Timezones

All dates and times in Skylark are stored and returned in UTC, however any timezone can be supplied at create time. When availability rules are returned, the start and end date are returned as they are stored, in UTC. However, the timezone is also returned, allowing you to shift into the desired timezone.

πŸ“˜

ISO 8601 Timezones

The timezone element is a required part of ISO 8601 timezones. However Skylark ultimately ignores this in favour of the timezone input field.

The timezone field of availability input must be supplied as an IANA compliant timezone. These timezones obey shifting clocks in summer time.

Create Availability With Timezone

This example shows creating an availability rule with a timezone.

mutation {
  createAvailability(availability: {
    start: "2023-01-01T12:00:00Z",
    end: "2023-06-01T12:00:00Z",
    timezone: "America/New_York"
  }) {
    uid
    start
    end
    timezone
  }
}

Retrieve Availability With Timezone

The timezone field can be supplied to the getAvailability query to return the timezone.

query {
  getAvailability(uid: "01HEAKFHMSKTM3QR5N9WDAFG8R") {
    start
    end
    timezone
  }
}