SMAO API Documentation
Public APICalendars

Create a calendar

POST
/calendars

Creates a new calendar. You can optionally seed one or more schedules (opening hours, service hours, etc.) along with their weekly template and date-specific overrides in a single request. Calendar names must be unique within your organization.

Authorization

bearerAuth
AuthorizationBearer <token>

API key in the Authorization: Bearer <key> header. Keys are created in the SMAO dashboard (Settings → API Keys).

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/calendars" \  -H "Content-Type: application/json" \  -d '{    "name": "Main Office",    "timezone": "Europe/Berlin"  }'
{  "data": {    "id": "string",    "name": "string",    "timezone": "string",    "schedules": [      {        "id": "string",        "type": "opening_hours",        "weekly_schedule": {          "mon": {            "is_open": true,            "slots": [              {                "from": "string",                "to": "string"              }            ]          },          "tue": {            "is_open": true,            "slots": [              {                "from": "string",                "to": "string"              }            ]          },          "wed": {            "is_open": true,            "slots": [              {                "from": "string",                "to": "string"              }            ]          },          "thu": {            "is_open": true,            "slots": [              {                "from": "string",                "to": "string"              }            ]          },          "fri": {            "is_open": true,            "slots": [              {                "from": "string",                "to": "string"              }            ]          },          "sat": {            "is_open": true,            "slots": [              {                "from": "string",                "to": "string"              }            ]          },          "sun": {            "is_open": true,            "slots": [              {                "from": "string",                "to": "string"              }            ]          }        },        "overrides": [          {            "date": "string",            "type": "closed",            "reason": "string",            "slots": [              {                "from": "string",                "to": "string"              }            ]          }        ]      }    ],    "created_at": "2019-08-24T14:15:22Z",    "updated_at": "2019-08-24T14:15:22Z"  }}