Skip to main content
PUT
/
schedule
/
v1
/
absence-calendars
/
{id}
Update Absence Calendar
curl --request PUT \
  --url https://api-{region}.sesametime.com/schedule/v1/absence-calendars/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "daysOff": [
    {
      "date": "2023-12-25",
      "startTime": "00:00",
      "endTime": "02:00"
    }
  ]
}
'
import requests

url = "https://api-{region}.sesametime.com/schedule/v1/absence-calendars/{id}"

payload = { "daysOff": [
{
"date": "2023-12-25",
"startTime": "00:00",
"endTime": "02:00"
}
] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.put(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({daysOff: [{date: '2023-12-25', startTime: '00:00', endTime: '02:00'}]})
};

fetch('https://api-{region}.sesametime.com/schedule/v1/absence-calendars/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api-{region}.sesametime.com/schedule/v1/absence-calendars/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'daysOff' => [
[
'date' => '2023-12-25',
'startTime' => '00:00',
'endTime' => '02:00'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://api-{region}.sesametime.com/schedule/v1/absence-calendars/{id}"

payload := strings.NewReader("{\n \"daysOff\": [\n {\n \"date\": \"2023-12-25\",\n \"startTime\": \"00:00\",\n \"endTime\": \"02:00\"\n }\n ]\n}")

req, _ := http.NewRequest("PUT", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.put("https://api-{region}.sesametime.com/schedule/v1/absence-calendars/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"daysOff\": [\n {\n \"date\": \"2023-12-25\",\n \"startTime\": \"00:00\",\n \"endTime\": \"02:00\"\n }\n ]\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api-{region}.sesametime.com/schedule/v1/absence-calendars/{id}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"daysOff\": [\n {\n \"date\": \"2023-12-25\",\n \"startTime\": \"00:00\",\n \"endTime\": \"02:00\"\n }\n ]\n}"

response = http.request(request)
puts response.read_body
{
  "data": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "employee": {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "firstName": "Lucas",
      "lastName": "García",
      "secondLastName": "<string>",
      "email": "jsmith@example.com",
      "imageProfileURL": "https://sesame-v2-prod-companies.s3.eu-west-3.amazonaws.com/48351485-1659-413d-bf7f-3ca34fadb521/public-read/g892f1fb-55a3-4e32-9cc9-7c19faa70gaa.png",
      "code": 1,
      "pin": 1000,
      "phone": "+34 111 11 11 11",
      "company": {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "name": "<string>",
        "notificationEmail": "jsmith@example.com",
        "language": "<string>",
        "createdAt": "2020-01-01T10:00:00+01:00",
        "updatedAt": "2020-01-01T10:00:00+01:00"
      },
      "contractId": "<string>",
      "nid": "<string>",
      "secondaryNid": "<string>",
      "ssn": "<string>",
      "pricePerHour": 123,
      "accountNumber": "<string>",
      "dateOfBirth": "2023-12-25",
      "customFields": [
        {
          "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "companyId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "name": "<string>",
          "slug": "<string>",
          "type": "<string>",
          "value": "<string>",
          "createdAt": "2020-01-01T10:00:00+01:00",
          "updatedAt": "2020-01-01T10:00:00+01:00"
        }
      ],
      "createdAt": "2020-01-01T10:00:00+01:00",
      "updatedAt": "2020-01-01T10:00:00+01:00",
      "children": 2,
      "disability": 25,
      "address": "<string>",
      "postalCode": "<string>",
      "city": "<string>",
      "province": "<string>",
      "country": "ES",
      "nationality": "ES",
      "nationalities": [
        "ES",
        "FR"
      ],
      "personalMail": "jsmith@example.com",
      "maritalStatus": "<string>",
      "emergencyPhone": "<string>",
      "description": "<string>",
      "salaryRange": "<string>",
      "studyLevel": "<string>",
      "professionalCategoryCode": "<string>",
      "professionalCategoryDescription": "<string>",
      "bic": "<string>",
      "jobChargeId": "<string>",
      "jobChargeName": "<string>",
      "jobChargeDescription": "<string>",
      "jobChargeCompetencies": "<string>",
      "language": "es-ES",
      "workPhone": "+34 111 11 11 11",
      "mainRecruiter": {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "firstName": "Lucas",
        "lastName": "García",
        "secondLastName": "<string>",
        "imageProfileURL": "https://sesame-v2-prod-companies.s3.eu-west-3.amazonaws.com/48351485-1659-413d-bf7f-3ca34fadb521/public-read/g892f1fb-55a3-4e32-9cc9-7c19faa70gaa.png",
        "email": "jsmith@example.com",
        "workCheckTypeColor": "#FF0000",
        "workCheckTypeName": "Remote"
      },
      "nfc": "<string>",
      "contributionGroupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
    },
    "daysOff": [
      {
        "date": "2023-12-25",
        "seconds": 123,
        "startTime": "<string>",
        "endTime": "<string>"
      }
    ],
    "maxDaysOff": 123,
    "year": 123,
    "absenceType": {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "name": "<string>",
      "needsValidation": true,
      "company": {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "name": "<string>",
        "notificationEmail": "jsmith@example.com",
        "language": "<string>",
        "createdAt": "2020-01-01T10:00:00+01:00",
        "updatedAt": "2020-01-01T10:00:00+01:00"
      },
      "createdAt": "2020-01-01T10:00:00+01:00",
      "updatedAt": "2020-01-01T10:00:00+01:00",
      "deletedAt": "<string>",
      "maxPerPeriod": {
        "quantity": 123
      },
      "accumulative": true,
      "color": "<string>",
      "maxDateToTakeAbsence": "2023-12-25",
      "creationDateNextYear": "2023-12-25"
    },
    "createdAt": "2020-01-01T10:00:00+01:00",
    "updatedAt": "2020-01-01T10:00:00+01:00",
    "deletedAt": "<string>"
  },
  "meta": {
    "currentPage": 1,
    "lastPage": 1,
    "total": 1,
    "perPage": 1
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string<uuid>
required

Calendar ID

Body

application/json

Absence Calendar object that needs to be updated

daysOff
object[]
required

array of AbsenceCalendarDayOff

Response

200 - application/json

Array of Objects

data
object
meta
object