Team Members

Get team member availability

Returns every time a team member (Mitarbeiter) is busy between from and to, so an appointment can be booked around it before calling POST /jobs. Each interval carries a reason, and intervals of different reasons are never merged, so they can overlap.

Reasons:

  • job: an appointment the member is assigned to (canceled and deleted appointments are left out). Includes jobId.

  • absence: an absence such as vacation or sick leave. Pending absences count; declined ones do not. Includes timeEntryId. absenceType is returned only to a person allowed to see the member's time tracking, never to an API key.

  • company_holiday: a public or custom holiday enabled in the company's bank-holiday settings, as a whole day in the company's timezone. Includes holidayName.

  • external_calendar: a busy block from the member's connected Google or Outlook calendar. Only start and end are returned, never what the time is taken by. sources.externalCalendar says whether this source was read.

  • outside_working_hours: time outside the member's working hours, or outside the company's opening hours on days the member has none. A day the company opens by appointment blocks nothing. sources.workingHours says which applied.

job, absence and company_holiday intervals keep their real start and end, so one can start before from or end after to. external_calendar and outside_working_hours intervals are clipped to the window. Intervals are sorted by start. Working hours, opening hours and holidays are read in the company's timezone (timeZone). startAt and endAt keep sub-second precision (a whole-day absence can end at …T21:59:59.999Z).

With a user's access token instead of an API key, a member's absences and working hours are only visible to that member themselves, administrators, and users who may view all projects or manage time tracking; anyone else gets 403. Encode a positive offset's + as %2B, or use Z.

get/team-members/{profileId}/availability

Request

  • Base URL
    https://api3.autarc.energy/v1
  • Auth
    API key in header X-Api-Key

Path parameters

profileIdstring uuid required

Profile ID of a member of the authenticated company.

Query parameters

fromstring date-time required

Start of the window (inclusive), an RFC 3339 timestamp.

tostring date-time required

End of the window (exclusive), an RFC 3339 timestamp after from and at most 31 days later.

Response

When the team member is busy in the requested window

profileIdstring uuid required
fromstring date-time required

Start of the requested window, in UTC.

tostring date-time required

End of the requested window, in UTC.

timeZonestring required

IANA timezone the company reads clocks in (its own setting, else its address country). Working hours, opening hours and holidays are whole local days in this zone. UTC when the company has neither.

Example response

{
  "timeZone": "Europe/Berlin",
  "sources": {
    "externalCalendar": "included",
    "workingHours": "employee",
    "companyHolidays": "included"
  },
  "busy": [
    {
      "reason": "job",
      "absenceType": "vacation",
      "holidayName": "Tag der Deutschen Einheit"
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.