---
title: "/calendars"
url: "https://developers.rest.rodeo/apis/calendar/versions/9fa518e1-4597-4801-ad08-2c360cda2316/operations/createCalendar"
---

> Full API specification: https://developers.rest.rodeo/apis/calendar/versions/9fa518e1-4597-4801-ad08-2c360cda2316.md

# /calendars

`POST` `/calendars`

Operation ID: `createCalendar`

Creates a calendar.

## Request body (required)

Content types: `application/json`

## Responses

- `201` - The created calendar
- `400` - Invalid JSON body or invalid `name`
- `401` - Missing or invalid bearer token
- `405` - Method not allowed

## OpenAPI definition

```yaml
openapi: 3.0.3
info:
  title: Calendar API
  version: 1.0.0
servers:
  - url: https://api.rest.rodeo/calendar/api/v1
    description: Production
paths:
  /calendars:
    post:
      operationId: createCalendar
      summary: /calendars
      description: Creates a calendar.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CalendarRequest"
            examples:
              create:
                value:
                  name: Work
      responses:
        "201":
          description: The created calendar
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Calendar"
              examples:
                calendar:
                  value:
                    id: 3d8df2a2-0d68-4dc4-9d5e-6b1e94a7a51d
                    name: Work
        "400":
          description: Invalid JSON body or invalid `name`
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
        "401":
          description: Missing or invalid bearer token
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
        "405":
          description: Method not allowed
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
security:
  - bearerAuth: []
components:
  schemas:
    CalendarRequest:
      type: object
      required:
        - name
      additionalProperties: false
      properties:
        name:
          type: string
          description: The calendar name.
          maxLength: 256
          minLength: 1
    Calendar:
      type: object
      required:
        - id
        - name
      additionalProperties: false
      properties:
        id:
          type: string
          format: uuid
          description: The calendar id.
        name:
          type: string
          description: The calendar name.
          maxLength: 256
    Error:
      type: object
      required:
        - error
      additionalProperties: false
      properties:
        error:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
```
