Skip to main content

Overview

Welcome to the Mobiscroll Connect API documentation. This API enables you to integrate with multiple calendar providers (Google Calendar, Microsoft Outlook, Apple Calendar, and CalDAV) through a unified interface.

Authentication

Auth Flow

Most API endpoints require authentication using a Bearer token (JWT). Include the token in the Authorization header:

Authorization: Bearer YOUR_JWT_TOKEN

Exception: The OAuth authorization endpoint does not require authentication as it initiates the OAuth flow.

To obtain an access token:

  1. Direct users to the GET /authorize endpoint to initiate the OAuth2 flow
  2. Users will authenticate with their calendar provider(s)
  3. After successful authentication, they'll be redirected to your redirect_uri with an authorization code
  4. Exchange the authorization code for an access token using POST /token
  5. Use the access token in the Authorization header for all subsequent API requests

API Flow

Available Endpoints

OAuth API

Initiate and complete the OAuth2 authorization flow to connect user calendar accounts.

Events API

Retrieve, create, update, and delete calendar events from connected providers with support for pagination, filtering, and recurring events.

Calendars API

Manage calendar lists across all connected providers.

Webhooks API

Subscribe calendars and receive normalized event change notifications from Google, Microsoft, Apple, and CalDAV (polling-based for Apple and CalDAV).

Supported Providers

Mobiscroll Connect supports the following calendar providers:

  • Google Calendar ('google')
  • Microsoft Outlook ('microsoft')
  • Apple Calendar ('apple')
  • CalDAV ('caldav')

Base URL

All API requests should be made to:

https://connect.mobiscroll.com/api

Response Format

All API responses are returned in JSON format. Successful responses include the requested data, while error responses include an error field with a descriptive message.

Error Handling

Standard HTTP status codes are used to indicate the success or failure of requests:

  • 200 - Success
  • 202 - Accepted (async operations)
  • 400 - Bad Request (invalid parameters)
  • 401 - Unauthorized (invalid or missing token)
  • 404 - Not Found (resource doesn't exist)
  • 500 - Internal Server Error (unexpected failure)