# Create Billable Item Source: https://docs.sonderplan.com/api-reference/billable-item/create-billable-item /api-reference/openapi-mintlify.yaml post /v2/billable-item `WRITE` access to the `SALES` module is required to access this endpoint # Delete Billable Item Source: https://docs.sonderplan.com/api-reference/billable-item/delete-billable-item /api-reference/openapi-mintlify.yaml delete /v2/billable-item `WRITE` access to the `SALES` module is required to access this endpoint # Get Billable Items Source: https://docs.sonderplan.com/api-reference/billable-item/get-billable-items /api-reference/openapi-mintlify.yaml get /v2/billable-item Billable items can be added to bookings, quotes, and invoices as predefined entries with a fixed unit price. Examples of billable items include catering services provided to clients, storage fees (typically charged per terabyte), and media transcoding (usually billed per minute). `READ` access to the `SALES` module is required to access this endpoint # Update Billable Item Source: https://docs.sonderplan.com/api-reference/billable-item/update-billable-item /api-reference/openapi-mintlify.yaml put /v2/billable-item `WRITE` access to the `SALES` module is required to access this endpoint # Bulk Bookings Source: https://docs.sonderplan.com/api-reference/booking/bulk-bookings /api-reference/openapi-mintlify.yaml post /v2/booking/bulk This endpoint implements Create, Update and Delete of bulk bookings. It is intended for *one time* import operations, or other use cases that require higher performance at the expense of notification and realtime update features. `WRITE` access to the `SCHEDULE` module is required to access this endpointBookings created, edited or deleted using this endpoint won't trigger **email notifications**, **web-hooks** or **realtime schedule updates** # Create Booking Source: https://docs.sonderplan.com/api-reference/booking/create-booking /api-reference/openapi-mintlify.yaml post /v2/booking `WRITE` access to the `SCHEDULE` module is required to access this endpoint The `bookingCreated` webhook will be fired when this endpoint has run successfullyTo avoid generating lots of undesired notifications, take care when creating or updating bookings and consider using the `notify_user_resources` option which can be used to silence notifications for end users. # Delete Booking Source: https://docs.sonderplan.com/api-reference/booking/delete-booking /api-reference/openapi-mintlify.yaml delete /v2/booking `WRITE` access to the `SCHEDULE` module is required to access this endpointTo avoid generating lots of undesired notifications, take care when creating or updating bookings and consider using the `notify_user_resources` option which can be used to silence notifications for end users. # Get Booking Clashes Source: https://docs.sonderplan.com/api-reference/booking/get-booking-clashes /api-reference/openapi-mintlify.yaml get /v2/booking/checkclash A booking clash is when one or more bookings overlap in time and (optionally) resources, which would create a double booking or scheduling conflict. `READ` access to the `SCHEDULE` module is required to access this endpointIf you are creating a booking and want to be sure there won't be a collision, you **don't** need to call this endpoint first.

New and updated bookings are automatically checked for clashes, unless the `check_clashes=false` is present as a query parameter.
# Get Bookings Source: https://docs.sonderplan.com/api-reference/booking/get-bookings /api-reference/openapi-mintlify.yaml get /v2/booking Bookings can be understood as time-based events (with start and end dates / times), which are typically represented on a calendar. Bookings include details about the event's timing, the resources being used, and additional information such as the client, associated project, rate details, and any custom attributes defined through custom fields. `READ` access to the `SCHEDULE` module is required to access this endpoint # Lock Booking Source: https://docs.sonderplan.com/api-reference/booking/lock-booking /api-reference/openapi-mintlify.yaml put /v2/booking/lock The Sonderplan user interface features a booking locking system that prevents accidental overwrites when multiple users are editing the same booking. A booking lock is automatically created for a user that opens the booking editor sidebar, or clicks on *Edit* in the advanced booking editor. The lock is automatically deleted if the user saves and closes, or cancels the save operation. Booking locks automatically created by Sonderplan will last for 10 minutes, unless extended by the user when a lock expiration warning is shown. It is possible to manually lock and unlock bookings with these API endpoints and set the lock time to a custom time as required. `WRITE` access to the `SCHEDULE` module is required to access this endpoint # Unlock Booking Source: https://docs.sonderplan.com/api-reference/booking/unlock-booking /api-reference/openapi-mintlify.yaml put /v2/booking/unlock The Sonderplan user interface features a booking locking system that prevents accidental overwrites when multiple users are editing the same booking. A booking lock is automatically created for a user that opens the booking editor sidebar, or clicks on *Edit* in the advanced booking editor. The lock is automatically deleted if the user saves and closes, or cancels the save operation. Booking locks automatically created by Sonderplan will last for 10 minutes, unless extended by the user when a lock expiration warning is shown. It is possible to manually lock and unlock bookings with these API endpoints and set the lock time to a custom time as required. `WRITE` access to the `SCHEDULE` module is required to access this endpoint # Update Booking Source: https://docs.sonderplan.com/api-reference/booking/update-booking /api-reference/openapi-mintlify.yaml put /v2/booking `WRITE` access to the `SCHEDULE` module is required to access this endpoint The `bookingEdited` webhook will be fired when this endpoint has run successfullyTo avoid generating lots of undesired notifications, take care when creating or updating bookings and consider using the `notify_user_resources` option which can be used to silence notifications for end users. # Create Calendar Subscription Source: https://docs.sonderplan.com/api-reference/calendar-subscription/create-calendar-subscription /api-reference/openapi-mintlify.yaml post /v2/calendar-subscription/import `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Calendar Subscription Source: https://docs.sonderplan.com/api-reference/calendar-subscription/delete-calendar-subscription /api-reference/openapi-mintlify.yaml delete /v2/calendar-subscription/import `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Calendar Subscriptions Source: https://docs.sonderplan.com/api-reference/calendar-subscription/get-calendar-subscriptions /api-reference/openapi-mintlify.yaml get /v2/calendar-subscription/import Sonderplan supports calendar subscriptions for both importing and exporting events, using the standard iCalendar format. This format is widely supported by popular calendar services like Google Calendar, Outlook, and Apple iCloud. ### Import Calendar Sync Subscriptions Import calendar sync allows you to bring external events into Sonderplan, such as syncing events from Google Calendar to Sonderplan bookings or sharing bookings between two separate Sonderplan instances. To set up an import, you can generate an iCalendar feed URL from the external calendar (e.g., Google Calendar) and copy it into a new Import Calendar subscription in Sonderplan. During setup, you can define default properties for imported bookings, such as resources, status, and associated projects. Sonderplan automatically checks these feeds at least once an hour and updates the schedule with any changes to the imported events. ### Export Calendar Subscriptions Export calendar subscriptions allow you to share bookings from Sonderplan with external calendars, such as syncing the bookings of specific resources to a shared Google Calendar. To enable export feeds, you must activate booking feeds for resources, schedules, or projects in the Sonderplan UI. The feed URL can then be retrieved from the corresponding endpoint using the `feed` property, which can be shared or integrated with external calendar systems. `READ` access to the `ADMIN` module is required to access this endpoint # Update Calendar Subscription Source: https://docs.sonderplan.com/api-reference/calendar-subscription/update-calendar-subscription /api-reference/openapi-mintlify.yaml put /v2/calendar-subscription/import `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Contact Source: https://docs.sonderplan.com/api-reference/contact/create-contact /api-reference/openapi-mintlify.yaml post /v2/contact `WRITE` access to the `CONTACT` module is required to access this endpoint The `contactCreated` webhook will be fired when this endpoint has run successfullyUnlike virtually every other model, contact `id` **cannot be assumed to be unique. Use `uuid` instead.**

Contacts may be either people or organizations and these are stored in separate tables in the database, each with its own auto-incrementing identifier.

The contacts model creates a union between these two tables to allow simplified operations under a single namespace.
# Delete Contact Source: https://docs.sonderplan.com/api-reference/contact/delete-contact /api-reference/openapi-mintlify.yaml delete /v2/contact `WRITE` access to the `CONTACT` module is required to access this endpointUnlike virtually every other model, contact `id` **cannot be assumed to be unique. Use `uuid` instead.**

Contacts may be either people or organizations and these are stored in separate tables in the database, each with its own auto-incrementing identifier.

The contacts model creates a union between these two tables to allow simplified operations under a single namespace.
# Get Contacts Source: https://docs.sonderplan.com/api-reference/contact/get-contacts /api-reference/openapi-mintlify.yaml get /v2/contact You can create contacts for anyone you need to keep in touch with, such as your clients, suppliers, staff, or even resources. Contacts help you store and organize important details like phone numbers, email addresses, and other contact information, making it easy to manage communication across your projects. `READ` access to the `CONTACT` module is required to access this endpointUnlike virtually every other model, contact `id` **cannot be assumed to be unique. Use `uuid` instead.**

Contacts may be either people or organizations and these are stored in separate tables in the database, each with its own auto-incrementing identifier.

The contacts model creates a union between these two tables to allow simplified operations under a single namespace.
# Update Contact Source: https://docs.sonderplan.com/api-reference/contact/update-contact /api-reference/openapi-mintlify.yaml put /v2/contact `WRITE` access to the `CONTACT` module is required to access this endpoint The `contactEdited` webhook will be fired when this endpoint has run successfullyUnlike virtually every other model, contact `id` **cannot be assumed to be unique. Use `uuid` instead.**

Contacts may be either people or organizations and these are stored in separate tables in the database, each with its own auto-incrementing identifier.

The contacts model creates a union between these two tables to allow simplified operations under a single namespace.
# Create Custom Field Source: https://docs.sonderplan.com/api-reference/custom-field/create-custom-field /api-reference/openapi-mintlify.yaml post /v2/custom-field `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Custom Field Source: https://docs.sonderplan.com/api-reference/custom-field/delete-custom-field /api-reference/openapi-mintlify.yaml delete /v2/custom-field `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Custom Fields Source: https://docs.sonderplan.com/api-reference/custom-field/get-custom-fields /api-reference/openapi-mintlify.yaml get /v2/custom-field Custom fields are user-defined fields that let you capture additional information tailored to your organization’s specific needs. They can be added to bookings, projects, resources, contacts, quotes, and invoices, offering the flexibility to store and manage data not covered by the default fields. Custom fields can be configured with three input types: single-line text, multi-line text, and dropdown select menus with predefined options. For example, you could use custom fields to track additional producers, links to files in external systems, internal notes, or client preferences. `READ` access to the `ADMIN` module is required to access this endpoint # Update Custom Field Source: https://docs.sonderplan.com/api-reference/custom-field/update-custom-field /api-reference/openapi-mintlify.yaml put /v2/custom-field `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Group Source: https://docs.sonderplan.com/api-reference/group/create-group /api-reference/openapi-mintlify.yaml post /v2/group `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Group Source: https://docs.sonderplan.com/api-reference/group/delete-group /api-reference/openapi-mintlify.yaml delete /v2/group `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Groups Source: https://docs.sonderplan.com/api-reference/group/get-groups /api-reference/openapi-mintlify.yaml get /v2/group In Sonderplan, a Group is a set of users who share the same permissions and access rights. Groups simplify user management by assigning roles and responsibilities collectively rather than individually. For instance, you can create groups for administrators and staff members, each with tailored permissions, such as access to specific resources, schedules, or features. You can also restrict access to certain modules, like quotes and invoices, for specific groups. Groups ensure consistent access control, streamline role-based management, and make it easy to update permissions for multiple users at once. `READ` access to the `ADMIN` module is required to access this endpoint # Update Group Source: https://docs.sonderplan.com/api-reference/group/update-group /api-reference/openapi-mintlify.yaml put /v2/group `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Instance Source: https://docs.sonderplan.com/api-reference/instance/get-instance /api-reference/openapi-mintlify.yaml get /v2/instance Use this endpoint to retrieve meta and usage information about your Sonderplan instance `READ` access to the `ADMIN` module is required to access this endpoint # Create Invoice Template Source: https://docs.sonderplan.com/api-reference/invoice-template/create-invoice-template /api-reference/openapi-mintlify.yaml post /v2/invoice-template `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Invoice Template Source: https://docs.sonderplan.com/api-reference/invoice-template/delete-invoice-template /api-reference/openapi-mintlify.yaml delete /v2/invoice-template `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Invoice Templates Source: https://docs.sonderplan.com/api-reference/invoice-template/get-invoice-templates /api-reference/openapi-mintlify.yaml get /v2/invoice-template An invoice (or quote) template is a customizable layout used to generate invoices and quotes with a consistent format and design. It defines how details such as client information, items, taxes, and totals are displayed. Invoice templates can include your branding elements, like logos and company information, as well as custom fields or notes specific to your business needs. Both **Quote** and **Invoice** templates can be created, edited and deleted using this endpoint so be sure to use the correct `type_id`. `READ` access to the `ADMIN` module is required to access this endpoint # Update Invoice Template Source: https://docs.sonderplan.com/api-reference/invoice-template/update-invoice-template /api-reference/openapi-mintlify.yaml put /v2/invoice-template `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Invoice Source: https://docs.sonderplan.com/api-reference/invoice/create-invoice /api-reference/openapi-mintlify.yaml post /v2/invoice `WRITE` access to the `SALES` module is required to access this endpoint The `invoiceCreated` webhook will be fired when this endpoint has run successfully # Delete Invoice Source: https://docs.sonderplan.com/api-reference/invoice/delete-invoice /api-reference/openapi-mintlify.yaml delete /v2/invoice `WRITE` access to the `SALES` module is required to access this endpoint # Duplicate Invoice Source: https://docs.sonderplan.com/api-reference/invoice/duplicate-invoice /api-reference/openapi-mintlify.yaml post /v2/invoice/duplicate `WRITE` access to the `SALES` module is required to access this endpoint The `invoiceCreated` webhook will be fired when this endpoint has run successfully # Generate Invoice PDF Source: https://docs.sonderplan.com/api-reference/invoice/generate-invoice-pdf /api-reference/openapi-mintlify.yaml get /v2/invoice/pdf Retrieves a PDF‐formatted version of an existing invoice. Clients issue a GET request to `/v2/invoice/pdf?id={id}` where `{id}` is the numeric identifier of the invoice you wish to download. On success, the server responds with `HTTP 200` and streams back a binary PDF `(Content-Type: application/pdf)` along with a Content-Disposition header that suggests the filename. Because this is a read-only operation, it is safe and idempotent, and responses can be cached by HTTP caches or CDNs. If no invoice exists with the given ID, the endpoint returns HTTP 404 with a JSON error payload; any unexpected failure returns HTTP 500 with an explanatory message. `READ` access to the `SALES` module is required to access this endpoint # Get Invoices Source: https://docs.sonderplan.com/api-reference/invoice/get-invoices /api-reference/openapi-mintlify.yaml get /v2/invoice An invoice is a financial document issued to a client to request payment for services rendered or resources used. Invoices typically include key details such as the client’s information, a list of bookings, services or items being billed, applicable rates, taxes, discounts, and the total amount due. They serve as an official record of the transaction and can be customized to include additional details like payment terms, due dates, or custom notes. Invoices may also be generated from approved quotes, streamlining the billing process. `READ` access to the `SALES` module is required to access this endpoint # Update Invoice Source: https://docs.sonderplan.com/api-reference/invoice/update-invoice /api-reference/openapi-mintlify.yaml put /v2/invoice `WRITE` access to the `SALES` module is required to access this endpoint The `invoiceEdited` webhook will be fired when this endpoint has run successfully # Create Project Source: https://docs.sonderplan.com/api-reference/project/create-project /api-reference/openapi-mintlify.yaml post /v2/project `WRITE` access to the `PROJECT` module is required to access this endpoint The `projectCreated` webhook will be fired when this endpoint has run successfully # Create Project Folder Source: https://docs.sonderplan.com/api-reference/project/create-project-folder /api-reference/openapi-mintlify.yaml post /v2/project/folder `WRITE` access to the `PROJECT` module is required to access this endpoint # Create Project Phase Source: https://docs.sonderplan.com/api-reference/project/create-project-phase /api-reference/openapi-mintlify.yaml post /v2/project/phase `WRITE` access to the `PROJECT` module is required to access this endpoint # Delete Project Source: https://docs.sonderplan.com/api-reference/project/delete-project /api-reference/openapi-mintlify.yaml delete /v2/project `WRITE` access to the `PROJECT` module is required to access this endpoint # Delete Project Folder Source: https://docs.sonderplan.com/api-reference/project/delete-project-folder /api-reference/openapi-mintlify.yaml delete /v2/project/folder `WRITE` access to the `PROJECT` module is required to access this endpoint # Delete Project Phase Source: https://docs.sonderplan.com/api-reference/project/delete-project-phase /api-reference/openapi-mintlify.yaml delete /v2/project/phase `WRITE` access to the `PROJECT` module is required to access this endpoint # Get Project Folders Source: https://docs.sonderplan.com/api-reference/project/get-project-folders /api-reference/openapi-mintlify.yaml get /v2/project/folder Project folders enable projects to be grouped and organized into one or more hierarchical levels. For example, if you're working on an episodic production, you can create a project folder for the season or series and organize all related projects within that folder. `READ` access to the `PROJECT` module is required to access this endpoint # Get Project Phases Source: https://docs.sonderplan.com/api-reference/project/get-project-phases /api-reference/openapi-mintlify.yaml get /v2/project/phase Projects are often divided into distinct phases, each associated with one or more deadlines. Project phases provide a way to visually organize and track your project's progress using phase markers and deadlines displayed on the Sonderplan Project Timeline. For example, in a typical post-production workflow, you might have phases for ingesting media, assembly editing, offline/online editing, grading, and final export. `READ` access to the `PROJECT` module is required to access this endpoint # Get Projects Source: https://docs.sonderplan.com/api-reference/project/get-projects /api-reference/openapi-mintlify.yaml get /v2/project In Sonderplan a project represents a container for grouping related bookings, files, quotes and invoices. Projects allow users to organize their work by associating bookings with a specific purpose, client, or final deliverable (such as a movie or commercial). Projects include metadata such as the project name, client information, deadlines, files, and any custom attributes defined (via custom fields) by the user. This helps streamline project management and reporting by keeping all relevant details in one place. `READ` access to the `PROJECT` module is required to access this endpoint # Update Project Source: https://docs.sonderplan.com/api-reference/project/update-project /api-reference/openapi-mintlify.yaml put /v2/project `WRITE` access to the `PROJECT` module is required to access this endpoint The `projectEdited` webhook will be fired when this endpoint has run successfully # Update Project Folder Source: https://docs.sonderplan.com/api-reference/project/update-project-folder /api-reference/openapi-mintlify.yaml put /v2/project/folder `WRITE` access to the `PROJECT` module is required to access this endpoint # Update Project Phase Source: https://docs.sonderplan.com/api-reference/project/update-project-phase /api-reference/openapi-mintlify.yaml put /v2/project/phase `WRITE` access to the `PROJECT` module is required to access this endpoint # Create Quote Source: https://docs.sonderplan.com/api-reference/quote/create-quote /api-reference/openapi-mintlify.yaml post /v2/quote `WRITE` access to the `SALES` module is required to access this endpoint The `quoteCreated` webhook will be fired when this endpoint has run successfully # Delete Quote Source: https://docs.sonderplan.com/api-reference/quote/delete-quote /api-reference/openapi-mintlify.yaml delete /v2/quote `WRITE` access to the `SALES` module is required to access this endpoint # Duplicate Quote Source: https://docs.sonderplan.com/api-reference/quote/duplicate-quote /api-reference/openapi-mintlify.yaml post /v2/quote/duplicate `WRITE` access to the `SALES` module is required to access this endpoint The `quoteCreated` webhook will be fired when this endpoint has run successfully # Generate Quote PDF Source: https://docs.sonderplan.com/api-reference/quote/generate-quote-pdf /api-reference/openapi-mintlify.yaml get /v2/quote/pdf Retrieves a PDF‐formatted version of an existing quote. Clients issue a GET request to `/v2/quote/pdf?id={id}` where `{id}` is the numeric identifier of the quote you wish to download. On success, the server responds with `HTTP 200` and streams back a binary PDF `(Content-Type: application/pdf)` along with a Content-Disposition header that suggests the filename. Because this is a read-only operation, it is safe and idempotent, and responses can be cached by HTTP caches or CDNs. If no quote exists with the given ID, the endpoint returns HTTP 404 with a JSON error payload; any unexpected failure returns HTTP 500 with an explanatory message. `READ` access to the `SALES` module is required to access this endpoint # Get Quotes Source: https://docs.sonderplan.com/api-reference/quote/get-quotes /api-reference/openapi-mintlify.yaml get /v2/quote In Sonderplan, a quote is a detailed proposal that outlines the estimated costs for a project or set of bookings. Quotes typically include information such as the client, associated bookings, resources, rates, taxes, discounts, and any additional charges or custom details. They are used to provide clients with a clear breakdown of costs before confirming a project, helping ensure transparency and agreement on pricing. Once approved, quotes can often be converted into invoices or used as a basis for further planning. `READ` access to the `SALES` module is required to access this endpoint # Update Quote Source: https://docs.sonderplan.com/api-reference/quote/update-quote /api-reference/openapi-mintlify.yaml put /v2/quote `WRITE` access to the `SALES` module is required to access this endpoint The `quoteEdited` webhook will be fired when this endpoint has run successfully # Get Rate Schemes Source: https://docs.sonderplan.com/api-reference/rate-scheme/get-rate-schemes /api-reference/openapi-mintlify.yaml get /v2/rate-scheme Rate schemes function like rate cards, allowing you to define costs and discounts for each resource. They can be tailored based on criteria such as date, time, client, or a combination of these. Each rate scheme lets you specify hourly, daily, and weekly buy and sell rates, providing flexibility to match your pricing structure. `READ` access to the `ADMIN` module is required to access this endpoint # Update Rate Scheme Source: https://docs.sonderplan.com/api-reference/rate-scheme/update-rate-scheme /api-reference/openapi-mintlify.yaml put /v2/rate-scheme `WRITE` access to the `ADMIN` module is required to access this endpoint # Create User Source: https://docs.sonderplan.com/api-reference/user/create-user /api-reference/openapi-mintlify.yaml post /v2/user `WRITE` access to the `ADMIN` module is required to access this endpointIf you are using Sonderplan on a **Flexible Billing** plan, creating users will result in **additional charges** (calculated pro rata) being automatically charged to your credit card. # Delete User Source: https://docs.sonderplan.com/api-reference/user/delete-user /api-reference/openapi-mintlify.yaml delete /v2/user `WRITE` access to the `ADMIN` module is required to access this endpointIf you're using Sonderplan with a **Flexible Billing** plan, deleting users will generate unused time credits for the user. These credits will be automatically applied to your account and used toward future invoices. # Get Users Source: https://docs.sonderplan.com/api-reference/user/get-users /api-reference/openapi-mintlify.yaml get /v2/user A user in Sonderplan is an individual with access to the platform, typically associated with an account used to manage bookings, resources, projects, create quotes and invoices, and perform administrative tasks. Each user’s permissions are determined by their group membership, which assigns roles such as administrator, staff member, or limited-access user. These roles define what actions the user can perform and the data they can view or edit within the system. Every user is aliased to a contact record and can have personalized settings, including notification preferences and default configurations. `READ` access to the `ADMIN` module is required to access this endpoint # Update User Source: https://docs.sonderplan.com/api-reference/user/update-user /api-reference/openapi-mintlify.yaml put /v2/user `WRITE` access to the `ADMIN` module is required to access this endpoint # API Clients Source: https://docs.sonderplan.com/en/admin/api-clients Create and configure API clients to build custom applications using RESTful APIs, enabling flexible integration and development. API clients allow you to integrate external applications or services with Sonderplan using our RESTful API. Each API client is assigned to a specific Sonderplan user, inheriting their user group permissions and ensuring that the external application can perform only actions authorized for that user. This provides a secure and precise mechanism for managing integration points, custom applications, and automated workflows. We recommend creating separate API clients for each distinct use case or integration. By isolating API clients, you reduce risks associated with credential exposure or unauthorized access, and it becomes easier to audit and manage access, troubleshoot issues, and enforce precise permission scopes tailored to each integration scenario. ## Creating an API Client 1. Expand **Admin** then click **Integrations -> New -> Api Client**, the sidebar editor opens. Sonderplan new api client 2. Enter a **description** on the purpose of the API Client, for example *"Zapier client"* 3. Select the **User** that this API Client should be linked to. The API Client will have the same permissions as the User We recommend creating a dedicated user for your API integrations, placed in a User Group with the least permissions possible. 4. Click **Save** to create the API Client. 5. The Authentication Bearer Token is **displayed once only**. Be sure to copy the token before closing the API Client sidebar. Sonderplan api authentication token API Client tokens expire after a period of 5 years, but can be withdrawn and reset instantly. ## Modifying an API Client It is currently only possible to modify the description of an existing API client. To edit an API client: 1. Click the **Client Id** in the API Clients Data Table, this opens the API Client sidebar editor. 2. Edit the **Description** field 3. Click **Save** ## Deleting an API Client Deleting an API Client immediately revokes the authentication token so that it can no longer be used to make requests to the Sonderplan REST API. To delete an API client: 1. Click the **Client Id** in the API Clients Data Table, this opens the API Client sidebar editor. 2. Click the **** button in the bottom right corner of the editor. 3. Click the **Delete** button in the delete confirmation popover. Sonderplan delete api client ## Further Resources Explore our comprehensive REST API documentation to learn how to build powerful integrations, automate tasks, and extend your companies capabilities. Set up a new API client, integrate it with Zapier, and build a test Zap to automate workflows and streamline data connections. # Booking Statuses Source: https://docs.sonderplan.com/en/admin/booking-statuses Learn how Admins can create and manage custom booking statuses, complete with colour coding and notification settings to match your workflow. The *Booking Statuses* screen allows administrators to define and manage custom statuses used across all bookings in the Schedule. This feature helps categorise bookings by their stage or purpose, making it easier for your team to understand the status of work at a glance. To manage Booking Statuses go to **Schedule -> -> Booking Statuses**. Sonderplan Schedule Settings Booking Statuses Menu The Booking Statuses window will **open**. Sonderplan Booking Statuses Window ## Create / Edit a Booking Status 1. Use the button at the bottom to create a new Booking Status. 2. Enter the **name** of the Booking Status in the input text field. Common examples include "Pending", "Confirmed", "First Hold", "Second Hold" and "Maintenance". 3. Click the colour picker to assign a **colour** to the booking status. Bookings will use this colour when they have been assigned this status. If you are migrating from another tool, we recommend keeping the colours consistent with your existing tool to help make your teams adjustment easier. 4. The ** notification** toggle switch lets you control whether a status will trigger email notifications when bookings are created or updated. This is useful for suppressing notifications on tentative or internal bookings (e.g., "Pending" or "Hold"). 5. Use the ** drag** handles on the left to **reorder** statuses. This order will be reflected in the booking editor status menus. 6. Click **Save Changes** to apply your updates 7. Repeat these steps for to create as many statuses as you require. ## Delete a Booking Status 1. To delete a booking status click the button next to the custom status you wish to delete. 2. A delete confirmation popup is shown, click **Delete** to confirm the deletion. # Calendar Feeds & Subscriptions Source: https://docs.sonderplan.com/en/admin/calendar-subscriptions Learn how to generate and subscribe to iCalendar feeds, enabling automatic synchronization of your schedule with external calendar applications. Sonderplan supports exporting and importing calendar feeds so that bookings can be synchronised with third party calendar apps that support the standard iCalendar calendar format such as Apple Calendar, Google Calendar and Microsoft Outlook. ### Keep Calendar Feed URLs Private Calendar URL links should not be shared with anyone as this would give them access to your booking information. If you're worried the link has been compromised, you can toggle the calendar feed enable checkbox to regenerate the link. ## Export Feeds from Sonderplan To export bookings from Sonderplan to a third party calendar (eg Google Calendar, Outlook, Apple Calendar), you'll need to first decide which Sonderplan feed type is best suited to your needs. ```mermaid theme={null} flowchart LR A("Sonderplan
Booking Feed Export
(iCalendar)") --> B("Google Calendar") A --> C("Outlook Calendar") A --> D("Apple Calendar") A --> E("Sonderplan") A --> F("Any Calendar that supports iCalendar import") ``` #### Types of Export Feeds Sonderplan supports creating export iCalendar feeds at many different *levels*. To help avoid overloading external calendars, choose the type that gives the relevant people access to only the bookings they need to see. Exports bookings for a single user where they are assigned as a resource or as a client Exports all bookings assigned to a single project Exports all bookings for a single resource such as a room, person resource or equipment Exports bookings for all resources on a specific schedule #### Can feed subscribers make changes to bookings? No, the iCalendar format (.ics) does not support bidirectional updates. It is fundamentally a one-way feed format, intended primarily for exporting calendar data from a source (server/application) to a client. #### Feed Update Frequency When Bookings are created, edited or deleted, **Sonderplan will update all iCalendar feeds within 10 minutes**. It is up to the receiving calendar application (Apple Calendar, Google Calendar and Microsoft Outlook) to decide how often to check for updates. Generally most calendars check once every 24 hours. If after 24 hours changes to bookings are not still not syncing to your calendar, please try and toggle the calendar to try and force a re-sync. If this fails, please contact the support department of your calendar software for troubleshooting information. *** ### Personal (User) Feed Personal calendar feeds contain all the bookings that you are involved with. They are ideal if you want to have your relevant bookings from Sonderplan appear in your native calendar app on your phone. #### Inclusion Requirements One or more of the following parameters must be true for bookings to be shown in the **Personal Calendar Feed**. * Direct assignment of user resource * Booking's direct client is the user * Booking's organization matches the user's organization * Booking is linked to a project where the user is set as the project client, either directly or via common organization #### Create User Feed All Users can create a personal calendar feed for themselves. Click on the **sidebar menu -> your name -> My Account**. Under the **Personal Calendar Feed** section, click the **Enable Calendar Feed** checkbox. Creating a personal calendar feed on the My Account page You can copy the feed to your clipboard by clicking the button to the right of the text field. Paste this calendar url into your calendar application. #### Delete User Feed To delete the calendar feed, uncheck the **Enable Calendar Feed** checkbox. The feed will be deleted within 10 minutes. *** ### Project Feed To access this option you'll need to be in a group with access to the Administration module or assigned as a project admin within the relevant project Project feeds can keep your team up to date with the bookings related to a project, even if they don't have a Sonderplan account. #### Create a Project Feed To create a project feed, open the relevant **Project** -> click **Settings tab -> Project Booking Feed**, then click the **Enable Calendar Feed** checkbox. Creating a project calendar feed on the project settings page You can copy the feed to your clipboard by clicking the button to the right of the text field. Paste this calendar url into your calendar application. #### Delete a Project Feed To delete the calendar feed, uncheck the **Enable Calendar Feed** checkbox. The feed will be deleted within 10 minutes. *** ### Resource Feed Individual resource calendar feeds can be used to display upcoming bookings on most meeting room screens. The meeting room screen must support importing iCalendar feeds. #### Create a Resource Feed To create a resource feed click on the **sidebar menu -> Admin -> Resources -> *"Name of the resource"* -> Booking Calendar Feed**, then click the **Enable Calendar Feed** checkbox. Creating a resource calendar feed in the resource editor page You can copy the feed to your clipboard by clicking the button to the right of the text field. Paste this calendar url into your calendar application. #### Delete a Resource Feed To delete the calendar feed, uncheck the **Enable Calendar Feed** checkbox. The feed will be deleted within 10 minutes. *** ### Schedule Feed Schedule feeds contain all the bookings for all the resources assigned to a particular schedule. #### Create a Schedule Feed To create a schedule feed click on the **sidebar menu -> Admin -> Schedules -> "Name of the schedule" -> **, then click the **Enable Calendar Feed** checkbox. Creating a schedule calendar feed in the schedule editor page You can copy the feed to your clipboard by clicking the button to the right of the text field. Paste this calendar url into your calendar application. #### Delete a Schedule Feed To delete the calendar feed, uncheck the **Enable Calendar Feed** checkbox. The feed will be deleted within 10 minutes. *** ## Import Feeds to Sonderplan Sonderplan supports importing and synchronising with third party calendar services such as Google Calendar, Office 365 or any service using the standard iCalendar calendar feed format. **We refer to the importing of calendar feeds as "Calendar Subscriptions".** ```mermaid theme={null} flowchart LR B("Google Calendar") --> A("Sonderplan
Booking Feed Import
(iCalendar)") C("Outlook Calendar") --> A D("iCloud Calendar") --> A E("Sonderplan") --> A F("Any Calendar that supports iCalendar export") --> A ``` You can also use the import calendar subscriptions feature to automatically sync bookings from Sonderplan itself, for example to automatically copy bookings from one resource to another, or to enable collaboration on a project with another company who also uses Sonderplan. #### Import Update Frequency We attempt to check for updates once an hour but this may vary depending on traffic and server load. If you have concerns about the synchronisation, please check the calendar subscription logs to see when the last most recent update was. #### Account Limits The amount of calendar subscriptions you can create depends on your subscription package. Please contact Sonderplan support if you wish to purchase additional calendar subscriptions. ### Create Calendar Subscription To create a new calendar subscription, navigate to the **Schedule -> ** button **-> Calendar Subscriptions**. Creating a schedule calendar subscription menu In the **Calendar Sharing (Feeds) -> Import** window, click the **** button and paste in your calendar feed url (.ics). Next click the **Booking Properties** button and set the resources, status, project and client that will be assigned to all bookings created from the feed. Add booking properties to calendar subscription import Finally, click the **** button to create the calendar subscription. Due to some current technical limitations, bookings added via calendar feeds do not live reload on the schedule. You may need to periodically refresh the browser to see new bookings. ### Troubleshooting Calendar Subscriptions If you are having any issues with calendar subscription imports, please first check the logs for the subscription by clicking on the logs icon next to the relevant subscription. If too many errors are encountered, the subscription will also be automatically disabled. Calendar subscription import logs # Custom Fields Source: https://docs.sonderplan.com/en/admin/custom-fields Extend Sonderplan’s data model to capture the unique information your team needs with flexible, user-defined custom fields. Custom Fields let you tailor Sonderplan to your team’s exact needs by adding your own data fields across modules—whether it’s recording project-specific notes, adding equipment serial numbers, or tracking custom statuses. In this section, you’ll learn how to create, configure and manage custom fields, choose the right field types for your data, and control where and when they appear in your workflows. Sonderplan custom fields administration panel screenshot ## Field Types Sonderplan offers six versatile field types to capture whatever data your business needs: ### Text Ideal for single‐line inputs like serial numbers or short labels. Sonderplan Text Custom Field Example ### Textarea Perfect for multi‐line notes, descriptions, or detailed comments, this field dynamically expands as you type. Sonderplan Text Area Custom Field Example ### Select Menu Great for a predefined list of options—perfect for statuses or categories. Sonderplan Select Menu Custom Field Example ### Number For quantitative values, allowing integer or decimal precision. Sonderplan Number Custom Field Example ### Date To record calendar dates (e.g., deadlines or delivery dates), appears as a datepicker in modern browsers. Sonderplan Date Custom Field Example ### Date Time When you need both date and time (e.g., timestamped events), appears as a date / time picker in modern browsers. Sonderplan DateTime Custom Field Example Each field type can be set to be **required**, meaning it must be filled in with a value before the associated module (eg booking, project) can be saved. ## Field Modules Custom fields are added to specific Sonderplan modules, allowing them to be extended to capture the data specific to your business. Below is a table of the modules that allow custom fields: | Module Name | Notes | | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | | Booking | | | Project | | | People | Contacts Module | | Organizations | Contacts Module | | Quotes | | | Invoices | | | Quotes & Invoices | Fields and their values appear on both quotes and invoices. Quotes that are converted to invoices also retain these values as they are migrated. | | Billable Items | | ## Create & Edit Custom Field From the **Admin -> Custom Fields page**, click the **+ New** button in the header to create a new custom field. If you want to edit an existing field, click on the name of the field in the Custom Fields table. In the New Custom Field sidebar editor that appears: * **Name (required)**: Give the Custom Field a clear, title (e.g. “Booking Type”). This title will be shown in the form * **Description (optional)**: This text will be shown in the help bubble next to the field * **Field is required** - When this checked, this field must be filled before the form will allow saving. * **Module** - Select the module that this custom field will be attached to (see [Field Modules](#field-modules) table above) * **Type** - Select the type of this custom field (see [Field Types](#field-types) section above) ### Select Menu Options When selecting **Select Menu** as the type, an additional **Select Menu Options** section is shown. This section allows you to add, edit and delete the menu options as well as adjust their order.
## Delete Custom Field Open the Custom Fields’s edit panel as above. At the bottom-left of the panel, click the **** button. Confirm the deletion in the prompt. The custom field will be removed from the list immediately. Any custom field data associated with this field will also be deleted # Global Contact Settings Source: https://docs.sonderplan.com/en/admin/global-contact-settings Configure settings related to Contacts for all Users | Setting | Description | Options | | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------- | | **Hide people from client menus** | When set to **Yes**, only organisations can be selected in the client menus. People clients can still be selected as the **Client Contact** |
  • Yes
  • No
| # Global Project Settings Source: https://docs.sonderplan.com/en/admin/global-project-settings Configure settings including the project code counter and notifications The Global Project Settings window allows administrators to customise settings that affect Projects for all users. To open this settings window go to **Project -> -> Global Project Settings**. | Setting | Description | Options | | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | -------------------------------- | | **Next Project Code** | This setting allows you to start the project shortcode counting at a different number | | | **Enable Project Notifications** | If enabled, project notifications will be sent to project participants about any changes made to projects they've been added to |
  • Yes
  • No
| # Global Sales Settings Source: https://docs.sonderplan.com/en/admin/global-sales-settings Configure settings related to Quotes and Invoices for all Users The Global Sales Settings window allows administrators to customise settings that affect Quotes and Invoices for all users. To open this settings window go to **Sales -> -> Global Sales Settings**. | Setting | Description | Options | | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- | | **Contact Details** | Enter your contact details as they should appear when including the **\[contactDetails]** shortcode in your Quote and Invoice Themes | | | **Default Quote Terms** | Enter the default terms and conditions that should be prefilled on quotes, and then output when including the **\[quoteTerms]** shortcode in your Quote themes | | | **Default Invoice Terms** | Enter the default terms and conditions that should be prefilled on invoices, and then output when including the **\[invoiceTerms]** shortcode in your Invoice themes | | | **Reply-to Email Address** | We'll email quotes and invoices on your behalf. If you don't provide a 'reply to' email address here, we'll use the one linked to the account of the person sending the invoice or quote. | | | **Include Sender Options** | Choose whether you want a copy of the quotes and invoices to be sent to your email address. |
  • CC
  • BCC
  • None
| | **Default Currency** | The default currency of the new quotes, invoices, resource rates, billable items and services | All standard currencies | | **Quote Prefix** | The prefix added to quote numbers. Only applies to future quotes and will not affect existing quotes | | | **Next Quote Number** | Quote number assigned to the next created quote. This number must be higher (>) than any existing quotes generated | | | **Next Invoice Number** | Invoice number assigned to the next created invoice. This number must be higher (>) than any existing invoices generated | | # Global Schedule Settings Source: https://docs.sonderplan.com/en/admin/global-schedule-settings Configure settings including booking notifications, clash detection, and required fields to customise the scheduling experience to your team's needs. The *Global Schedule Settings* window allows administrators to customise settings that affect the **Schedule for all users**. To open this settings window go to **Schedule -> -> Global Schedule Settings**. Sonderplan Global Schedule Settings Menu ### Global Settings The following settings are available in the Global Schedule settings window. | Setting | Description | Options | | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------- | | **Automatically calculate rates** | If enabled, Sonderplan will automatically calculate rates for each of the selected booking resources. |
  • Enabled
  • Not enabled
| | **Enable booking notifications** | When set to yes, Sonderplan will send notification emails to any user / resources added to the booking. |
  • Yes
  • No
| | **BCC notification emails to administrators** | When set to yes, Sonderplan will BCC administrators on notification emails to any user / resources added to the booking. |
  • Yes
  • No
| | **Disable clash detection (resources)** | Use the Shift key to select one or more resource types for which booking clashes should not be checked for |
  • Room
  • Person
  • Equipment
  • Action
| | **Disable clash detection (statuses)** | Use the Shift key to select one or more statuses for which booking clashes should not be checked for | *All custom booking statuses* | | **Restrict editing of bookings** | If set to yes, only the original creators of bookings can edit / delete their own bookings. Administrators can continue to edit / delete all bookings. |
  • Yes
  • No
| | **Required booking fields** | The **resources, project, client** and **status** booking fields can be selected as mandatory, requiring at least one option to be filled in |
  • Not required
  • Required
| # Import Billable Items Source: https://docs.sonderplan.com/en/admin/import-billable-items Sonderplan supports importing Billable Items from CSV files, allowing you to quickly bring existing Billable Items into your workspace ## Supported File Format * **CSV (.csv)** * UTF-8 encoded * Must follow the Sonderplan CSV template structure You can download the template directly from the import screen under **Sales -> Billable Items -> -> Import** Sonderplan Billable Items Import Each row in the CSV represents a billable item. The following fields are supported: * Item name * Description * Unit name (e.g. per hour, per export, per package) * Buy cost * Sell cost * Currency * Tax name (e.g. GST, VAT) Before starting the import, please make sure that any [Sales Taxes](/en/admin/sales-taxes) referenced have already been created with the identical name. ## Duplicate Detection Before saving, Sonderplan checks for duplicated billable items to help prevent accidental duplicates. You can review all detected items before completing the import and remove individual rows if required. ## How to Import Billable Items 1. Go to **Sales -> Billable Items → -> Import** 2. Click **Download the template CSV** and populate it with your data 3. Click **Choose file** and select your completed CSV file 4. Review the imported items in the preview table 5. Click **Import Billable Items** to save them to your workspace ### Review Before Importing Before finalising the import, Sonderplan provides a preview table where you can: * Confirm item names and descriptions * Verify buy and sell costs * Check currency and tax settings * Remove individual items from the import Items are not saved until you confirm the import by clicking the **Import Billable Items** button. # Import Services Source: https://docs.sonderplan.com/en/admin/import-services Sonderplan supports importing Services from CSV files, allowing you to quickly bring existing Services into your workspace ## Supported File Format * **CSV (.csv)** * UTF-8 encoded * Must follow the Sonderplan CSV template structure You can download the template directly from the import screen under **Sales -> Services -> -> Import** Sonderplan Services Import ## What Gets Imported Each row in the CSV represents a service. The following fields are supported: * Service name * Description * Booking description template * Hour buy rate * Hour sell rate * Day buy rate * Day sell rate * Week buy rate * Week sell rate * Currency * Tax name (e.g. GST, VAT) Before starting the import, please make sure that any [Sales Taxes](/en/admin/sales-taxes) referenced have already been created with the identical name. ## Duplicate Detection Before saving, Sonderplan checks for duplicated services to help prevent accidental duplicates in your service list. You can review all detected services and remove individual rows before completing the import. ## How to Import Services 1. Go to **Services → Import** 2. Click **Download the template CSV** and populate it with your services 3. Click **Choose file** and select your completed CSV file 4. Review the imported services in the preview table 5. Click **Import Services** to save them to your workspace ### Review Before Importing Before finalising the import, Sonderplan provides a preview table where you can: * Confirm service names and descriptions * Verify buy and sell rates across hour, day, and week pricing * Check booking description templates * Confirm currency and tax settings * Remove individual services from the import No services are saved until you confirm the import by clicking the **Import Services** button. # Manage Project Folders Source: https://docs.sonderplan.com/en/admin/project-folders Organise your projects into folders for better structure and easier navigation—create, rename, rearrange, and delete folders The Manage Project Folders feature, accessed by going to **Projects -> -> Project Folders**, allows administrators to organise projects into folders for easier navigation and improved structure. Sonderplan Manage Project Folders ### Create Folders Click the ** Project Folder** button to add a new folder to the project tree. You can create top-level folders or subfolders as needed. ### Rename Folders To rename a folder, click on it and press Return ↵ on your keyboard to begin editing the name. Press Return ↵ again to save the changes to the project folder name. Only project folders can be renamed in this window, to rename a Project, open it in the Project Editor window ### Rearrange Projects / Folders To move a project or folder, **click and hold** its name, then **drag it** to a different folder or to the top level of the project tree. ### Delete Folders To delete a project folder, click the ** Delete Project Folder** button. A confirmation window will appear, click **Delete** again to confirm the delete. Only the Project folder will be deleted, any nested projects will be kept and moved to the top of the tree # Quote & Invoice Themes Source: https://docs.sonderplan.com/en/admin/quote-invoice-themes Customize and brand your quotes and invoices with themes tailored to your business identity. The *Quote / Invoice Theme Editor* allows administrators to create and customise multiple quote and invoice themes that reflect their brand. Companies operating under multiple business names can create multiple different themes that can be selected on each quote or invoice. Sonderplan Default Quote Template From this point, we'll mostly talk about **invoice themes**, however quote templates are almost identical! To open the editor, in the top right corner of the **Sales** page, **click** the ** -> Edit Themes**. Sonderplan Open Quote and Invoice Theme Editor ## Create / Edit a Theme The theme editor is a representation of the final invoice output. The page is broken into 9 sections which can have text and HTML elements added to them. When creating a new theme, the system default theme is loaded in by default, but you can add and modify any of the Shortcodes that you require. Sonderplan Quote and Invoice Theme Editor ### New Theme Button To create a new theme, click on the **New** (1) button and select either **New Quote Theme** or **New Invoice Theme**. This action will open an editable template based off the default themes, allowing you to fully customize the layout, content, and styling according to your needs. ### Theme Name Enter a clear and descriptive theme name (2) for internal use only. These names help your team quickly identify the purpose or style of each theme but will not be displayed on the final document sent to clients. For instance, you could use theme names like Company Name — 30 Day Terms or Premium Client Invoice. ### Invoice Title Specify the title (3) you want to appear prominently at the top of your invoice or quote. Examples include Invoice, Tax Invoice, or Quotation. This is visible on the final document delivered to your client. ### Upload Logo You can brand your invoices by uploading your company logo. Simply click on the **Upload Logo** (4) button, select your logo file from your device, and it will appear automatically on all invoices generated using this theme. ### Shortcodes Shortcodes displayed in the right sidebar (5) represent dynamic placeholders that are automatically replaced with relevant details when generating your invoice or quote. For example, shortcodes such as `[invoiceNumber]` or `[companyName]` are replaced by the actual invoice number and your company's name. If there's no data available for a shortcode at the time of generation, that shortcode will be left blank. #### Dynamic Client / Contact *** | Shortcode | Description | | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `[toFirstName]` | Client contact person’s first name — if no contact person is set, falls back to the client’s first name (for a person) or company name (for an organization) | | `[toLastName]` | Client contact person’s last name — if no contact person is set, falls back to the client’s last name (for a person) or is left blank (for an organization) | | `[toOrganization]` | Client contact person’s linked organization name — if no contact person is set, falls back to the client’s linked organization name (for a person) or is left blank | | `[toAddress]` | The complete address of the client | | `[toAddressLine1]` | The first line of the client’s address | | `[toAddressLine2]` | The second line of the client’s address | | `[toAddressLine3]` | The third line of the client’s address | | `[toAddressCity]` | The client’s city | | `[toAddressState]` | The client’s state/province | | `[toAddressPostcode]` | The client’s postcode/ZIP | | `[toAddressCountry]` | The client’s country | | `[toEmail]` | Email address of the client | | `[toPhone]` | Phone number of the client | #### Client *** | Shortcode | Description | | ----------------- | ------------------------------------ | | `[clientName]` | The name of the client | | `[clientAddress]` | Formatted address of the client | | `[clientEmail1]` | Primary email of the client | | `[clientEmail2]` | Secondary email of the client | | `[clientEmail3]` | Tertiary email of the client | | `[clientPhone1]` | Primary phone number of the client | | `[clientPhone2]` | Secondary phone number of the client | | `[clientPhone3]` | Tertiary phone number of the client | #### Client Contact Person *** | Shortcode | Description | | ------------------------------ | -------------------------------------------- | | `[clientContactPersonName]` | The name of the client contact person | | `[clientContactPersonAddress]` | Formatted address of the contact person | | `[clientContactPersonEmail1]` | Primary email of the contact person | | `[clientContactPersonEmail2]` | Secondary email of the contact person | | `[clientContactPersonEmail3]` | Tertiary email of the contact person | | `[clientContactPersonPhone1]` | Primary phone number of the contact person | | `[clientContactPersonPhone2]` | Secondary phone number of the contact person | | `[clientContactPersonPhone3]` | Tertiary phone number of the contact person | #### Invoice Fields *** | Shortcode | Description | | ------------------------ | ---------------------------------------------- | | `[invoiceNumber]` | Number of the invoice | | `[invoiceTotal]` | Total amount of the invoice | | `[invoiceSubTotal]` | Sub‑Total amount of the invoice | | `[invoiceDiscountTotal]` | Discount total amount of the invoice | | `[invoiceNetTotal]` | Net Total amount of the invoice | | `[invoiceTaxTotal]` | Total Tax amount of the invoice | | `[invoiceDate]` | Date the invoice was created | | `[invoiceDue]` | Due date of the invoice | | `[invoiceTerms]` | The invoice terms specified within the invoice | | `[invoiceReference]` | The invoice reference field value | | `[companyName]` | Your company name (from System Settings) | | `[contactDetails]` | Contact details (from Global Sales Settings) | #### Project Fields *** | Shortcode | Description | | ---------------------- | -------------------------------------- | | `[projectName]` | Name of the Project | | `[projectCode]` | Shortcode assigned to the Project | | `[projectDescription]` | Description of the Project | | `[projectStartDate]` | The start date defined for the project | | `[projectEndDate]` | The end date defined for the project | ### Invoice Settings Customize your invoice layout by choosing which item columns or total row elements to display or hide (6). This allows you to create tailored invoices suitable for different types of clients or projects, ensuring clarity and relevance in your financial communications. Sonderplan Customise visible item columns and rows #### Item Column Visibility *** | Setting | Description | | ----------- | ------------------------------------------------------ | | Item | Show or hide the Item column in the line items. | | Description | Show or hide the Description column in the line items. | | Quantity | Show or hide the Quantity column in the line items. | | Price | Show or hide the Price column in the line items. | | Discount | Show or hide the Discount column in the line items. | | Tax | Show or hide the Tax column in the line items. | | Total | Show or hide the Total column in the line items. | #### Total Row Visibility *** | Setting | Description | | -------------- | ---------------------------------------------------------- | | Sub Total | Show or hide the Sub Total row in the totals section. | | Discount Total | Show or hide the Discount Total row in the totals section. | | Net Total | Show or hide the Net Total row in the totals section. | | Tax Total | Show or hide the Tax Total row in the totals section. | | Total | Show or hide the Total row in the totals section. | ### Styles Use custom CSS code (7) to personalize the appearance of your invoice or quote templates fully. This powerful feature lets you adjust fonts, colors, layout spacing, and more, ensuring your documents reflect your brand identity precisely. Sonderplan Invoice Selectors #### Custom Page Footer A customised footer can be embedded on each page by creating an image file with the dimensions of `120px x 738px`. The image should be exported as `Footer.png` and then converted to a `base64` string by running the following commands in Terminal on a Mac computer. ```bash Convert png to base64 theme={null} echo "data:image/png;base64,$(base64 -i Footer.png)" > output.txt ``` Next, copy and paste the `CSS` code into the `Custom CSS Code` section in the Sonderplan invoice theme editor. Finally open the newly created `output.txt` file generated by the above `base64` commands and copy the contents into the `background: url("");` code section. ```css Page footer example icon="css" theme={null} @media print { @page { margin-bottom: 130px!important; @bottom-center { height: 120px; width: 738px; content: ""; background: url("data:image/png;base64,i....."); background-size: contain; } } } ``` ### Email Template (8) Predefine the email content and subject lines used when sending invoices through the built-in Send Invoice function. Creating standard email templates helps maintain consistency, enhances professionalism, and speeds up your invoicing process. ### Save Once you've customized your theme, click the **Save** (9) button to store your changes. This ensures your template settings, styling, and customizations are preserved and ready for future use.\` # Resources Source: https://docs.sonderplan.com/en/admin/resources Manage and organize bookable resources such as rooms, equipment, and personnel to streamline scheduling and maximize utilization. In Sonderplan, Resources are the individual assets, spaces, people, and actions that you can book or track. Every booking refers to one or more Resources, and grouping them logically helps keep your calendars organized and ensures the right items are available to the right teams. You can manage Resources by navigating to **Admin → Resources** in the sidebar, where you’ll find a list of all existing items and controls to create, edit, or delete them. Sonderplan Admin Resources ## Types of Resources ### People Living and breathing, these “human resources” drive your projects and studio operations. Each person must be created as Contact before being created as a Resource. Once added, you can assign them to Workspaces, set rates, or track their availability just like any other asset. ### Rooms The default Resource type, Rooms represent physical spaces you book: * Edit Suites (e.g. Edit 1, Edit 2…) * Meeting Rooms * Studios * Any other dedicated space (green rooms, screening rooms, etc.) Rooms let you define capacity, working hours, and which Workspaces they belong to. ### Equipment Any tangible item that can be reserved or that you’d like to track inventory for: * Cameras * Laptops and workstations * Audio recorders, lighting kits * Props, rigs, or other production hardware In a future release, Equipment Resources will include built-in inventory management—purchase dates, warranty details, and stock levels. ### Action Resources These are non-physical entries used to represent common staff activities or statuses in your schedule: * Sick Leave * Holidays * Training Sessions * Administrative Tasks Action Resources appear in the Schedule just like any other Resource, allowing you to block off time or record internal activities without tying up physical rooms or equipment. ## Creating a New Resource If you are using Sonderplan on a **Flexible Billing** plan, creating resources will result in **additional charges** (calculated pro rata) being automatically charged to your credit card. Click the **New** dropdown menu button and click **Resource** if you wish to create a **Room**, **Equipment** or **Action** resource. Sonderplan New Resource Menu If you wish to create a **Person** resource, click **Resource from Contact**. Or click **Resource Group** if you want to create a new group to organise similar resources together. ### People Resources In the **New Resource** sidebar editor Sonderplan New Person Resource Select contact 1. Select an existing **Contact** who should be added as a resource 2. Alternatively, you can click the **New Contact** button which will allow you to create a new contact immediately Sonderplan New Person Resource Selected 3. Select a **Colour** for the resource. Bookings with this resource added will take this colour on. 4. Select a **Parent Resource Group** (optional) if you want to nest the resource with other similar ones 5. Enter an optional **Description** that will be shown on the Schedule 6. Expand the **Workspace** section and click the checkbox next to any workspace you wish to add this resource to 7. Enter a **Rate** for this resource (see section below) 8. Resource attributes (coming soon) 9. Open the **Booking Calendar Feed** section to create a resource feed (once the booking has been saved) ### Room, Equipment and Actions In the **New Resource** sidebar editor: 1. Enter a **Name** of the resource 2. Select a **Colour** for the resource. Bookings with this resource added will take this colour on. 3. Select an **Icon** which is shown on the Schedule resource timeline. 4. Select the **Type** of the resource as either *Room*, *Equipment* or *Action* 5. Select a **Parent Resource Group** (optional) if you want to nest the resource with other similar ones 6. Enter an optional **Description** that will be shown on the Schedule 7. Expand the **Workspace** section and click the checkbox next to any workspace you wish to add this resource to Sonderplan New Room Resource Editor ## Editing a Resource In the Resources list, click the name of the resource name (or edit icon) for the Resource you wish to change. Make any changes to the resource, when finished, click **Save** to apply your changes. ## Deleting a Resource If you're using Sonderplan with a **Flexible Billing** plan, deleting resources will generate unused time credits for the user. These credits will be automatically applied to your account and used toward future invoices. Open the Resource’s edit panel as above. At the bottom-left of the panel, click the **** button. Confirm the deletion in the prompt. The Resource will be removed from the list immediately. The deleted resource will be kept on bookings, but marked as `(deleted)`. # Sales Taxes Source: https://docs.sonderplan.com/en/admin/sales-taxes Define and manage sales tax rates to ensure accurate totals on quotes and invoices Sonderplan allows administrators to configure multiple Sales Taxes that are automatically applied to quotes and invoices throughout your account. This provides flexibility to accommodate tax rates that frequently change and vary by region. Sonderplan Sales Taxes Menu ## Accessing Sales Tax Settings To manage your sales taxes: 1. Go to the **Sales** section in the sidebar. 2. Click the button in the top-right of the Sales page. 3. Select **Sales Taxes** from the dropdown menu. This will open the Sales Taxes management panel where you can define your tax rates. ## Managing Tax Rates In the Sales Taxes window, you can: * **Add a Tax** - Click the icon to create a new tax entry. * **Name the Tax** - Enter a label like GST, VAT, or Service Tax in the Tax Name field. * **Set the Rate** - Enter the percentage value (e.g., 10.00 for 10%). * **Delete a Tax** - Use the icon next to a row to remove that tax entry. Once your taxes are set, click **Save Changes** to apply them across your quotes and invoices. Sonderplan Sales Taxes User Interface # SAML Single Sign On (SSO) Source: https://docs.sonderplan.com/en/admin/saml-sso-settings Manage SAML Single Sign-On (SSO) integration for secure and seamless user access. ## What is SAML? Security Assertion Markup Language (SAML, pronounced SAM-el) is an open standard for exchanging authentication and authorization data between parties, in particular, between an identity provider and a service provider. In non-jargon speak, SAML SSO (Single Sign On) lets your users login to Sonderplan (the service provider) with third party identity providers, such as Google Workspace, Okta, Azure Active Directory and Onelogin. SAML SSO is available to all of our customers and we recommend implementing it to boost your companies security posture SAML reduces friction, allowing your users to access Sonderplan with their existing company controlled user account. Implementing SAML also benefits your businesses IT administrators, with less admin overhead and improved security by centralising user accounts. SAML isn't just for large enterprise, it's recommended for any business already running a central user directory such as Google Workspace. ## Enabling SAML SSO To enable SAML SSO go to **Admin -> System Settings**, expand the **SAML Sign On (SSO) Settings** accordion and then change the **Enable SAML SSO** option to **Enabled**.
### Identity Provider Details These settings will be supplied via your Identity Provider, eg. Google Workspace, Microsoft Azure Active Directory etc. Please copy and paste them into the relevant fields and refer to the guides further down on how to configure SAML within your Identity Provider. #### Identity Provider Name This field will be displayed on the SSO sign in button on the login screen. #### IDP Entity ID / Issuer URL Identity Provider Issuer Entity ID, often a URL, eg. [http://okta.com/Eksj7Hhsk24klljsd](http://okta.com/Eksj7Hhsk24klljsd) #### IDP Login URL / SSO Endpoint The URL that Sonderplan will call to request a user login from the Identity Provider #### IDP Logout URL / SLO Endpoint The URL that Sonderplan will call to request a user logout to the Identity Provider #### IDP X.509 Certificate The authentication certificate issued by your Identity Provider ## Configuration Guides These guides cover the most common identity providers that our customers use, however if you're running into issues or need help with configuring a different provider, please reach out to our support team. ### Google Workspace To configure Sonderplan SAML SSO with Google Workspace, please expand and follow the instructions in each section: 1. Login to the Google Workspace Admin Console and navigate to **Apps -> Web and mobile apps**. 2. Click **Add app -> Add custom SAML app** Google Workspace Admin Console SAML setup page 1 screenshot 3. In **App details** enter ***Sonderplan*** as the **App name**, with a **Description** of ***Resource scheduling platform*** 4. Upload the App Icon which you can save from here: Sonderplan App Icon 5. Click **Continue** Google Workspace Admin Console SAML setup page 2 screenshot 1. In Sonderplan, head over to **Admin -> System Settings** and expand the **SAML Single Sign On (SSO)** settings panel 2. Enable SAML SSO and enter ***Google Workspace*** as the **Identity Provider Name** 3. Copy the **SSO URL** from Google Workspace to -> **Identity Provider Login URL / SSO Endpoint** AND **Identity Provider Logout URL / SLO Endpoint** in Sonderplan 4. Copy the **Entity ID** from Google Workspace to -> **Identity Provider Entity ID / Issuer URL** in Sonderplan 5. Copy the **Certificate** from Google Workspace to -> **Identity Provider X.509 Certificate** in Sonderplan 6. Click **Save Changes** in the top right corner of Sonderplan 7. In Google Workspace, click **Continue** Sonderplan SAML IDP Settings screenshot Google Workspace Admin Console SAML setup page 3 screenshot 1. Copy the **Recipient / ACS (Consumer) URL** from Sonderplan to -> **ACS URL** in Google Workspace Admin Console 2. Copy the **Entity ID / Audience / Metadata URL** from Sonderplan to -> **Entity ID** in Google Workspace Admin Console 3. Make sure **Name ID** in Google Workspace Admin Console is set to **Basic information > Primary Email** 4. Click **Continue** Google Workspace Admin Console SAML setup page 4 screenshot 1. Configure the mapping of Google Directory attributes to the attributes of Sonderplan. Please refer to the screenshot above or table below. \| Google Directory attributes | App attributes | \|------------------------------------|----------------| \| Basic Information -> Primary email | User.email | \| Basic Information -> First name | User.firstName | \| Basic Information -> Last name | User.lastName | 2. Click **Finish** Once the app has been created, you'll need to enable the SAML app for your Google Workspace users. Google Workspace Admin Console SAML app user access 1. In the **Google Workspace Admin Console** navigate to **Apps -> Web and mobile apps -> Sonderplan -> User Access** change the access setting to **ON for everyone** 2. Finally, you'll need to configure [your users in Sonderplan for SSO](/admin/saml-sso-settings#configure-users-for-sso) ### Microsoft Entra To configure Sonderplan SAML SSO with Microsoft Entra, please expand and follow the instructions in each section: 1. Login to the Microsoft Azure Portal and navigate to **your directory -> Enterprise Applications -> All applications -> New application** Microsoft Azure Portal create new enterprise application 2. In the Microsoft Entra Gallery, click **Create your own Application** Microsoft Azure Portal create own SAML app 3. Enter ***Sonderplan*** as the name of the app 4. Check that the option *Integrate any other application you don't find in the gallery (Non-gallery)* is selected 5. Click **Create** Microsoft Azure Portal configure saml sso 1. In the newly created app *Sonderplan* app, expand the **Manage** section, then click **Single sign-on -> SAML** 2. On the next screen, in the *Basic SAML Configuration*, click **Edit** Microsoft Azure Portal configure saml step one 3. In another window, open Sonderplan and head over to **Admin -> System Settings** and expand the **SAML Single Sign On (SSO)** settings panel 4. Enable SAML SSO and enter ***Microsoft Entra*** as the **Identity Provider Name** then scroll down to the "*2. Service Provider Details (Sonderplan)*" section Sonderplan SAML SSO copy settings for identity provider 5. Copy the **Entity ID / Audience / Metadata URL** from Sonderplan to -> **Identifier Entity ID** in the Azure SAML configuration 6. Copy the **Recipient / ACS (Consumer) URL** from Sonderplan to -> **Reply URL (Assertion Consumer URL)** in the Azure SAML configuration 7. Copy the **Single Logout URL** from Sonderplan to -> \*\*Logout Url (Optional) in the Azure SAML configuration 8. Finally click **Save** at the top of the *Basic SAML Configuration* screen in the Azure Portal, then click the **x** in the top right corner Microsoft Azure Portal configure saml step one Microsoft Azure Portal configure saml sso 1. Still in the Azure Portal, but back on the *SAML-based Sign-on* page for the Sonderplan Enterprise app, scroll down to section **3 SAML Certificates** 2. Download the **Certificate (Base64)**, open the **Sonderplan.cer** file in a text editor on your computer and copy the entire contents of the file into the **Identity Provider X.509 Certificate** in the Sonderplan SAML SSO settings textarea 3. Copy the **Login URL** from the Azure Portal to -> **Identity Provider Login URL / SSO Endpoint** in Sonderplan 4. Copy the **Microsoft Entra Identifier** from the Azure Portal to -> **Identity Provider Entity ID / Issuer URL** in Sonderplan 5. Copy the **Logout URL** from the Azure Portal to -> **Identity Provider Logout URL / SLO Endpoint** in Sonderplan 6. Click **Save Changes** in the top right corner of Sonderplan Sonderplan SAML SSO copy settings for identity provider Microsoft Azure Portal configure saml sso 1. Still in the Azure Portal, but back on the *SAML-based Sign-on* page for the Sonderplan Enterprise app, scroll down to section **2 Attributes & Claims** and click **Edit** Microsoft Azure Portal configure saml sso 2. In the *Attributes & Claims* screen, click the **Unique User Identifier (Name ID)** claim Microsoft Azure Portal configure saml sso 3. Change the **Source Attribute** to ***user.mail*** and click **Save** Microsoft Azure Portal configure saml sso 1. Still in the Sonderplan Enterprise application, expand the **Manage** section, then click on **Properties** 2. Ensure the **Enabled for users to sign-in?** slider is set to **Yes** 3. Upload the App Icon to the **Logo** field, which you can save from here: Sonderplan App Icon 4. Change **Assignment required?** slider to **No** 5. Click **Save** in the top left corner 6. Finally, you'll need to configure [your users in Sonderplan for SSO](/admin/saml-sso-settings#configure-users-for-sso) ### Okta To configure Sonderplan SAML SSO with Okta, please expand and follow the instructions in each section: Otka create new SAML app 1. In the Okta Admin Console, go to **Applications -> Applications** 2. Click **Create App Integration** 3. Select **SAML 2.0** as the Sign-in method, then click **Next** Otka create new SAML app 4. Enter **Sonderplan** as the **App Name** 5. Upload the App Icon to the **Logo** field, which you can save from here: Sonderplan App Icon 6. Then click **Next** 1. In Sonderplan, head over to **Admin -> System Settings** and expand the *SAML Single Sign On (SSO)* settings panel 2. Enable **SAML SSO** and enter **Okta** as the Identity Provider Name 3. Leave the remaining fields blank for now, and scroll to the section titled *2. Service Provider Details (Sonderplan)* Sonderplan copy service provider settings 4. Copy the **Recipient / ACS (Consumer) URL** from Sonderplan to -> **Single sign-on URL** in Okta Admin 5. Copy the **Entity ID / Audience / Metadata URL** from Sonderplan to -> **Audience URI (SP Entity ID)** in Okta Admin Okta Admin SAML setup enter sp settings screenshot 6. Make sure **Name ID format** in Okta Admin is set to **Unspecified** 7. Set **Application username** in Okta admin to **Email** 8. In the **Attribute Statements (Optional)** section, define the following mapping: | Name | Name format | Value | | -------------- | ----------- | -------------- | | User.email | Unspecified | user.email | | User.firstName | Unspecified | user.firstName | | User.lastName | Unspecified | user.lastName | 9. Click **Next** 10. Select **I'm an Okta customer adding an internal app** 11. Check **This is an internal app that we have created** 12. Click **Finish** Okta Admin SAML copy idp settings screenshot 1. In the Okta Admin panel, click **Sign On** within the *Sonderplan*\* application and scroll down to the **SAML 2.0** section 2. Copy the **Sign on URL** from Okta to -> **Identity Provider Login URL / SSO Endpoint** in Sonderplan 3. Copy the **Sign out URL** from Okta to -> **Identity Provider Logout URL / SLO Endpoint** in Sonderplan 4. Copy the **Issuer** from Okta to -> **Identity Provider Entity ID / Issuer URL** in Sonderplan 5. Copy the **Signing Certificate** from Okta to -> **Identity Provider X.509 Certificate** in Sonderplan 6. Click **Save Changes** in the top right corner of Sonderplan 7. Finally, you'll need to configure [your users in Sonderplan for SSO](/admin/saml-sso-settings#configure-users-for-sso) ## Configure Users for SSO Once you've correctly configured SAML, you'll need to enable SAML SSO Login for each of your users in **Admin -> Users & Groups -> User Editor -> SAML SSO Login**. To prevent accidental account lockouts due to potential misconfiguration or Identity Provider outages, we recommend maintaining at least one Super Administrator account configured with the Standard Login method. # Subscription Source: https://docs.sonderplan.com/en/admin/subscription Learn how to set up and manage your Sonderplan.com subscription, setup payment methods and activate automated recurring monthly or annual billing You must be logged into an account in the *Super Administrator* group, or a custom group that has access to the **Subscription** module If you've reached the end of your [free trial](https://www.sonderplan.com/free-trial), and you'd like to continue using Sonderplan, you can sign up for a subscription under **Admin -> Subscription**. ## Subscription Types ### Flexible Billing With Sonderplan’s Flexible Billing, your subscription automatically adjusts to match your actual usage. From day one, you’re billed only for the active users and resources in your account. If you add users or resources mid-cycle, Sonderplan calculates the pro-rated cost and includes it in your next invoice. If you remove seats or resources, you earn a credit that’s applied toward your upcoming renewal. This approach means your costs stay aligned with your needs without any manual intervention. Instead of choosing a fixed plan and worrying about over- or underpaying, you can focus on growing your business while Sonderplan handles the billing adjustments behind the scenes. Up to date "Flexible Billing" pricing information can be found on our website, on our [pricing page](https://www.sonderplan.com/pricing) #### Payment Methods When signing up with *Flexible Billing* we accept all major credit cards, including **MasterCard, Visa** and **American Express**. ### Enterprise Billing For customers who require custom payment arrangements, (purchase orders, manual EFT, or PayPal), we also offer an **Enterprise Billing** option tailored to your organization’s needs. Instead of using our standard calculator, you’ll work directly with our team to define terms that fit your procurement processes and budget. We’ll provide a personalized quote that reflects your specific user and resource requirements, payment schedule, and preferred payment method. This ensures that even the most complex billing scenarios are handled smoothly, giving you the flexibility to integrate Sonderplan into your enterprise workflows without compromise. ## Update Billing Contact Before a new Subscription can be created, please add or update your billing contact details. This would usually be your accounts department, ideally to a shared email like **[accounts@example.com](mailto:accounts@example.com)**. Once you've completed all required fields, click **Update Billing Contact**. You should now be able to create a new Sonderplan subscription. ## Create Subscription 1. To create a new ongoing subscription to Sonderplan, navigate to **Admin -> Subscription**, then click the **Subscribe to Sonderplan** button. If it is grayed out, please add or update your **Billing Contact** as outlined in the previous documentation section. Sonderplan Subscription Create Button 2. A new window will open where you can change the billing interval, either **monthly** or **annually**. Sonderplan Subscription Inteval Window 3. Select the desired schedule and then click **Proceed to Payment**. 4. You'll be redirected to our payment processor, *Stripe* where you can securely enter your **payment information** 5. Once the payment method has been captured, you'll be billed for the amount of **Users** and **Resources** currently in your account. If you add users or resources, you'll be billed within the next day for the time remaining until your next billing period. If you remove users / resources you'll be issued with a credit that will be automatically applied to future invoices ## Update Payment Method 1. To update the payment method used for your ongoing Sonderplan subscription, navigate to **Admin -> Subscription**, then click the **Payment Method** button in the **Manage Subscription** section. Sonderplan Subscription Update Payment Method Button 2. A new window will open where you can see the card currently used to process subscription payments. Clicking the **Update Payment Method** will redirect you to our payment processor, *Stripe* where you can securely add your new payment method. Sonderplan Subscription Update Payment Method Window ## View / Download Invoices All charges and credits made for your Sonderplan.com subscription are shown within invoices which are generated for each transaction. Invoices may be downloaded from within Sonderplan, by navigating to **Admin -> Subscription** -> **Download Invoices** section Sonderplan Subscription Download Invoices ## Cancel Subscription 1. To cancel your Sonderplan subscription, navigate to **Admin -> Subscription** and click the **Cancel Subscription** button under the **Manage Subscription** section. 2. A confirmation window will appear, which will display exactly how long the subscription will remain active for, as well as a text box for entering any feedback on how we can improve the service. 3. Clicking **Yes, Cancel Subscription** will process the cancellation. If you increase your users / resources after cancelling, additional charges to your credit card will be processed. Any credits remaining on your account at the time of cancellation will be forfeited and cannot be reinstated. Our support team is here to help, please get in contact with us. # System Settings Source: https://docs.sonderplan.com/en/admin/system-settings Configure default system behaviors for your team The settings on this page configure the default settings for your system. These behaviours and settings are applied as defaults to new users you create. The settings set in each user's [My Account](/en/ui/my-account) page will override these settings ## Settings * **Company Name** - Is used on [quotes and invoice themes](/en/admin/quote-invoice-themes#shortcodes) and populates the `[companyName]` shortcode * **Default Timezone** - Sets the default timezone for new users. All booking times, calendar feeds, and timestamps will display according to this timezone. * **Default Language / Locale** - Sets the default locale used for language and regional conventions (e.g. English (US), Deutsch (DE)). Affects system UI text and formatting of currencies. * **Default Date Format** - Sets the default date format (e.g. dd/mm/yyyy, mm/dd/yyyy, yyyy-mm-dd) * **Default Time Format** - Sets the default time format for users, choose 12-hour or 24-hour clock display. # Users & Groups Source: https://docs.sonderplan.com/en/admin/users-groups Invite your team, manage group access roles, and monitor user sessions The Users & Groups page in Sonderplan lets you manage who can access your system, how they authenticate, and which set of permissions they inherit via Groups. Use this page to onboard new team members, organize them into logical units, and monitor active sessions. Sonderplan Admin Users and Groups ## Users The Users tab shows every user account that can log into Sonderplan. ### Creating & Editing a User If you are using Sonderplan on a **Flexible Billing** plan, creating users will result in **additional charges** (calculated pro rata) being automatically charged to your credit card. Next to the *Users & Groups* heading, click the **New** button and choose **User** in the drop-down menu. In the **New User** editing sidebar, either * **Select an existing Contact** in the selection menu that you wish to give login access to Sonderplan * Click **New Contact** to create a new contact that will also be added as a User to Sonderplan Once a contact has been selected, additional inputs are shown (see below). #### Primary Email Warning Users require a **Primary Email** to be set before they can be created. To set a primary email click on the **Open Contact Editor** link or button, which will open the Contact Editor. Sonderplan new user contact requires primary email #### Time Logging Limited Warning A **Time Logging Limited** warning will be shown if the user is not also added as a **Resource**. This user will be able to log their time privately, but they won't be able to add time entries to bookings or projects until they are enabled as a resource. #### Send Reset Password Email The **“Send Reset Password Email”** action allows administrators to trigger a password reset for a user directly from the **Admin → Users → Edit User** screen. When clicked, Sonderplan sends an email to the user containing a secure, time-limited link that allows them to set a new password. Sonderplan new user contact requires primary email ##### When to use this * A user has forgotten their password * A new user has been created but has not yet set their password * You need to prompt a user to update their credentials for security reasons ##### How it works * The system generates a unique reset token * An email is sent to the user’s registered email address * The user follows the link and sets a new password * The token expires after a short period for security ##### Notes * Clicking the button will open a modal, asking you to verify that you are a human * If the user does not receive the email, ask them to check spam/junk folders * Re-clicking the button will invalidate any previous reset links and issue a new one #### User Group Users derive their core module permissions from **User Groups**. The group selected can either be one of the default, *Staff, Administrator* or *Super Administrator* or can be a Custom Group. #### SAML SSO Login If you have configured [SAML SSO](/en/admin/saml-sso-settings), you can enable each user to use that login method. #### Expiry Date Each user can have an expiry date assigned, after which they will no longer be able to login to Sonderplan. This is particularly useful when you have temporary staff or contractors using the system. ### Deleting a User If you're using Sonderplan with a **Flexible Billing** plan, deleting users will generate unused time credits for the user. These credits will be automatically applied to your account and used toward future invoices. Open the User’s edit panel as above. At the bottom-left of the panel, click the **** button. Confirm the deletion in the prompt. ## Groups Groups let you bundle individual accounts into logical teams—so you can grant or revoke access to entire sets of features at once. Instead of assigning permissions one user at a time, you simply give a Group the right to view or edit specific modules (Schedule / Bookings, Projects, Contacts, and more) and any member of that Group automatically inherits those permissions. ### Default Groups Sonderplan has 3 default groups setup which cover many common use cases. | Module | Staff | Administrators | Super Administrators | | ----------------------- | :---: | :------------: | :------------------: | | Schedule / Bookings | RW | RW | RW | | Projects | RW | RW | RW | | Contacts | RW | RW | RW | | Sales | -- | RW | RW | | Administrator | -- | RW | RW | | Subscription Management | -- | -- | RW | \-- = No Access, R- = Read Only, RW = Read and Write ### Create & Edit a Group If you wish to customise access you can create a **Custom Group**. If you are editing a group, click on the name of the group in the *Groups* datatable. Only custom groups may be edited Next to the *Users & Groups* heading, click the **New** button and choose **Group** in the drop-down menu. The *New Group* editor will open from the right side. Sonderplan create custom group * Enter a **Group Name** and optional **Description** for the group. * For each **Module**, select the level of access that each member of the group should have. Finally click **Create Group** to create a new group, or **Save Changes** to save the existing group. ### Delete Group Only custom groups may be deleted Open the Groups’s edit panel as above. At the bottom-left of the panel, click the **** button. Confirm the deletion in the prompt. The group will be removed from the list immediately. ## Sessions On the Sessions tab you can view and manage every active login across browsers and devices. For each session you’ll see the User name (and email), the originating IP Address, when they Signed In, and their Last Active timestamp. If you need to immediately revoke access—for example if a device is lost or left unattended—click the red trash icon under Delete to terminate that session. Use the pagination controls and search field to locate specific sessions, and rest easy knowing you can instantly sign out any user from this single screen. # Workspaces Source: https://docs.sonderplan.com/en/admin/workspaces Organize your resources, define region specific holidays and settings and manage user access effortlessly with Workspaces In Sonderplan, Workspaces (formerly called “Schedules”) let you group together the resources and user access for a particular site, department or office. A Workspace defines: * Which resources (studios, meeting rooms, equipment, people, etc.) are available * Who can view and make bookings in that Workspace Workspaces keep your Schedule focused and secure by giving each location or team its own set of resources and permissions. ## Workspaces on the Schedule To switch between workspaces, go to the top-right corner of the Schedule and click the icon. A menu will appear showing all the workspaces you have access to. Simply click on the name of a workspace to load it into the Schedule—this will replace the currently displayed resources with those from the selected workspace. Sonderplan switch between workspaces on the Schedule For more information on the Schedule, see our [Schedule UI](/en/bookings/schedule) overview. ## Managing Workspaces In the main sidebar, click **Admin** to expand the menu, then select **Workspaces**. You’ll see a table of all your existing Workspaces, use the table’s sort or search controls to find what you need. Sonderplan Admin Workspace ## Create a Workspace From the Workspaces page, click the + **New** button in the header. In the New Workspace dialog that appears: * **Name** (required): Give the Workspace a clear, unique title (e.g. “Berlin Studio”). * **Description** (optional): Enter a brief summary of what this Workspace represents. * **Working Week**: Define the working week for the region that this Workspace resides in, so that weekends are highlighted correctly * **Show Public Holiday**: Enter the region that this Workspace resides in, so that region specific holidays are loaded * **Calendar Feed**: Enable to create an exportable calendar feed for all bookings that fall within this Workspace ### Resources Switch to the Resources tab and **check the folders or individual items** that should be bookable in this Workspace (e.g. “Edit Suites → Edit 1, Edit 2,” “Staff → Ava Baker,” etc.). ### Access Open the Access tab and assign user or group permissions by checking the **View** and **Edit** checkboxes next to each user or group who should see and book these resources. Sonderplan Admin Workspace Access When you’ve finished configuring, click **Save**. Your new Workspace will appear in the list and users with access will immediately be able to make bookings against its resources. ## Editing an Existing Workspace In the Workspaces list, locate the Workspace you want to change and click the **name of the Workspace** you want to edit The Edit Workspace panel slides in from the right: * **Name**: You can update the title at any time. * **Resources tab**: Add or remove bookable items. * **Access tab**: Update which users or groups have permission. * ** Settings**: Adjust the Description or Working Week if needed. After making your changes, click **Save** to apply them. ## Delete a Workspace Open the Workspace’s edit panel as above. At the bottom-left of the panel, click the **** button. Confirm the deletion in the prompt. The Workspace will be removed from the list immediately. # Zapier Connector Source: https://docs.sonderplan.com/en/admin/zapier Set up a new API client, integrate it with Zapier, and build a test Zap to automate workflows and streamline data connections. Zapier is a web-based service that enables users to automate tasks by connecting various web applications together. With Zapier, users can create automated workflows, known as “Zaps,” which connect two or more apps, triggering actions in one app based on specific events or triggers in another app. For example, you can create a Zap that automatically creates a contact in your CRM when a contact is created in Sonderplan. Zapier supports over 7,000 apps and offers a user-friendly interface that makes it easy for anyone to create and manage their own automated workflows without the need for coding skills. Before you begin, please create an [API Client](/admin/api-clients) in Sonderplan ## Create a Zapier Integration In this example, we'll create a simple Zap that creates a Hubspot contact, whenever a new contact is created in Sonderplan. 1. Log in to your Zapier account and click on the “Make a Zap” button. 2. Search for **Sonderplan** and select it as the trigger app and choose the trigger event *“New Contact”*. 3. Connect your Sonderplan account to Zapier by following the prompts to enter your Sonderplan API Authentication Token and authorizing the connection. Sonderplan Zapier authentication window 4. Test the trigger by fetching a sample contact from Sonderplan to ensure that Zapier can properly connect to your account. 5. Next, select “HubSpot CRM” as the action app and choose the action event “Create Contact”. Sonderplan Zapier authentication window 6. Connect your HubSpot CRM account to Zapier by entering your API key and authorizing the connection. 7. Map the fields from the Sonderplan contact to the corresponding fields in HubSpot CRM. For example, map the Sonderplan contact’s name field to the HubSpot CRM contact’s name field, and so on. 8. Test the action by creating a test contact in Sonderplan and ensuring that a new contact is created in HubSpot CRM. 9. Once your Zap is set up and tested, it will automatically create a new contact in HubSpot CRM every time a new contact is created in Sonderplan. # Access Permissions Source: https://docs.sonderplan.com/en/bookings/access-permissions The ability to view and modify a booking is calculated from a combination of group, schedule, project and individual permissions Sonderplan uses a cascading access control system, evaluated from a broad level down to more granular permissions. If a user group isn’t granted broad module access, they won’t be able to bypass restrictions at more granular levels. ```mermaid theme={null} flowchart TD A("Scheduling Module Access (User Group)") -- Read and/or Write --> B("Workspace access (User/Group)") A -- No Access --> C("No access to Schedule/Booking") B -- Read and/or Write --> D("Limited Project Permissions") -- Allowed or Unrestricted Project --> F("User Resource* View Setting") -- Show All Bookings --> G("View and/or Edit Booking") B -- No Access --> E("No access to Resource/Booking") D -- Not Allowed --> H("Booking is Anonymized or Hidden") F -- Hide Unrelated Bookings --> H ``` ### User Group Access to Scheduling Module The *User's Group* determines the permissions of group members to entire modules, with three possible access controls set for each module: *No Access*, *Read Only*, *Read and Write*. If a user group has *Read Only* permissions to the Scheduling module, then this applies to all bookings loaded on the Schedule and Booking table and cannot be overridden. ### Workspace Access Permissions Typically, Workspaces are usually created for each location or department, and each Workspace will contain a subset of the resources created within Sonderplan. For example a company might have four workspaces setup, *Sydney Post*, *Sydney Camera Dept*, *New York Grading*, *Berlin Post*. In addition to resources, each workspace contains read / write access permissions defined per user and / or group. In the above example, it might be desirable for the Sydney Camera and Post departments to view each others bookings, but they should not be able to create or modify bookings in the other Workspaces. Neither team should see New York Grading or Berlin Post, as these operate completely independently. User groups with access to the Administrator Module will have read access to all bookings within the Schedule and Data Tables, however they won't be able to create, edit or delete bookings unless they have been assigned Edit access to a specific Workspace ### Limited & Private Projects Projects may be set to "Private" and require Users and Groups to be added to the project team for access to the project. This setting also affects bookings added to those projects, and Users who do not have permission to the project will see bookings with anonymized name and notes. ### User Resources Users who are linked to a "Person" resource, are referred to as **User Resources** and these users can have additional access settings applied: #### Schedule View Setting This setting determines if *User Resources* are able to view only their own bookings, or see all other bookings (subject to the access permissions shown above). This is mainly used in education settings or when freelancers have been given read only access to the Schedule in Sonderplan and you want to restrict their access to only see bookings relevant to them. #### Personal Calendar / My Bookings Table *User Resources* are able to login to Sonderplan and see bookings they have been assigned as resources to. This is required so that they can track time directly on the booking and/or projects they are working on. We recommend creating a new limited User Group (with no access to any Sonderplan modules), for users who only need to see and track time against their own bookings. # Booking Basics Source: https://docs.sonderplan.com/en/bookings/basics Allocating time for your resources is simple, but there are a few tips and tricks that unlock the full capabilities of Sonderplan Hero Light Hero Dark ## Booking Properties Bookings always include a **name**, a **start date-time** and an **end date-time**. Additionally, bookings may include any of the following properties: Supports one or multiple resources. Buy & sell rates can be set for each resource Any time entries that were logged by resources directly to the booking Used for project reporting and sets the client and client contact fields Pulls through client contact info and used to prefill quotes / invoices Customise booking stages with colour-coded statuses. Adhoc items with buy & sell costs that are added to prefilled quotes / invoices Details about the linked quotes & invoices generated from bookings Files that are related to this booking can be uploaded and attached directly Single, multi line, select menu and date picker input fields can be added to bookings Details about who, changed what, including when they did it ## Creating a Booking There are currently four main methods to create a new booking in Sonderplan, though the ability to create bookings may be limited by your [access permissions](/en/bookings/access-permissions). If you can't create a booking, and you think you should be able to, please contact your Sonderplan administrator. ### Resource Timeline To create a booking on the resource timeline, open the schedule, find the desired *Resource* and hover your mouse over the desired start time and then **click & drag**, moving the mouse right until you reach the desired end time or duration, then release the mouse button. It is also possible to select the end time first and then drag left to find the start time
The *Quick Edit* booking sidebar opens with the selected resource prefilled. Add additional resources, project, client etc. and click the **Save** button in the bottom left corner of the sidebar to create the booking. ### Project Timeline To create a booking on the project timeline, open the schedule, select the Project Timeline, find the desired *Project* and hover your mouse over the desired start time and then **click & drag**, moving the mouse right until you reach the desired end time or duration, then release the mouse button. The *Quick Edit* booking sidebar opens with the selected project prefilled. Add resources, client and notes etc. and then click the **Save** button in the bottom left corner of the sidebar to create the booking. ### Schedule Calendar Open the Schedule Calendar to either the day, week or month view and either single click and drag the time, or double-click the cell to create a booking with the default duration. The *Quick Edit* booking sidebar opens. Modify the preset time, add resources, project, client and notes etc. and then click the **Save** button in the bottom left corner of the sidebar to create the booking. ### Copy & Paste Booking To create a booking from an existing booking, left single click an existing booking, then press ⌘ + cCtrl + c to copy the booking. Move the mouse pointer to another day and then ⌘ + vCtrl + v to paste the booking. Alternatively, right single click and existing booking, click **Copy** and then right-click on the day you wish to copy the booking to and right single click **Paste**.
The behaviour of booking **Paste** varies, based on your current view. On day views, the booking will be pasted directly where the mouse pointer is. On any other view, the booking will be pasted with the original start time. ## Editing Bookings There are currently two interfaces to edit bookings, the Quick Edit Sidebar (available on the Schedule only) or the Booking Editor. The Quick Edit sidebar only allows editing of a limited set of properties, the Booking Editor has the ability to edit all of the booking properties. ### Quick Edit Sidebar *Available on the Schedule Only* When on the Schedule, the fastest method of editing bookings is the *Quick Edit* window. To open it, you can single click on a booking and then press ⌘ + eCtrl + e to open the booking in the Quick Edit sidebar. Alternatively, you can open via the [Quick Info Popover](/en/ui/schedule#quick-info-popover), by clicking on the Pencil Edit Icon. Quick edit booking sidebar screenshot light mode Quick edit booking sidebar screenshot dark mode ### Booking Editor To edit all the properties of a Booking, use the *Booking Editor*, which is available on the Schedule and from the Booking Data Table. To open it from the Schedule, single click a booking and then press ⌘ + oCtrl + o, or use the [Quick Info Popover](/en/ui/schedule#quick-info-popover) to open load the booking into the Booking Editor. The Booking editor loads a read only preview of the booking, click the *Edit* button to make changes. Booking editor screenshot light mode Booking editor screenshot dark mode ### Comparison of Editors The following is a break-down of the features available in the two booking editors. We are working on improving this and a future version of Sonderplan will combine these two editors into a single interface | Booking Property | Booking Editor | Quick Edit Sidebar | | ------------------------------------ | :-------------------: | :-------------------: | | Name | | | | Start & End Date | | | | Duration | | | | Project | | | | Client | | | | [Status](/en/admin/booking-statuses) | | | | Custom Fields | | | | Notes | | | | Resource Rates | | | | Billable Items | | | | Quotes | | | | Invoices | | | | Time Logs | | | | File Attachments | | | | Print Booking | | | | Prefill Quote / Invoice | | | | Booking History | | | ### Booking Locks Sonderplan prevents the possibility of losing changes to bookings caused by multiple people editing the same booking, through the use of Booking Locks. Booking in Quick Edit sidebar with Booking Lock timer showing 10 seconds left until the Booking Lock has expired When a booking is opened in either the [Quick Editor Sidebar](/en/bookings/basics#quick-edit-sidebar), or the [Booking Editor](/en/bookings/basics#booking-editor), Sonderplan will initiate a booking lock for that user. The booking lock prevents other users from opening the same booking until the lock owner closes the booking editor, or until a period of 10minutes has passed. Before a booking locks, the owner is shown a 30-second countdown giving them the opportunity to extend the lock for another 10minutes. If a booking lock has expired, the owner editing the booking will see a notice that the booking was locked and will need to reopen the booking to receive a new lock. ### Live Updates Sonderplan will broadcast changes when bookings are created, edited or deleted to all authorised clients, avoiding the need to manually refresh the Schedule. Live updates require a constant connection to our live update service, and you can see the [status of this service](/en/ui/general#live-updates-status) in the bottom left hand corner of the main application screen. There are some instances where live updates won't be received, usually because the computer went to sleep, or there was a network interruption. In this case, Sonderplan will show a button that will initiate a manual Schedule re-sync. ### Updating Multiple Bookings To update the properties of multiple bookings, you can use the checkboxes feature of the Bookings Data Table to select multiple bookings and edit certain properties, *en masse*. ## Deleting Bookings Bookings can be deleted directly from the Schedule, the Bookings Data Table, within the [Quick Edit Sidebar](/en/bookings/basics#quick-edit-sidebar) and the [Booking editor](/en/bookings/basics#booking-editor). Delete booking confirmation window screenshot On the Schedule you can trigger a delete by single clicking a booking and either pressing deldel or clicking the delete icon in the [Quick Info Popover](/en/ui/schedule#quick-info-popover). The delete confirmation window can be confirmed by clicking **Delete** or by pressing ⌘ + ⏎Ctrl + ⏎ Before a booking is deleted, a confirmation window will be shown to confirm the action. Currently, deleted bookings cannot be restored via the user interface (UI). However, it is possible to retrieve a deleted booking via the Booking API. ## Learn More Explore the different schedule views available in Sonderplan, including timeline, calendar, and grid layouts—each designed to support different planning needs. # Export Bookings Source: https://docs.sonderplan.com/en/bookings/export-bookings Learn how to export bookings to print, PDF, or Excel for easy sharing, reporting, or record-keeping. ## Print Bookings To print a single booking, open the booking in the [Booking Editor](/en/bookings/basics#booking-editor) and click on the ** Actions** button dropdown **-> Print -> Print Summary**. A print friendly version of the booking will open up in a new window, where you can select a printer or save as a PDF. For more details, select the **Print Extended** option, which expands the sections of the booking to include information about the project and client. ## PDF Export Schedule From the **Schedule** page, in the top right menu, click the ** -> Export -> PDF**. The *Schedule PDF Export* window opens and allows you to choose the paper size for the exported file. Available Paper Size Options: * **A4** (297 × 210 mm) - Standard international paper size, ideal for general printing. (Default selection) * **A3** (420 × 297 mm) - Larger format suitable for more detailed or wider schedule views. * **Letter** (8.5 × 11 in) - Common paper size in North America. * **Tabloid** (17 × 11 in) - Wide-format paper, ideal for wall charts or large planning overviews. Select the desired paper size and click the **Export PDF** button. The schedule may temporarily resize whilst the screen is captured and the PDF is generated. The PDF will be downloaded to your computer. ## Excel Export Bookings The Excel Export feature allows you to download a list of bookings in spreadsheet (.xlsx) format, perfect for reporting, sharing, or offline analysis. From the **Schedule** and **Bookings** pages, in the top right menu, click the ** -> Export -> Excel**. The Excel Spreadsheet Export window will open, select from the following options and click the **Export** button to generate the Excel file and download to your computer. Sonderplan Booking Excel Export ### Filtering Bookings Before you export, you can configure your booking filters to show only the bookings you require. For example, you could create a filter to only show bookings with certain resources, or have a particular client or status. These filters will be used by the Excel utility to export the filtered results to the spreadsheet. ### Export Settings The following settings are available: | Setting | Description | Options | | -------------------- | -------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Export Timeframe** | The time frame of bookings that should be exported |
  • Selected / Viewable Date Range
  • This month
  • Last 30 days
  • Last 90 days
  • All time
  • Custom date range
| | **Output Template** | Controls what information is output and how it is formatted |
  • **Single Line Bookings** - Each booking is output to a single line, resource names are comma seperated
  • **Resource Grouped** - Each booking resource is output on a new line
| | **Columns** | Select the booking properties, project and client attributes and custom fields that will be output as columns in the Excel file. | Column selection varies based on group module access | | **Date format** | The format of date columns |
  • d/m/yy
  • dd/mm/yy
  • dd/mm/yyyy
  • m/d/yy
  • mm/dd/yy
  • mm/dd/yyyy
  • yy/m/d
  • yy/mm/dd
  • yyyy/mm/dd
| | **Time format** | Select either 24 Hour or 12 Hour time display. |
  • 24 Hour
  • 12 Hour
| | **Time Zone** | Sets which timezone the bookings should be offset to | *All standard timezones* | | **Order Results** | Sets the order in which bookings will be output |
  • Oldest First
  • Newest First
| # Repeat Bookings Source: https://docs.sonderplan.com/en/bookings/repeat-bookings Create bookings that recur automatically based on a defined schedule, useful for regular meetings, resource reservations, or any recurring work pattern ## Setting Up a Repeating Booking When creating or editing a booking, open the Date & Time section and click the Repeat control to configure how and when the booking repeats. ### Repeat Frequency * **Doesn’t Repeat** – The default setting for one-time bookings. * **Hourly** – Repeats every X hours. * **Daily** – Repeats every X days. * **Weekly** – Repeats every X weeks on specific days of the week. * **Monthly** – Repeats every X months. When “Weekly” is selected, you can choose specific days of the week (e.g., Monday, Wednesday, Friday) on which the booking should recur. Sonderplan Edit Repeat Booking ### Interval The number entered within the interval field controls how often the repeat occurs. For example: * **Daily + Interval 1** = every day * **Weekly + Interval 2** = every 2 weeks * **Monthly + Interval 6** = every 6 months ### Ending the Repeat You can control when the series stops using two end conditions: * **End on Date** – Select a specific date/time at which the repeat will stop. * **End after Count** – Define how many times the booking should repeat (e.g., repeat 4 times total). ## Editing a Repeating Booking When editing a booking in a repeat series, you’ll be asked how the **most recent changes** should apply: * **Only this booking** – Updates a single occurrence without affecting others. * **This booking and all following repeats** – Applies changes from the selected date forward. * **All repeat bookings** – Modifies every occurrence in the series. Sonderplan Edit Repeat Booking ### How Changes Are Applied to Repeat Bookings When editing repeat bookings, **only the properties that are changed are applied during the save**. This ensures that **changes made to individual bookings in a series are preserved**, while still allowing shared changes to be applied across the group. For example, if you move a single booking in the series to a new day and save that change for only that booking, its date will become independent from the rest of the series. Later, if you update the name of the booking and apply that change to all repeat bookings, only the name will update—not the date of the one you previously moved. ## Deleting a Repeating Booking When deleting a booking that is part of a repeating series, Sonderplan provides flexible options to help you manage exactly which bookings are removed. Sonderplan Delete Repeat Bookings ### Delete Booking Options Upon clicking Delete, you’ll be presented with three choices: 1. **Delete only this booking** - Removes just the selected booking from the series. The rest of the repeat series remains unchanged. 2. **Delete this & future repeats** - Deletes the selected booking and all future occurrences in the series, starting from the one you selected. Earlier instances will be preserved. 3. **Delete all repeats** - Permanently deletes the entire repeat series, including past, present, and future bookings. # Resource Rates & Billable Items Source: https://docs.sonderplan.com/en/bookings/resource-rates-billable-items Track project profitability by assigning buy/sell rates to resources and billable items—automatically calculate margins or customise costs for greater billing flexibility. Sonderplan allows you to assign Buy and Sell rates to both resources and billable items within a booking. This enables powerful financial tracking, cost recovery, and margin visibility for every scheduled job. ## Booking Resource Rates Each resource on a booking—such as rooms, freelancers, or equipment—can have buy and sell rates applied based on different time units; **Hourly, Daily, Part Daily, Weekly** and **Fixed**. An annotated screeenshot of booking resource rates in Sonderplan These rates are usually pre-defined in the resource setup, but can also be overridden at the time of booking. Sonderplan automatically calculates the cost and charge based on the booking duration, saving you time and improving accuracy. * **Buy Rate**: What it costs your business to provide the resource (e.g. freelancer rate, room overhead). * **Sell Rate**: What you charge the client for that resource. * **Profit / Margin**: The difference between buy and sell, displayed per resource and across the whole booking. You can override durations manually if the billing period differs from the actual booking length—for example, if you charge for a full day but the resource was only used for half. You can select from predefined resource rate's, Service Rates or enter custom values per booking, depending on the agreement with the client. ### Automatic Selection of Rates Sonderplan can be configured to automatically select the best rate for your resources, by enabling the [Automatically Calculate Rates](/en/admin/global-schedule-settings#global-settings) option in Global Schedule Settings. #### Rate Selection Process When a resource is added to a booking, Sonderplan will look for any rate schemes that the resource has been added to, including project rates, services and individual resource rates. If multiple rate schemes apply, Sonderplan will choose the rate based on the following order: ```mermaid theme={null} flowchart TD A("Project Rate") --> B("Service Rate") --> C("Resource Base Rate") ``` Sonderplan defaults to using the "Hourly" rate, unless the booking is marked as all day, when it will use the "Daily" rate ## Booking Billable Items in addition to resources, Sonderplan allows you to add Billable Items—such as file transcodes, client catering, or consumables—to any booking. An annotated screeenshot of booking billable items in Sonderplan Each item can have its own **buy cost, sell price**, and **quantity**. The system calculates the **total margin** across all billable items and adds it to the booking’s profit summary. Frequently used items can be saved as global billable items for fast reuse. This makes it easy to track additional revenue sources and capture more accurate project costs beyond just time and space. # Schedule Interface Source: https://docs.sonderplan.com/en/bookings/schedule The Schedule module helps you easily manage your daily, weekly, and monthly bookings. It's the main place where you allocate time to your resources and projects. To navigate to the Schedule in Sonderplan, open the main navigation menu and click **Schedule**. ## View Types There are three schedule view types to suit different user preferences—whether you prefer a detailed timeline, a traditional calendar layout, or a grid format, each view displays the same bookings. Sonderplan Schedule View Type Buttons ### Timelines The Timeline Schedule offers two distinct views to help you manage and organise your work more effectively: the Resources Timeline and the Project Timeline. #### Resource Timeline This view displays all resources assigned to the currently loaded [Workspace](#workspaces). Resources appear along the Y axis, while the selected time range is shown across the X axis. Sonderplan Resources Timeline This view displays all scheduled activities grouped by individual resources, such as team members, rooms, or equipment. It’s ideal for tracking who is assigned to what and ensuring balanced workloads across your team or assets. #### Project Timeline This view displays all *In Progress* projects that you have access to. Projects appear along the Y Axis, while the selected time range is shown across the X axis. Sonderplan Projects Timeline The project timeline is commonly used to see how Projects are tracking against Project Phases and Milestones. ### Calendar While timeline views are typically favoured by experienced schedulers for their depth and clarity in resource and project allocation, calendar views offer a more familiar experience for users transitioning from tools like Google Calendar or Outlook. This makes them a great starting point for new users or those more comfortable with traditional calendar interfaces. The Calendar view offers multiple ways to visualise your schedule—Day, Week, and Month—each suited to different planning needs. #### Day / Week Sonderplan Week Calendar These views provide a detailed, hour-by-hour layout of scheduled activities: * Ideal for short-term planning and managing daily workloads. * Bookings are displayed in a vertical format, showing precise start and end times. * You can easily identify overlapping bookings, gaps in availability, and resource allocation throughout each day. * The Week view helps visualise how your team or resources are distributed across a full working week. Use the Day or Week view when you need to focus on the finer details of scheduling and task timing. #### Month Sonderplan Month Calendar The Month view offers a broader overview of all scheduled work across the entire month: * Best for high-level planning and spotting long-term trends. * Bookings are displayed as coloured blocks spanning each day, without showing exact hours. * Helpful for identifying peak periods, long-term projects, and upcoming deadlines. * Great for checking overall availability at a glance. Switch to the Month view when you're planning ahead or want a snapshot of what’s coming up across the whole schedule. ### Grid The Grid view presents your schedule in a table format, offering a clear, sortable list of all scheduled bookings within the selected time range. Sonderplan Month Grid It is especially useful for reporting, exporting schedules, or performing quick checks across multiple bookings. * Tabular Layout: Displays each booking as a row with columns for key details such as Name, Start and End times, Assigned Resources, Project, Client, and Status. * Quick Overview: Ideal for users who prefer structured data or need to scan bookings quickly without a visual timeline. * Sortable and Filterable: Easily sort or filter columns (e.g., by date, project, resource, or client) to find what you’re looking for faster. * Consistent Across Views: The Grid reflects the same data shown in the Timeline and Calendar views, but in a compact, no-frills format. #### Bookings Data Table An alternative to the Grid view is the Bookings Table, which provides a more comprehensive and flexible way to manage your bookings. Unlike the Grid, which only displays bookings within a selected date range, the Bookings Table can show all bookings ever created, regardless of timeframe. It also features enhanced search and filtering tools, making it ideal for in-depth queries, audits, or historical reviews. *** ## Time Frames The time frames available depend on the selected view type, and the additional time frames can be selected by clicking the arrow icons next to the *Week* and *Month* menus. Sonderplan Time Frames Menus extended ### View / Time Frame Matrix The table belows show the time frames available to each view type. | Time Frame | Timeline View | Calendar View | Grid View | | ------------------ | :-------------------: | :-------------------: | :-------------------- | | Day | | | | | Week | | | | | 2 Weeks | | | | | 3 Weeks | | | | | Month | | | | | 2 Months | | | | | 3 Months | | | | | 6 Months | | | | | 12 Months *(Beta)* | | | | | 24 Months *(Beta)* | | | | | 36 Months *(Beta)* | | | | ### Moving within the Date Range To move forward or backwards within the current time frame, click on the left and right arrows on either side of the main Date Range Heading. You can also use the left ←← and right →→ arrows on your keyboard to move forward and backwards. ### Quick Date Select Calendar Clicking on the current Date Range header displays a mini calendar that lets you quickly select the date you'd like to navigate to on the main Schedule. Sonderplan quick date select mini calendar on the Schedule *** ## Schedule Workspaces Workspaces are distinct environments within the Schedule where Administrators can organize and manage groups of Resources. Each Workspace represents a specific context—whether defined by either a physical location (like "Sydney Studio" or "New York") or by a particular category of assets (such as "Cameras" or "Equipment"). Within each Workspace, Administrators can set view only or edit access permissions and Users with edit access to the Workspace can create, edit and delete bookings. ### Switching between Workspaces To switch between workspaces, go to the top-right corner of the Schedule and click the icon. A menu will appear showing all the workspaces you have access to. Simply click on the name of a workspace to load it into the Schedule—this will replace the currently displayed resources with those from the selected workspace. Sonderplan switch between workspaces on the Schedule *** ## Additional Controls ### Booking Colors The colors of bookings on the Schedule can be switched between three modes, **Resource**, **Project** and **[Booking Status](/en/admin/booking-statuses)**. To switch the color mode, click the "Color Wheel" icon in the top right of the Schedule, then select the preferred color mode. Sonderplan booking color menu on the Schedule ### Zoom You can use the zoom control on **timeline views** to expand the time range, making bookings appear larger and easier to view. Schedule Timeline Zoom Note, that this control is separate to the browser zoom control (available in most modern web browsers) which can be activated using ⌘Ctrl + + to increase the size and ⌘Ctrl + - to decrease the size of all elements in the window. ### Booking Filter Sidebar The Booking Filter Sidebar allows you to quickly narrow down the bookings shown on the Schedule by applying custom filters. You can access it by clicking the filter icon in the top-right corner of the Schedule interface. Schedule Booking Filter Sidebar #### Filter Options: * **Search Bookings** - Type in any keyword to search across all booking names. * **Resource** - Filter bookings assigned to a specific resource. * **Project** - Display only bookings linked to a particular project. * **Client** - Show bookings associated with a specific client. * **Status** - Show bookings assigned with one or more of your custom created Booking Statuses ### Quick Row Filter The Quick Row Filter is a quick search tool that lets you instantly filter the **resources** or **projects** displayed on the timeline.
Located near the top of the Schedule view, the Quick Filter is a simple text input field. As you type, it dynamically filters the currently loaded resources or projects—hiding anything that doesn't match your search term. The filtering happens in real time, allowing you to quickly narrow down the timeline view to just the items you're interested in. This is especially useful in larger schedules where scrolling through long lists of resources or projects can be time-consuming. Use the Quick Filter to instantly zero in on what you need. ### User Preferences The following settings only affect how the Schedule appears to you. They are saved locally on your device and automatically applied each time you open the Schedule. Schedule User Prefences Menu #### Row Height The height of Resource and Project rows on **timeline views** can be set to one of four different sizes, (small, medium, large, extra large) #### First / Last Hour Defines the earliest and latest hours displayed across all **timeline and calendar views** for each day in the Schedule. This setting is especially useful if your bookings typically fall within a consistent set of core hours. By hiding unused hours outside this range, it reduces white space and allows more space for booking labels, making the schedule easier to read and navigate. #### Week Numbers Scale The Show Week Numbers Scale option, available in the **timeline views**, adds a week number row to the top of the schedule. This is particularly helpful for teams that plan or report using ISO week numbers, providing a clear reference point for long-term projects and scheduling alignment. #### Sort Bookings by Status Order This setting applies to the **timeline views** and dictates the sorting order of bookings that have the same start date / times. By default, Sonderplan will display them in the order they were added, however you can override this behaviour and sort the bookings by the order of the associated booking status order. For example, if you use the custom booking statuses to show 'holds' (eg *First Hold*, *Second Hold* etc.) you can enable this option, to show the bookings in the order reflecting their hold priority. #### Highlight Resource Clashes This setting applies to the **resource timeline view** and if enabled will show a red background around clashing resources. This is separate to the Global Schedule setting which enables / disables the clash warning displayed when saving a booking and clashes were detected. Schedule Show Resource Clash Background #### Resource Availability This setting applies to the resource timeline view and includes three options: **Hide Resource Counts, Show Available Resources**, and **Show Used Resources**. When set to **Show Available Resources**, each resource group displays the number of available (unbooked) resources for each time period. This is useful for spotting availability at a glance and planning new bookings efficiently. Schedule Show Available Resources If set to **Show Used Resources**, the resource groups will show the number of booked (in-use) resources during each time slot, helping you monitor usage and identify capacity trends. Schedule Show Used Resources Selecting **Hide Resource Counts** removes the numeric indicators altogether, offering a cleaner layout if you prefer to focus on the booking blocks themselves. These indicators update dynamically as you scroll or filter the timeline, giving you a real-time overview of how resources are being utilised throughout the schedule. #### Start Week On The Start Week On setting allows you to choose which day your schedule week begins on—either **Sunday** or **Monday**. This preference affects all week-based views (Timeline and Calendar) and helps align the schedule with your regions norms or personal planning habits. #### Time Snapping The Time Snapping setting controls the granularity of the time intervals when creating, resizing, or moving bookings across all views in the Schedule. You can choose from the following snapping options: **5 min, 10 min, 15 min, 30 min**, and **60 min**. This setting determines how bookings "snap" to the nearest time increment on the timeline or calendar views. For example, if set to 15 min, a booking will align to 09:00, 09:15, 09:30, etc., when adjusted. Use smaller increments (e.g. 5 or 10 minutes) for more precise scheduling, or larger increments (e.g. 30 or 60 minutes) to simplify booking creation and reduce clutter in your schedule. #### Booking Drag Confirmation When the Booking Drag Confirmation setting is enabled, a confirmation dialog appears before a booking is moved, extended, or shortened on the Schedule. This added step helps prevent accidental changes and ensures edits are intentional. #### Booking Label Format The Booking Label Format setting lets you customise how booking labels appear by including details such as the booking name, linked resources, project, client, and status. This allows you to tailor labels to highlight the most relevant information at a glance. ## Quick Info Popover The Quick Info window appears when you single-click a booking on the Schedule. It provides a compact summary of the booking and offers quick access to common actions. It contains the following information: * **Booking Name** - The title of the booking, shown at the top. * **Time & Date** - Start and end time, along with the day of the booking. * **Resource** - The name of the assigned resource (e.g. Edit Suite 1). * **Project & Client Info** - Displays the linked project and client, including any tags or labels. Quick Info Popover Screenshot The following actions can be triggered from the Quick Info Popover: * **Open Quick Edit (Sidebar)** - Opens the booking in a quick-edit sidebar on the right-hand side, allowing for fast adjustments. * **Open Booking Editor** - Launches the full booking editor for more detailed changes. * **Copy Booking Link** - Copies a direct link to the booking—ideal for sharing with teammates. * **Delete Booking** - Permanently removes the booking from the Schedule (confirmation required). *** ## Learn More We've covered the following topics in detailed guides. Getting back to basics when working with bookings in Sonderplan. Export bookings to Excel, CSV, or clipboard for easy sharing and reporting. # Schedule Keyboard Shortcuts Source: https://docs.sonderplan.com/en/bookings/shortcuts Use keyboard shortcuts to speed up common actions on the Schedule | Shortcut | Description | Other Notes | | --------------------------------------------------------- | --------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | | ⌘Ctrl + + | Zoom In on the entire interface | | | ⌘Ctrl + - | Zoom Out on the entire interface | | | ←← | Shifts the schedule back by one time period | *e.g. previous month* | | →→ | Shifts the schedule forward by one time period | *e.g next month* | | ⌘Ctrl + C | Copies a selected booking | | | ⌘Ctrl + V | Pastes a selected booking | When you paste on the same day, the booking snaps to the time under your mouse pointer; if you paste on a different day, it keeps the original booking time | | ⌘Ctrl + E | Opens selected booking in the Quick Edit sidebar | | | ⌘Ctrl + O | Opens selected booking in the Booking editor modal window | | | del | Deletes the currently selected or open booking | Note, there is a confirmation dialog before the deletion is processed | | esc | Closes the currently opened booking, or dialog modal window | Note, there is a confirmation dialog before the deletion is processed | | ⌘Ctrl + ⏎ | Performs the action indicated by the primary button in the modal or Quick Edit sidebar editor | *e.g. Acknowledge the booking clash, confirm booking changes, save booking etc.* | | ⌘Ctrl + ⇧ + ⏎ | Saves and closes the booking in the Quick Edit sidebar editor | | | ⇧ + *Click & Drag Booking* | Snaps the moved booking to the original time | | ### Shortcut Hints By default, Sonderplan will show shortcut hints on buttons. You can disable these hints by opening up the **Schedule User Preferences Dropdown** -> uncheck **Show Shortcut Hints** Sonderplan Show Shortcut Hints checkbox # Import Contacts Source: https://docs.sonderplan.com/en/contacts/import-contacts Sonderplan supports importing contacts from VCF (vCard) files, allowing you to quickly bring existing contact data into your workspace from address books, CRMs, or email clients. ### Supported File Format .vcf (vCard) Supported exports include: * Apple Contacts * Google Contacts * Outlook * Most CRM and contact management tools Sonderplan Contact Import ### What Gets Imported When you upload a VCF file, Sonderplan will automatically extract and import: * Contact name * Email address(es) * Phone number(s) * Organisation / company name * Address details (where available) To prevent duplicates, email addresses are checked before contacts are saved. ### Visibility & Permissions Any user who is in a group with edit permissions to the Contact module can use the Import Contact feature. Imported contacts are shared with your team and contacts are visible to staff who have access to Contacts. ### How to Import Contacts The import process happens in a two-step 'staged' process, so you can preview the contacts to be imported before commiting to any changes. 1. Navigate to Contacts → Import → Import Contacts 2. Click Choose file and select a .vcf file from your computer 3. Review the list of detected contacts 4. Click Import Contacts to add them to your Sonderplan instance ### Notes & Limitations * Currently, only VCF files are supported however we are open to support additional formats in the future. * Duplicate detection is currently based on email addresses * Very large VCF files may take longer to process If you have feedback or encounter issues while importing contacts, please contact Sonderplan support. # Migrate from FoxOMS Source: https://docs.sonderplan.com/en/guides/migrate-from-foxoms Learn how to migrate your team from FoxOMS to Sonderplan Sonderplan is the next evolution of FoxOMS, and is produced and supported by the same team behind FoxOMS.com. When creating Sonderplan we took great care to offer a seamless migration path from FoxOMS to Sonderplan. ## Migrating to Sonderplan The path to migrate your team from FoxOMS to Sonderplan is to simply [login to Sonderplan](https://login.sonderplan.com) using the same credentials as you are using in FoxOMS. All of your data is already in Sonderplan and is also continually synchronised in both directions between FoxOMS and Sonderplan. It is even possible for some members of your team to use Sonderplan and others to continue to use FoxOMS, although we do recommend they switch to Sonderplan to take advantage of the new interface and features. ## Incompatibilities Whilst the greatest of care has been taken to maintain backwards compatibility with FoxOMS, some improvements were not possible to port back to FoxOMS. ### Quotes & Invoices Perhaps the most significant breaking change has been to Quotes/Invoices. The introduction of [Item Groups](/en/quotes-invoices/editor#add-new-group) meant that Quotes & Invoices generated in Sonderplan cannot be opened in FoxOMS. Conversely, Quotes & Invoices generated in FoxOMS must be *upgraded* to be able to be opened in Sonderplan. Once this upgrade has been performed, the Quote/Invoice can no longer be opened in FoxOMS. Sonderplan Convert FoxOMS invoice to Sonderplan ### Schedule User Preferences Another change in Sonderplan, many [Schedule view preferences](/en/bookings/schedule#user-preferences) have been changed from global settings (where an Administrator sets the preference, and it is applied to all Users) to individual local User Preferences (each User can customise the view to their liking). Schedule User Prefences Menu This allows for a lot of flexibility as each User can customise the Schedule to suite their preference, however they may need guidance from Administrators or consult our User Documentation to customise the Schedule as it was in FoxOMS. ## Feature Comparison | Feature | FoxOMS | Sonderplan | Comments | | :--------------------------------------------------------------------------- | :----: | :--------: | :--------------------------------------------------------------------------------------------------------- | | **User Interface (UI)** | | | | | Dark Mode (Toggle) | ✘ | ✔ | | | Installable on Desktop (PWA) | ✘ | ✔ | | | Installable on iOS / Android (PWA) | ✘ | ✔ | | | Single Page App (SPA) | ✘ | ✔ | | | Live updating of Schedule across multiple tabs | ✘ | ✔ | | | Collapsible Menu | ✘ | ✔ | | | Sticky Datatables Headers & Columns | ✘ | ✔ | | | User Specified Date / Time Format | ✔ | ✔ | | | User Calendar Feeds | ✔ | ✔ | | | User Avatar (Image) Upload | ✔ | ✔ | | | **Schedule Module** | | | | | **Views** | | | | | Timeline Views (Day, Week, 2 Week, 3 Week, Month, 2 Month, 3 Month, 6 Month) | ✔ | ✔ | | | Calendar Views (Day, Week, Month) | ✔ | ✔ | | | Grid Views (Day, Week, Month) | ✔ | ✔ | | | Horizontally Scrollable Timeline Views | ✔ | ✔ | | | Personal Schedule (for User Resources) | ✘ | ✔ | | | Customisable Timeline Row Height | ✔ | ✔ | | | Customisable Timeline Zoom | ✘ | ✔ | | | Timeline Project Scheduling View | ✘ | ✔ | | | Timeline Y Axis Resource / Project Name Filtering | ✘ | ✔ | | | Filtering of Bookings | ✔ | ✔ | | | Public Holidays are shown on Timeline Views | ✘ | ✔ | | | Booking Preview Window | ✔ | ✔ | | | Switch Between Schedules | ✔ | ✔ | | | Switchable Booking Colors (Resource, Project, Status) | ✔ | ✔ | | | **Bookings** | | | | | Multi Resource Bookings | ✔ | ✔ | | | Resource Clash Detection | ✔ | ✔ | | | Booking Assignable Project, Client & Status | ✔ | ✔ | | | Create new Project / Client from Booking | ✔ | ✔ | | | Booking Custom Fields | ✔ | ✔ | | | Booking Notes | ✔ | ✔ | | | Repeat Bookings | ✔ | ✔ | | | Advanced Repeat Bookings - Apply changes to single, future or all repeats | ✘ | ✔ | | | Booking Print | ✔ | ✔ | | | Booking Link Copy | ✔ | ✔ | | | Copy / Paste / Cut Bookings | ✔ | ✔ | | | Booking Drag Confirmation Dialog | ✔ | ✔ | | | Booking Edit Protection (Booking Locks) | ✔ | ✔ | | | Booking File Attachments | ✘ | ✔ | File upload attachments was discontinued in FoxOMS on the 1st of August 2024. Please upload via Sonderplan | | Realtime Schedule Updates | ✔ | ✔ | | | Load Region Specific Public Holidays | ✔ | ✔ | | | Assign Billable Items on Bookings | ✔ | ✔ | | | Assign Resource Rates on Bookings | ✘ | ✔ | | | Convert bookings to quotes & invoices | ✔ | ✔ | | | **Exports** | | | | | Schedule PDF Export | ✔ | ✔ | | | Schedule Excel Export | ✔ | ✔ | | | **Bookings Module** | | | | | Edit Booking directly from Booking Preview Modal | ✘ | ✔ | | | **Bookings List (Datatable)** | | | | | Selectable Booking Columns | ✔ | ✔ | | | Booking Filters (Name, Date Range, Projects, Clients, Resources, Statuses) | ✔ | ✔ | | | Savable Booking Filters | ✘ | ✔ | | | Bulk Booking Change Status | ✘ | ✔ | | | Bulk Delete Booking | ✘ | ✔ | | | Export Bookings Table to Excel | ✔ | ✔ | | | Export Bookings Table to CSV | ✔ | ✔ | | | Export Bookings Table to Clipboard | ✘ | ✔ | | | Export Bookings Table to PDF | ✔ | ✂ | | | **Projects Module** | | | | | **Projects List (Datatable)** | | | | | Selectable Project Columns | ✔ | ✔ | | | Project Filters (Name, Date Range, Clients, Parent Folder, Status) | ✘ | ✔ | | | Savable Project Filters | ✘ | ✔ | | | Bulk Project Change Status | ✘ | ✔ | | | Clone Project | ✔ | ✘ | ETA July 2025 | | Bulk Delete Project | ✘ | ✔ | | | Export Projects Table to CSV | ✔ | ✔ | | | Export Projects Table to Clipboard | ✘ | ✔ | | | Export Projects Table to Excel | ✔ | ✂ | | | Export Projects Table to PDF | ✔ | ✂ | | | **Project View** | | | | | Automatic Project Code Creation | ✔ | ✔ | | | Assignable Project Color, Code, Client, Parent Folder and Notes | ✔ | ✔ | | | Project Custom Fields | ✔ | ✔ | | | Project Notes | ✔ | ✔ | | | Project History | ✘ | ✔ | | | Project Date Range | ✔ | ✔ | | | Project PhasesNew Feature | ✘ | ✔ | | | Project MilestonesNew Feature | ✘ | ✔ | | | Project Bookings Table | ✔ | ✔ | | | Project File Attachments | ✘ | ✔ | File upload attachments was discontinued in FoxOMS on the 1st of August 2024. Please upload via Sonderplan | | Project Messages | ✔ | ✂ | | | Project Add / Remove Team Members | ✔ | ✔ | | | Project Team Member Role Titles | ✔ | ✘ | ETA July 2025 | | Project Visibility Control | ✔ | ✔ | | | Project Calendar Feeds | ✔ | ✔ | | | Project Sales Overview | ✔ | ✘ | ETA July 2025 | | **Contacts Module** | | | | | **Contacts List (Datatable)** | | | | | Separate Contacts Module (no Admin Access Required) | ✘ | ✔ | | | People and Organizations are shown on a single screen | ✘ | ✔ | | | Selectable Contact Columns | ✔ | ✔ | | | Contacts have assignable emails, phone numbers, address and notes | ✔ | ✔ | | | Initiate Email and Phone call contact buttons | ✘ | ✔ | | | Contacts Custom Fields | ✔ | ✔ | | | Contact Person Assignable to Organization | ✔ | ✔ | | | View members of an organization from Contact Editor | ✘ | ✔ | | | Filter and Search Contacts Table | ✘ | ✔ | | | Savable Contact Filters | ✘ | ✘ | ETA July 2025 | | Contact Excel / CSV Import | ✘ | ✘ | ETA July 2025 | | Export Contacts Table to CSV | ✔ | ✔ | | | Export Contacts Table to Clipbard | ✘ | ✔ | | | Export Contacts Table to Excel | ✔ | ✂ | | | Export Contacts Table to PDF | ✔ | ✂ | | | **Sales Module** | | | | | List Quotes and Invoices | ✔ | ✔ | | | Create Quotes and Invoices | ✔ | ✔ | | | Send Quotes and Invoices via Email | ✔ | ✔ | | | Export Quotes / Invoices to PDF | ✔ | ✔ | | | Export Quotes / Invoices to Excel | ✔ | ✘ | ETA July 2025 | | Quotes & Invoices support grouping of items | ✘ | ✔ | | | **Reports Module** | | | | | Booking Timeline Report | ✔ | ✘ | ETA July 2025 | | Booking Resources Totals Report | ✔ | ✘ | ETA July 2025 | | Booking Projects Totals Report | ✔ | ✔ | New project costs report located within each project | | Booking Clients Totals Report | ✔ | ✘ | ETA July 2025 | | Sales Timeline Report | ✔ | ✘ | ETA July 2025 | | Project Profit / Loss Report | ✘ | ✔ | | | **Admin Module** | | | | | **Resources** | | | | | Create / Edit / Delete Resources & Resource Groups | ✔ | ✔ | | | Re-order Resources / Resource Groups | ✔ | ✔ | | | Resource Calendar Feeds | ✔ | ✔ | | | Selectable Resource Columns | ✔ | ✔ | | | Filter and Search Resource Table | ✔ | ✔ | | | Export Resource Table to CSV | ✔ | ✔ | | | Export Resource Table to Clipboard | ✘ | ✔ | | | Export Resource Table to Excel | ✔ | ✂ | | | **Schedules / Workspaces** | | | | | Create / Edit / Delete Workspaces | ✔ | ✔ | | | Workspace Hours (First Hour / Last Hour) | ✔ | ✔ | | | Work Week (Weekend Definition) | ✔ | ✔ | | | Sunday / Monday Week Start | ✔ | ✔ | | | Public Holiday Region | ✔ | ✔ | | | Scroll to Time | ✔ | ✂ | | | Booking Time Step (Snapping) | ✔ | ✔ | Moved to Workspace preferences | | Bookings Fill Entire Cell | ✔ | ✂ | | | Re-order Workspaces | ✔ | ✔ | | | Workspace Calendar Feeds | ✔ | ✔ | | | Selectable Workspace Columns | ✔ | ✔ | | | Filter and Search Workspace Table | ✔ | ✔ | | | Export Workspace Table to CSV | ✘ | ✔ | | | Export Workspace Table to Clipboard | ✘ | ✔ | | | **Users & Groups** | | | | | Assign / Un-assign contacts to Users | ✔ | ✔ | | | Reset User Password | ✔ | ✔ | | | Selectable User / Group Columns | ✔ | ✔ | | | User / Group Filtering & Search | ✔ | ✔ | | | Active User Sessions List | ✘ | ✔ | | | **Rate Schemes** | | | | | Create / Edit / Delete Rate Schemes | ✔ | ✔ | Replaced with resource rates & services | | Filter and Search Rate Scheme Table | ✘ | ✔ | | | **Billable Items** | | | | | Create / Edit / Delete Billable Items | ✔ | ✔ | | | Filter and Search Rate Billable Items Table | ✘ | ✔ | | | Add "Buy" cost to Billable Items | ✘ | ✔ | | | Set "Currency" on Billable Items | ✘ | ✔ | | | Defined multiple taxes on Billable Items | ✘ | ✔ | | | **Custom Fields** | | | | | Create / Edit / Delete Custom Fields | ✔ | ✔ | | | Filter and Search Custom Fields Table | ✘ | ✔ | | | Re-order Custom Fields | ✔ | ✔ | | | **Rest Hooks (Web hooks)** | | | | | Create / Edit / Delete Web Hooks | ✘ | ✔ | | | Filter and Search Web Hooks Table | ✘ | ✔ | | | **API Clients** | | | | | Create / Delete API Clients | ✔ | ✔ | | | Filter and Search API Clients Table | ✘ | ✔ | | | **Module Settings -> Schedule -> Global Schedule Settings** | | | | | Real time Schedule Updates | ✔ | ✔ | Automatically enabled in Sonderplan | | Booking Edit Protection (Booking Locks) | ✔ | ✔ | Automatically enabled in Sonderplan | | Required Resources Option | ✔ | ✔ | | | Required Status Option | ✔ | ✔ | | | Required Project Option | ✘ | ✔ | | | Required Client Option | ✘ | ✔ | | | Show Week Numbers Option | ✔ | ✔ | | | Disable Clash Detection by Booked Resources | ✔ | ✔ | | | Disable Clash Detection by Booking Status | ✔ | ✔ | | | Confirm Booking Changes when moving a booking | ✔ | ✔ | Automatically enabled in Sonderplan | | Booking Color Priority by Resource Type | ✔ | ✘ | ETA July 2025 | | Bookings linked to Private Projects are viewable to all users | ✔ | ✂ | Bookings linked to private projects are obfuscated to users without project access | | Bookings can only be edited by owners and administrators | ✔ | ✔ | | | Booking Label Template | ✔ | ✔ | Moved to Workspace preferences | | Booking Cell Sort Option | ✔ | ✔ | | | Enable / Disable Booking Notifications for all Users | ✔ | ✔ | | | BCC Administrators on all Booking Notifications | ✔ | ✔ | | | Calendar views load bookings from all Schedules | ✔ | ✂ | | | Calendar Subscription importNew Feature | ✘ | ✔ | | | **Module Settings -> Schedule -> Booking Statuses** | | | | | Create / Edit / Delete Booking Statuses | ✔ | ✔ | Moved to Schedule -> Booking Statuses | | **Module Settings -> Project -> Project Settings** | | | | | Next Project Code Value | ✔ | ✔ | Moved to Project -> Global Project Settings | | Enable Project Notifications Option | ✔ | ✔ | Moved to Project -> Global Project Settings | | **Module Settings -> Project -> Project Roles** | | | | | Create / Edit / Delete Project Roles | ✔ | ✘ | ETA September 2025 | | **Module Settings -> Project -> Manage Projects** | | | | | Project Ordering | ✔ | ✂ | Custom ordering is deprecated in Sonderplan | | **Module Settings -> Sales -> Invoice Quote Settings** | | | | | Contact Details | ✔ | ✔ | | | Quote / Invoice Terms | ✔ | ✔ | | | Reply to Email Address / Include Sender Options | ✔ | ✔ | | | Enable Invoice Item Groups | ✔ | ✔ | Automatically enabled in Sonderplan | | Default Currency | ✔ | ✔ | | | Tax Name / Tax Rate | ✔ | ✔ | | | Allow multiple taxes to be defined | ✘ | ✔ | | | Quote / Invoice Prefix | ✔ | ✔ | | | Next Invoice / Quote Number | ✔ | ✔ | | | **Module Settings -> Sales -> Email Templates** | | | | | Quote / Invoice Email Templates | ✔ | ✔ | | | **Module Settings -> Sales -> Quote / Invoice Templates** | | | | | Create / Edit / Delete Quote & Invoice Templates | ✔ | ✔ | | | **Module Settings -> SAML SSO -> SAML Single Sign On (SSO) Settings** | | | | | Enable SAML SSO with third party identity provider | ✔ | ✔ | Moved to System Settings in Sonderplan | | **System Settings** | | | | | Set Company Name | ✔ | ✔ | | | Upload Company Logos | ✔ | ✂ | | | Set User Account Defaults | ✔ | ✔ | Moved to Admin -> User / Groups page in Sonderplan | | Set Client View Mode | ✔ | ✂ | | # Introduction Source: https://docs.sonderplan.com/en/introduction Welcome to the Sonderplan User Documentation Hero Light Hero Dark ## What is Sonderplan? Sonderplan.com is an online resource scheduling platform designed for businesses who need to manage their rooms, equipment and people. Sonderplan is widely used in the Film, Television and Radio industries, but is also used in other sectors as well as universities and charities. Our documentation is currently available in [English](/en/introduction) and [German](/de/introduction) (AI translated). If you find any issues, please contact us. ## Setting up The first step to streamlining your resource scheduling processes is to sign up for a 30 day free trial. Once you've got your account setup, follow our handy Quickstart guide on things you'll want to do first This usually takes 5 to 10 minutes, to provision your Sonderplan instance and activate your account So you've got your Sonderplan, but what now? This guide outlines your first recommended steps in Sonderplan Invite your team to Sonderplan allowing everyone to be on the same page when scheduling and managing projects Manage and organize bookable resources such as rooms, equipment, and personnel to streamline scheduling ## Make it yours Customise Sonderplan to fit your workflow and be fully integrated in your production pipeline. Customize your quote and invoice themes to perfectly match your company's colors and brand Create and manage custom booking statuses, with colour coding and notification settings Extend the data model to capture the unique information your team needs with user-defined custom fields Configure and manage SAML Single Sign-On (SSO) integration for secure and seamless user access Build powerful integrations with more than 7000 other leading cloud tools with "No Code" tools like Zapier Bespoke custom integrations are enabled by our powerful and industry leading REST API and Webhooks # Project Basics Source: https://docs.sonderplan.com/en/projects/basics Quickly set up and manage every aspect of your project, centralising all the project metadata and attachments. Projects are a great way to organise jobs that contain multiple bookings with your team members and clients. You can also add files, specific resource rates, quotes and invoices and control access for your team. ## Project Properties Projects must always include a **name**. Additionally, projects may include any of the following properties: Multiple bookings may be assigned to a project and several booking properties flow through to the project Any time entries that were logged by resources directly to any booking assigned to the project Pulls through client contact info and used to prefill quotes / invoices Projects have two statuses, In Progress and Archived Projects may be organised into folders, great for episodic productions A start and end date can be set to mark the anticipated timeline of the project Phases and milestones can be added to projects, which are displayed on the project timeline Details about the linked quotes & invoices attached to the project Files that are related to this project can be uploaded and attached directly Users and groups can be added to private projects, giving them access to view associated bookings Single, multi line, select menu and date picker input fields can be added to projects Reports about resource utilisation, booking totals, time logs related to the project Calendar feed which contains all the bookings related to the project Details about who, changed what, including when they did it ## Creating a Project To create a project you must be in a user group with **Edit** permissions to the project module. Please contact your account administrator if you do not see the **New** button on the Projects page Projects may be created from the main Projects page by clicking the **New** button above the projects table. Projects may also be created *inline* directly from within **Bookings**, **Quotes** and **Invoices** by clicking on the button next to the **Project** label. New Project Window in Sonderplan ### Assigning Project Colour To assign a project colour, click on the colour window to the left of the **Project Name** field, a colour picker will appear. Selecting a Colour in the New Project Window in Sonderplan Project colours can be used to colour bookings on the Schedule, when the [Colour Mode](/en/bookings/schedule#booking-colors) is set to **Project**. ### Automatically filling Project Code Sonderplan can automatically set your numerical project codes, ensuring you don't accidentally have duplicates. To fill a project code automatically, click on the button and the next project code number will be displayed. To change the next project code, you can make the change in the [Admin Project Settings](/en/admin/global-project-settings) ## Projects Table The projects table will show you any project set with the *Everyone* visibility, as well as any *Private* projects to which you've been added to, either directly or via your user group. Users with **View** access to the **Admin** module will see all projects, even if they have not been added to a project # Project Rates Source: https://docs.sonderplan.com/en/projects/project-rates Tailor service rates to your project’s specific resources for seamless, accurate billing Project Rates let you define custom hour-, day-, and week-rates for any combination of services and resources on a per-project basis. Once set, every new or updated booking in that project picks up these rates automatically—no more manual overrides or billing surprises. To add, edit or delete project rate schemes, you must be in a User Group with **Edit** access to both the **Project** and **Sales** modules ## Create Rate Scheme 1. Open the [project](/en/projects/basics) you wish to create a new *Rate Scheme* for. 2. Click on the **Rates** tab -> **+ Project Rate Scheme** Project Rates Window in Sonderplan 3. Enter a short **name** for the rate scheme, eg "Editing", "Grading" or "Sound Post" 4. In the **Rates** tab, enter **buy** / **sell** rates for the **hour**, **day** and **week** New Project Rate Window with rates tab in Sonderplan 5. Confirm the set **currency** and **tax** settings are correct 6. Optionally, on the **Description** tab, enter a **description** to provide more info on the rate scheme New Project Rate Window with description tab in Sonderplan 7. Click the **Resources** tab and select any **resources** that should be in the scope of this rate scheme. New Project Rate Window with resources tab in Sonderplan 8. Finally click **Save and Close** to save and exit from the New Rate Scheme window ### Booking Prefill Description You can customise the description automatically prefilled when converting one or more bookings into a quote or invoice. Shortcodes let you insert placeholders that are dynamically replaced as each booking is added. #### Shortcodes | Placeholder | Description | | ---------------------------- | ------------------------------------------------------------------------------------ | | `[bookingUID]` | Unique Identifier of the booking | | `[bookingName]` | Name of the booking | | `[bookingNotes]` | Notes attached to the booking | | `[bookingStart:yyyy-MM-dd]` | The start date / time of the booking in various formats (see formatting table below) | | `[bookingEnd:yyyy-MM-dd]` | The end date / time of the booking in various formats (see formatting table below) | | `[bookingProjectName]` | Name of the project attached to the booking | | `[bookingProjectCode]` | Value of the project code attached to the booking | | `[bookingClientName]` | Name of the client attached to the booking | | `[bookingClientContactName]` | Name of the client attached to the booking | #### Date Formats The following date formats can be used in the `[bookingStart:]` and `[bookingEnd:]` shortcodes outlined in the table above. | Token | Description | | ------ | ----------------------------------- | | `yyyy` | 4-digit year (e.g. 2025) | | `yy` | 2-digit year (e.g. 25) | | `MMMM` | Full month name (e.g. June) | | `MMM` | Abbreviated month name (e.g. Jun) | | `MM` | Month number, zero-padded (01–12) | | `M` | Month number (1–12) | | `dd` | Day of month, zero-padded (01–31) | | `d` | Day of month (1–31) | | `HH` | Hour (24-hour), zero-padded (00–23) | | `H` | Hour (24-hour) (0–23) | | `hh` | Hour (12-hour), zero-padded (01–12) | | `h` | Hour (12-hour) (1–12) | | `mm` | Minute, zero-padded (00–59) | | `m` | Minute (0–59) | ## Edit Rate Scheme 1. To edit a rate scheme, click on the **Rates** tab then click on the **name** of the Rate Scheme you wish to edit. 2. Make the desired changes to the rate scheme, including the name, description, currency, tax, rates or scoped resources. 3. Finally click **Save and Close** to save and exit from the New Rate Scheme window. ## Delete Rate Scheme 1. To delete a rate scheme, click on the **Rates** tab then click on the **name** of the Rate Scheme you wish to delete. Confirm delete project rate in Sonderplan # Quickstart Source: https://docs.sonderplan.com/en/quickstart Start scheduling and managing projects with Sonderplan in under 5 minutes For this guide, we assume you've already [created a Sonderplan trial](https://www.sonderplan.com/free-trial) and logged in to your instance. Add rooms, equipment, and staff as resources so they’re available for scheduling. Send invitations to your colleagues so they can join Sonderplan and collaborate. Add client organizations and their key contacts to keep all project stakeholders organized. Set up new projects with details like timelines, budgets, and assigned resources. Begin allocating resources to tasks and visualize your calendar to manage bookings. # Editor Interface Source: https://docs.sonderplan.com/en/quotes-invoices/editor Design and dispatch polished quotes and invoices directly from Sonderplan, in one intuitive interface. The *Quote & Invoice Editor* in Sonderplan provides a simple interface for creating, editing, and managing quotes and invoices. The layout, controls, and workflows are identical for both. From this point, we'll mostly talk about creating and editing **quotes**, however the process with invoices is almost identical! To navigate to the Quote editor in Sonderplan, open the main navigation menu and expand the **Sales** menu. To open an existing quote, click on the **Quote Number** from the **Quotes** table, or to create a new quote click on the **New** button **->Quote**. Sonderplan Quote Invoice Header ## Header Toolbar If you open an existing quote, in the top left of the editor, you'll see the generated **quote number**. If you're working on a new quote, this number will be generated when you first click the **Save** button. In the top-right, you’ll find: * **Status** Menu (e.g., Draft): Shows current document status; click to change (e.g., to Sent, Accepted). **Quote Statuses** - **Draft, Sent, Accepted, Invoiced** and **Declined** **Invoice Statuses** - **Draft, Submitted, Awaiting Payment** and **Paid** * - **Settings**: Opens the actions menu for advanced operations such as exporting to PDF, changing the currency or theme * - **Email**: Opens the Send modal for emailing the PDF to the client or contact person specified on the quote * - **Print**: Generates a print-friendly view or PDF. * - **Save**: Saves your changes. ### Updating Document Prefix Sonderplan allows you to override the prefix for an individual **quote** or **invoice**, providing flexibility when a specific document needs a different numbering format. #### How to update the prefix 1. Open the **Quote** or **Invoice** 2. Click the **settings (⚙️) icon** in the top toolbar 3. Select **“Prefix”** from the dropdown menu 4. Enter your desired prefix and save Sonderplan Update Prefix #### What this affects * The prefix change applies **only to the current document** * It overrides the default prefix for this specific quote or invoice * Other documents will continue using the global prefix settings #### When to use this * A document needs to follow a different numbering convention * You are issuing documents for different business units or clients * You need to correct or adjust a prefix on a one-off basis #### Global prefix settings If you want to update prefixes for all future documents, this can be configured in: [Admin → Global Sales Settings](/en/admin/global-sales-settings) #### Notes * Changing the prefix does **not** impact existing documents (other than the one being edited) * Future documents will continue using the global prefix unless overridden individually * Prefixes can be updated at any time ## Client / Contact Person In the next section, you can select the **Client** that this quote will be attached to. The client field is required to be set to allow the quote to be saved. If the client selected is an *organization*, and if *people client contacts* have been added to the client organization, they will be selectable in the **Client Contact Person** menu. ## Reference / Dates To the right of the client / contact fields are the **Reference**, **Date** and **Due Date** fields. ## Project / Custom Fields Moving further down, you can select the **Project** that this quote is related to. If you have created **Custom Fields** for the *quote and / or invoice* modules they will also appear in this section. ## Quote & Invoice Items Use the Items & Groups section of the Quote/Invoice Editor to organize your services, products, or custom line items into logical sections, apply discounts and taxes, and manage internal cost and pricing details. Items and groups can be re-arranged by clicking and dragging the item/grou from the area. Items can be moved in and out of groups, however only a single level of grouping is supported, groups cannot be nested within other groups. ### Add New Item Click the button to add a new item to your quote. The **Item Name** menu will be immediately opened with all **Services**, **Resources** and **Billable Items**. You can start typing to quickly find the correct item, or you can also type the complete name of the item and press ⏎ to create a custom item. ### Add New Group Click the button to add a new group to your quote, enter a **Group Name** and optional **Description** for the group. You can also apply a group discount that will apply the same discount to each item within the group. Sonderplan Quote Items ## Totals The following totals will be calculated and displayed at the bottom of the quote. | Type | Description | | ---------------- | ----------------------------------------------------------------------------------- | | Sub Total | Total of all quote items before tax and discounts are applied | | Discount Total | Total amount discounted from the quote | | Net Total | Subtotal after any discounts, not including taxes | | Tax Total | The amount of tax charged on the quote | | Total | The grand total (net + tax) of the quote | | Total Costs | The total amount of buy costs of the quote | | Estimated Margin | Shows projected profit for the quote, calculated as profit/total revenue percentage | ## Terms The **Terms** text input lets you communicate all the fine print your client needs to know before accepting a quote, use this field to spell out your payment and contractual conditions. Typical clauses include: * Validity: How long the quote remains open (e.g. “Valid for 30 days from date of issue”). * Deposit & Payment Schedule: Any upfront deposit (e.g. “50% due on acceptance”) and when the remainder is payable (e.g. “Balance due within 14 days of delivery”). * Late Fees: Interest or penalties applied to overdue balances (e.g. “1.5% per month on outstanding amounts”). * Scope & Extras: Clarify that out-of-scope work will be billed separately at your standard rates. * Exclusions: Note any costs not included (taxes, duties, shipping, etc.). * Cancellation Policy: Notice periods and any non-refundable deposit terms (e.g. “Cancellations must be submitted in writing at least 7 days before start date; deposits non-refundable”). # Export Formats Source: https://docs.sonderplan.com/en/quotes-invoices/export Gain real-time insights with prebuilt and custom reports that show the resources, rates and billable items used to work on the project. Quotes and Invoices can be exported to Excel and CSV formats, as well as complete JSON objects when accessed via the Sonderplan REST API. The tables below describes the output columns available in each of the export formats. ## Quotes ### CSV File To generate a *comma seperated values* (CSV) file, on the **Sales -> Quotes** page, click the ** -> Export -> CSV File** button. | | | | --------------- | ----------------- | | Generated on | **Local Browser** | | Maximum Results | **250** | #### Columns The following columns may be selected via the menu. | Id | Currency | Number | Client | Reference | Date Issued | Expiry Date | Project | Status | Sub Total | Discount Total | Buy Total | Net Total | Tax Total | Total | Theme | Created Date | Created By | Updated Date | Updated By | | ----- | -------- | ------ | ------------ | --------- | --------------- | --------------- | ----------------------------------- | --------- | ----------- | -------------- | ----------- | ----------- | --------- | ----------- | ------- | --------------------- | ---------- | --------------------- | ---------- | | 43578 | AUD | INV-1 | VW Australia | 9238423 | Tu, 15 Apr 2025 | Tu, 29 Apr 2025 | ID Buzz Australia Launch \[WV-1292] | Submitted | A\$3,475.00 | A\$0.00 | A\$1,600.00 | A\$3,475.00 | A\$0.00 | A\$3,475.00 | Default | 20:25 Tu, 15 Apr 2025 | Tim Mohr | 20:25 Tu, 15 Apr 2025 | Tim Mohr | ### Excel Spreadsheet To generate an Excel Spreadsheet file, on the **Sales -> Quotes** page, click the ** -> Export -> Excel Spreadsheet** button. | | | | --------------- | ---------- | | Generated on | **Server** | | Maximum Results | **10,000** | #### Standard Template Columns The following columns are output when the **Standard** excel template is selected. | QuoteNumber | Reference | Status | Date | ExpiryDate | Total | TaxTotal | SubTotal | DiscountTotal | NetTotal | Currency | ClientName | ClientEmail1 | ClientEmail2 | ClientEmail3 | ClientPhone1 | ClientPhone2 | ClientPhone3 | ClientAddressLine1 | ClientAddressLine2 | ClientAddressLine3 | ClientAddressCity | ClientAddressState | ClientAddressPostCode | ClientAddressCountry | ClientWebsite | ClientNotes | ContactName | ContactEmail1 | ContactEmail2 | ContactEmail3 | ContactPhone1 | ContactPhone2 | ContactPhone3 | ContactAddressLine1 | ContactAddressLine2 | ContactAddressLine3 | ContactAddressCity | ContactAddressState | ContactAddressPostCode | ContactAddressCountry | ContactWebsite | ContactNotes | ProjectName | ProjectCode | ProjectDescription | ProjectStatus | ItemGroupName | ItemGroupDescription | ItemUUID | ItemRateSchemeId | ItemText | ItemDescription | ItemQuantity | ItemUnit | ItemUnitAmount | ItemUnitBuyAmount | ItemDiscount | ItemLineAmount | ItemTaxAmount | ItemBookingId | Terms | | ----------- | --------- | --------- | ------------------------- | ------------------------- | ----- | -------- | -------- | ------------- | -------- | -------- | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | ------------------ | ------------------ | ------------------ | ----------------- | ------------------ | --------------------- | -------------------- | ------------- | ----------- | ----------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------------- | ------------------- | ------------------- | ------------------ | ------------------- | ---------------------- | --------------------- | -------------- | ------------ | ----------------------- | ----------- | ------------------ | ------------- | ------------- | ------------------------------------------- | -------- | ---------------- | -------- | --------------- | ------------ | -------- | -------------- | ----------------- | ------------ | -------------- | ------------- | ------------- | ----- | | QU-1 | | Submitted | 2025-04-15T00:00:00+10:00 | 2025-04-29T23:59:59+10:00 | 3475 | 0 | | | | AUD | VW Australia | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IDBuzz Australia Launch | VW-1292 | | In Progress | Offline | Thursday, 17 Apr 2025 - Friday, 18 Apr 2025 | r23405 | 2932 | Edit 1 | | 2 | daily | 500 | 0 | 0.00% | 1000 | | 1940070 | | #### Extended Template Columns The **extended** template includes expanded data about the quote and related models, including custom fields related to the client, project and bookings. Currently only single quotes can be exported using the Extended template *** ## Invoices ### CSV File To generate a *comma seperated values* (CSV) file, on the **Sales -> Invoices** page, click the ** -> Export -> CSV File** button. | | | | --------------- | ----------------- | | Generated on | **Local Browser** | | Maximum Results | **250** | #### Columns The following columns may be selected via the menu. | Id | Currency | Number | Client | Reference | Date Issued | Due Date | Project | Status | Sub Total | Discount Total | Buy Total | Net Total | Tax Total | Total | Theme | Created Date | Created By | Updated Date | Updated By | | ----- | -------- | ------ | ------------ | --------- | --------------- | --------------- | ----------------------------------- | --------- | ----------- | -------------- | ----------- | ----------- | --------- | ----------- | ------- | --------------------- | ---------- | --------------------- | ---------- | | 43578 | AUD | INV-1 | VW Australia | 9238423 | Tu, 15 Apr 2025 | Tu, 29 Apr 2025 | ID Buzz Australia Launch \[WV-1292] | Submitted | A\$3,475.00 | A\$0.00 | A\$1,600.00 | A\$3,475.00 | A\$0.00 | A\$3,475.00 | Default | 20:25 Tu, 15 Apr 2025 | Tim Mohr | 20:25 Tu, 15 Apr 2025 | Tim Mohr | ### Excel Spreadsheet To generate an Excel Spreadsheet file, on the **Sales -> Invoices** page, click the ** -> Export -> Excel Spreadsheet** button. | | | | --------------- | ---------- | | Generated on | **Server** | | Maximum Results | **10,000** | #### Standard Template Columns The following columns are output when the **Standard** excel template is selected. | InvoiceNumber | Reference | Status | Date | DueDate | Total | TaxTotal | SubTotal | DiscountTotal | NetTotal | Currency | ClientName | ClientEmail1 | ClientEmail2 | ClientEmail3 | ClientPhone1 | ClientPhone2 | ClientPhone3 | ClientAddressLine1 | ClientAddressLine2 | ClientAddressLine3 | ClientAddressCity | ClientAddressState | ClientAddressPostCode | ClientAddressCountry | ClientWebsite | ClientNotes | ContactName | ContactEmail1 | ContactEmail2 | ContactEmail3 | ContactPhone1 | ContactPhone2 | ContactPhone3 | ContactAddressLine1 | ContactAddressLine2 | ContactAddressLine3 | ContactAddressCity | ContactAddressState | ContactAddressPostCode | ContactAddressCountry | ContactWebsite | ContactNotes | ProjectName | ProjectCode | ProjectDescription | ProjectStatus | ItemGroupName | ItemGroupDescription | ItemUUID | ItemRateSchemeId | ItemText | ItemDescription | ItemQuantity | ItemUnit | ItemUnitAmount | ItemUnitBuyAmount | ItemDiscount | ItemLineAmount | ItemTaxAmount | ItemBookingId | Terms | | ------------- | --------- | --------- | ------------------------- | ------------------------- | ----- | -------- | -------- | ------------- | -------- | -------- | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | ------------------ | ------------------ | ------------------ | ----------------- | ------------------ | --------------------- | -------------------- | ------------- | ----------- | ----------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------------- | ------------------- | ------------------- | ------------------ | ------------------- | ---------------------- | --------------------- | -------------- | ------------ | ----------------------- | ----------- | ------------------ | ------------- | ------------- | ------------------------------------------- | -------- | ---------------- | -------- | --------------- | ------------ | -------- | -------------- | ----------------- | ------------ | -------------- | ------------- | ------------- | ----- | | INV-1 | | Submitted | 2025-04-15T00:00:00+10:00 | 2025-04-29T23:59:59+10:00 | 3475 | 0 | | | | AUD | VW Australia | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IDBuzz Australia Launch | VW-1292 | | In Progress | Offline | Thursday, 17 Apr 2025 - Friday, 18 Apr 2025 | r23405 | 2932 | Edit 1 | | 2 | daily | 500 | 0 | 0.00% | 1000 | | 1940070 | | #### Extended Template Columns The **extended** template includes expanded data about the invoice and related models, including custom fields related to the client, project and bookings. Currently only single invoices can be exported using the Extended template #### Xero Manual Import This Excel file can be used to manually import invoices created in Sonderplan to Xero. Before importing the file into Xero * Enter the relevant account code in **AccountCode** as it displays in the chart of accounts. * Enter the tax rate display name in **TaxType** as it displays in tax settings, *eg GST on Income* * Google *"Xero Import Customer Invoices"* to find the official Xero help documentation on importing invoices To automatically sync invoices between Sonderplan and Xero, you can create an integration with our [Zapier connector](/en/admin/zapier). # User Interface Source: https://docs.sonderplan.com/en/ui/general Learn how Sonderplan’s unified interface works across the platform—from navigation and theme settings to real-time syncing and powerful filtering tools. The Sonderplan user interface is designed to provide a consistent, intuitive experience across all pages, with a focus on ease of navigation, customisation, and real-time responsiveness. Below is an overview of the key UI components and concepts that are shared throughout the platform. ## Interface Elements Sonderplan general user interface ### Collapsible Navigation Sidebar Located on the left side of the screen, the main navigation gives you access to core areas of the platform including **Schedule, Bookings, Projects, Contacts, Sales**, and **Admin** pages. * You can collapse or expand the sidebar using the arrow toggle, freeing up screen space when needed. * The bottom section of the expanded sidebar contains quick access links to the Sonderplan documentation and support system, making it easy to find help when you need it. ### Running Timer Users enabled with Time Tracking will see a running timer in the top of the main navigation sidebar. ### Light / Dark Mode Toggle At the bottom of the navigation menu, you'll find the **light/dark mode** toggle, allowing you to switch themes based on your preferences or work environment. Your choice is saved automatically and applied across all pages. ### Live Updates Status The **Online status** indicator at the very bottom left reflects the health of Sonderplan’s live updates service—the system responsible for keeping your interface in sync with real-time changes made by you or your team. If this service is disrupted, you’ll be alerted to ensure you're aware of potential delays in data updates. ### Main Content Area The central part of every page is the main content container, where you’ll interact with schedules, bookings, quotes, invoices, reports and other modules. ### Collapsible Filter Panel Most pages also feature a collapsible filter panel on the right-hand side. These filters allow you to refine the data you're viewing—such as by resource, project, client, or date range—and update results in real time. You can open or close this panel as needed to suit your workflow. # My Account Source: https://docs.sonderplan.com/en/ui/my-account Manage your name, security credentials, user interface settings and notification preferences To open the *My Account* page, in the main sidebar menu, click on **your Name** --> **My Account**. Sonderplan user my account ## Profile Use the Profile section to review and update your basic identity and primary login email: ### First Name & Last Name Enter or correct the name you’d like displayed throughout Sonderplan (e.g. in booking confirmations). ### Primary Email Your main contact and login address. To change this, replace the current email and click Save Changes. A confirmation email may be sent to verify the new address. ## Account Settings Control regional formats, time handling, and notifications: | Setting | Description | | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------- | | **Locale** | Choose your language and regional conventions (e.g. English (US), Deutsch (DE)). Affects system UI text and currency formats. | | **Timezone** | Select your local timezone (e.g. Australia/Sydney +10:00). All booking times, calendar feeds, and timestamps will display accordingly. | | **Date Format** | Pick your preferred date notation (e.g. `dd/mm/yyyy`, `mm/dd/yyyy`, `yyyy-mm-dd`). | | **Time Format** | Choose 12-hour or 24-hour clock display. | | **Notifications** | Control how Sonderplan contacts you about activity: `Send notification emails (default)`, `Do not send emails` | ## Personal Calendar Feed Subscribe to your bookings in external calendar apps (e.g. Google Calendar, Outlook): 1. **Enable Calendar Feed** - Tick the checkbox to activate your personal iCal feed. 2. **Calendar Feed URL** - Copy this secure URL and paste it into your calendar application’s “Subscribe to a calendar” field. Treat this link like a password, do not share it publicly. ## Photo Upload or update your profile picture, which appears next to your name in Sonderplan: 1. Click the avatar area to open the file picker. 2. Select a square portrait image (JPEG or PNG). 3. The new photo will display immediately—click Save Changes to finalize. ## User Actions ### Change Password 1. Click **Change Password** to open a secure dialog. 2. Enter your **current password**, then choose and confirm a **new, strong password**. 3. Click **Save** to update. # Create Billable Item Source: https://docs.sonderplan.com/api-reference/billable-item/create-billable-item /api-reference/openapi-mintlify.yaml post /v2/billable-item `WRITE` access to the `SALES` module is required to access this endpoint # Delete Billable Item Source: https://docs.sonderplan.com/api-reference/billable-item/delete-billable-item /api-reference/openapi-mintlify.yaml delete /v2/billable-item `WRITE` access to the `SALES` module is required to access this endpoint # Get Billable Items Source: https://docs.sonderplan.com/api-reference/billable-item/get-billable-items /api-reference/openapi-mintlify.yaml get /v2/billable-item Billable items can be added to bookings, quotes, and invoices as predefined entries with a fixed unit price. Examples of billable items include catering services provided to clients, storage fees (typically charged per terabyte), and media transcoding (usually billed per minute). `READ` access to the `SALES` module is required to access this endpoint # Update Billable Item Source: https://docs.sonderplan.com/api-reference/billable-item/update-billable-item /api-reference/openapi-mintlify.yaml put /v2/billable-item `WRITE` access to the `SALES` module is required to access this endpoint # Bulk Bookings Source: https://docs.sonderplan.com/api-reference/booking/bulk-bookings /api-reference/openapi-mintlify.yaml post /v2/booking/bulk This endpoint implements Create, Update and Delete of bulk bookings. It is intended for *one time* import operations, or other use cases that require higher performance at the expense of notification and realtime update features. `WRITE` access to the `SCHEDULE` module is required to access this endpointBookings created, edited or deleted using this endpoint won't trigger **email notifications**, **web-hooks** or **realtime schedule updates** # Create Booking Source: https://docs.sonderplan.com/api-reference/booking/create-booking /api-reference/openapi-mintlify.yaml post /v2/booking `WRITE` access to the `SCHEDULE` module is required to access this endpoint The `bookingCreated` webhook will be fired when this endpoint has run successfullyTo avoid generating lots of undesired notifications, take care when creating or updating bookings and consider using the `notify_user_resources` option which can be used to silence notifications for end users. # Delete Booking Source: https://docs.sonderplan.com/api-reference/booking/delete-booking /api-reference/openapi-mintlify.yaml delete /v2/booking `WRITE` access to the `SCHEDULE` module is required to access this endpointTo avoid generating lots of undesired notifications, take care when creating or updating bookings and consider using the `notify_user_resources` option which can be used to silence notifications for end users. # Get Booking Clashes Source: https://docs.sonderplan.com/api-reference/booking/get-booking-clashes /api-reference/openapi-mintlify.yaml get /v2/booking/checkclash A booking clash is when one or more bookings overlap in time and (optionally) resources, which would create a double booking or scheduling conflict. `READ` access to the `SCHEDULE` module is required to access this endpointIf you are creating a booking and want to be sure there won't be a collision, you **don't** need to call this endpoint first.

New and updated bookings are automatically checked for clashes, unless the `check_clashes=false` is present as a query parameter.
# Get Bookings Source: https://docs.sonderplan.com/api-reference/booking/get-bookings /api-reference/openapi-mintlify.yaml get /v2/booking Bookings can be understood as time-based events (with start and end dates / times), which are typically represented on a calendar. Bookings include details about the event's timing, the resources being used, and additional information such as the client, associated project, rate details, and any custom attributes defined through custom fields. `READ` access to the `SCHEDULE` module is required to access this endpoint # Lock Booking Source: https://docs.sonderplan.com/api-reference/booking/lock-booking /api-reference/openapi-mintlify.yaml put /v2/booking/lock The Sonderplan user interface features a booking locking system that prevents accidental overwrites when multiple users are editing the same booking. A booking lock is automatically created for a user that opens the booking editor sidebar, or clicks on *Edit* in the advanced booking editor. The lock is automatically deleted if the user saves and closes, or cancels the save operation. Booking locks automatically created by Sonderplan will last for 10 minutes, unless extended by the user when a lock expiration warning is shown. It is possible to manually lock and unlock bookings with these API endpoints and set the lock time to a custom time as required. `WRITE` access to the `SCHEDULE` module is required to access this endpoint # Unlock Booking Source: https://docs.sonderplan.com/api-reference/booking/unlock-booking /api-reference/openapi-mintlify.yaml put /v2/booking/unlock The Sonderplan user interface features a booking locking system that prevents accidental overwrites when multiple users are editing the same booking. A booking lock is automatically created for a user that opens the booking editor sidebar, or clicks on *Edit* in the advanced booking editor. The lock is automatically deleted if the user saves and closes, or cancels the save operation. Booking locks automatically created by Sonderplan will last for 10 minutes, unless extended by the user when a lock expiration warning is shown. It is possible to manually lock and unlock bookings with these API endpoints and set the lock time to a custom time as required. `WRITE` access to the `SCHEDULE` module is required to access this endpoint # Update Booking Source: https://docs.sonderplan.com/api-reference/booking/update-booking /api-reference/openapi-mintlify.yaml put /v2/booking `WRITE` access to the `SCHEDULE` module is required to access this endpoint The `bookingEdited` webhook will be fired when this endpoint has run successfullyTo avoid generating lots of undesired notifications, take care when creating or updating bookings and consider using the `notify_user_resources` option which can be used to silence notifications for end users. # Create Calendar Subscription Source: https://docs.sonderplan.com/api-reference/calendar-subscription/create-calendar-subscription /api-reference/openapi-mintlify.yaml post /v2/calendar-subscription/import `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Calendar Subscription Source: https://docs.sonderplan.com/api-reference/calendar-subscription/delete-calendar-subscription /api-reference/openapi-mintlify.yaml delete /v2/calendar-subscription/import `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Calendar Subscriptions Source: https://docs.sonderplan.com/api-reference/calendar-subscription/get-calendar-subscriptions /api-reference/openapi-mintlify.yaml get /v2/calendar-subscription/import Sonderplan supports calendar subscriptions for both importing and exporting events, using the standard iCalendar format. This format is widely supported by popular calendar services like Google Calendar, Outlook, and Apple iCloud. ### Import Calendar Sync Subscriptions Import calendar sync allows you to bring external events into Sonderplan, such as syncing events from Google Calendar to Sonderplan bookings or sharing bookings between two separate Sonderplan instances. To set up an import, you can generate an iCalendar feed URL from the external calendar (e.g., Google Calendar) and copy it into a new Import Calendar subscription in Sonderplan. During setup, you can define default properties for imported bookings, such as resources, status, and associated projects. Sonderplan automatically checks these feeds at least once an hour and updates the schedule with any changes to the imported events. ### Export Calendar Subscriptions Export calendar subscriptions allow you to share bookings from Sonderplan with external calendars, such as syncing the bookings of specific resources to a shared Google Calendar. To enable export feeds, you must activate booking feeds for resources, schedules, or projects in the Sonderplan UI. The feed URL can then be retrieved from the corresponding endpoint using the `feed` property, which can be shared or integrated with external calendar systems. `READ` access to the `ADMIN` module is required to access this endpoint # Update Calendar Subscription Source: https://docs.sonderplan.com/api-reference/calendar-subscription/update-calendar-subscription /api-reference/openapi-mintlify.yaml put /v2/calendar-subscription/import `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Contact Source: https://docs.sonderplan.com/api-reference/contact/create-contact /api-reference/openapi-mintlify.yaml post /v2/contact `WRITE` access to the `CONTACT` module is required to access this endpoint The `contactCreated` webhook will be fired when this endpoint has run successfullyUnlike virtually every other model, contact `id` **cannot be assumed to be unique. Use `uuid` instead.**

Contacts may be either people or organizations and these are stored in separate tables in the database, each with its own auto-incrementing identifier.

The contacts model creates a union between these two tables to allow simplified operations under a single namespace.
# Delete Contact Source: https://docs.sonderplan.com/api-reference/contact/delete-contact /api-reference/openapi-mintlify.yaml delete /v2/contact `WRITE` access to the `CONTACT` module is required to access this endpointUnlike virtually every other model, contact `id` **cannot be assumed to be unique. Use `uuid` instead.**

Contacts may be either people or organizations and these are stored in separate tables in the database, each with its own auto-incrementing identifier.

The contacts model creates a union between these two tables to allow simplified operations under a single namespace.
# Get Contacts Source: https://docs.sonderplan.com/api-reference/contact/get-contacts /api-reference/openapi-mintlify.yaml get /v2/contact You can create contacts for anyone you need to keep in touch with, such as your clients, suppliers, staff, or even resources. Contacts help you store and organize important details like phone numbers, email addresses, and other contact information, making it easy to manage communication across your projects. `READ` access to the `CONTACT` module is required to access this endpointUnlike virtually every other model, contact `id` **cannot be assumed to be unique. Use `uuid` instead.**

Contacts may be either people or organizations and these are stored in separate tables in the database, each with its own auto-incrementing identifier.

The contacts model creates a union between these two tables to allow simplified operations under a single namespace.
# Update Contact Source: https://docs.sonderplan.com/api-reference/contact/update-contact /api-reference/openapi-mintlify.yaml put /v2/contact `WRITE` access to the `CONTACT` module is required to access this endpoint The `contactEdited` webhook will be fired when this endpoint has run successfullyUnlike virtually every other model, contact `id` **cannot be assumed to be unique. Use `uuid` instead.**

Contacts may be either people or organizations and these are stored in separate tables in the database, each with its own auto-incrementing identifier.

The contacts model creates a union between these two tables to allow simplified operations under a single namespace.
# Create Custom Field Source: https://docs.sonderplan.com/api-reference/custom-field/create-custom-field /api-reference/openapi-mintlify.yaml post /v2/custom-field `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Custom Field Source: https://docs.sonderplan.com/api-reference/custom-field/delete-custom-field /api-reference/openapi-mintlify.yaml delete /v2/custom-field `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Custom Fields Source: https://docs.sonderplan.com/api-reference/custom-field/get-custom-fields /api-reference/openapi-mintlify.yaml get /v2/custom-field Custom fields are user-defined fields that let you capture additional information tailored to your organization’s specific needs. They can be added to bookings, projects, resources, contacts, quotes, and invoices, offering the flexibility to store and manage data not covered by the default fields. Custom fields can be configured with three input types: single-line text, multi-line text, and dropdown select menus with predefined options. For example, you could use custom fields to track additional producers, links to files in external systems, internal notes, or client preferences. `READ` access to the `ADMIN` module is required to access this endpoint # Update Custom Field Source: https://docs.sonderplan.com/api-reference/custom-field/update-custom-field /api-reference/openapi-mintlify.yaml put /v2/custom-field `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Group Source: https://docs.sonderplan.com/api-reference/group/create-group /api-reference/openapi-mintlify.yaml post /v2/group `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Group Source: https://docs.sonderplan.com/api-reference/group/delete-group /api-reference/openapi-mintlify.yaml delete /v2/group `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Groups Source: https://docs.sonderplan.com/api-reference/group/get-groups /api-reference/openapi-mintlify.yaml get /v2/group In Sonderplan, a Group is a set of users who share the same permissions and access rights. Groups simplify user management by assigning roles and responsibilities collectively rather than individually. For instance, you can create groups for administrators and staff members, each with tailored permissions, such as access to specific resources, schedules, or features. You can also restrict access to certain modules, like quotes and invoices, for specific groups. Groups ensure consistent access control, streamline role-based management, and make it easy to update permissions for multiple users at once. `READ` access to the `ADMIN` module is required to access this endpoint # Update Group Source: https://docs.sonderplan.com/api-reference/group/update-group /api-reference/openapi-mintlify.yaml put /v2/group `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Instance Source: https://docs.sonderplan.com/api-reference/instance/get-instance /api-reference/openapi-mintlify.yaml get /v2/instance Use this endpoint to retrieve meta and usage information about your Sonderplan instance `READ` access to the `ADMIN` module is required to access this endpoint # Create Invoice Source: https://docs.sonderplan.com/api-reference/invoice/create-invoice /api-reference/openapi-mintlify.yaml post /v2/invoice `WRITE` access to the `SALES` module is required to access this endpoint The `invoiceCreated` webhook will be fired when this endpoint has run successfully # Delete Invoice Source: https://docs.sonderplan.com/api-reference/invoice/delete-invoice /api-reference/openapi-mintlify.yaml delete /v2/invoice `WRITE` access to the `SALES` module is required to access this endpoint # Duplicate Invoice Source: https://docs.sonderplan.com/api-reference/invoice/duplicate-invoice /api-reference/openapi-mintlify.yaml post /v2/invoice/duplicate `WRITE` access to the `SALES` module is required to access this endpoint The `invoiceCreated` webhook will be fired when this endpoint has run successfully # Generate Invoice PDF Source: https://docs.sonderplan.com/api-reference/invoice/generate-invoice-pdf /api-reference/openapi-mintlify.yaml get /v2/invoice/pdf Retrieves a PDF‐formatted version of an existing invoice. Clients issue a GET request to `/v2/invoice/pdf?id={id}` where `{id}` is the numeric identifier of the invoice you wish to download. On success, the server responds with `HTTP 200` and streams back a binary PDF `(Content-Type: application/pdf)` along with a Content-Disposition header that suggests the filename. Because this is a read-only operation, it is safe and idempotent, and responses can be cached by HTTP caches or CDNs. If no invoice exists with the given ID, the endpoint returns HTTP 404 with a JSON error payload; any unexpected failure returns HTTP 500 with an explanatory message. `READ` access to the `SALES` module is required to access this endpoint # Get Invoices Source: https://docs.sonderplan.com/api-reference/invoice/get-invoices /api-reference/openapi-mintlify.yaml get /v2/invoice An invoice is a financial document issued to a client to request payment for services rendered or resources used. Invoices typically include key details such as the client’s information, a list of bookings, services or items being billed, applicable rates, taxes, discounts, and the total amount due. They serve as an official record of the transaction and can be customized to include additional details like payment terms, due dates, or custom notes. Invoices may also be generated from approved quotes, streamlining the billing process. `READ` access to the `SALES` module is required to access this endpoint # Update Invoice Source: https://docs.sonderplan.com/api-reference/invoice/update-invoice /api-reference/openapi-mintlify.yaml put /v2/invoice `WRITE` access to the `SALES` module is required to access this endpoint The `invoiceEdited` webhook will be fired when this endpoint has run successfully # Get Quotes Source: https://docs.sonderplan.com/api-reference/quote/get-quotes /api-reference/openapi-mintlify.yaml get /v2/quote In Sonderplan, a quote is a detailed proposal that outlines the estimated costs for a project or set of bookings. Quotes typically include information such as the client, associated bookings, resources, rates, taxes, discounts, and any additional charges or custom details. They are used to provide clients with a clear breakdown of costs before confirming a project, helping ensure transparency and agreement on pricing. Once approved, quotes can often be converted into invoices or used as a basis for further planning. `READ` access to the `SALES` module is required to access this endpoint # Create Rate Scheme Source: https://docs.sonderplan.com/api-reference/rate-scheme/create-rate-scheme /api-reference/openapi-mintlify.yaml post /v2/rate-scheme `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Rate Scheme Source: https://docs.sonderplan.com/api-reference/rate-scheme/delete-rate-scheme /api-reference/openapi-mintlify.yaml delete /v2/rate-scheme `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Resource Source: https://docs.sonderplan.com/api-reference/resource/create-resource /api-reference/openapi-mintlify.yaml post /v2/resource `WRITE` access to the `ADMIN` module is required to access this endpoint The `resourceCreated` webhook will be fired when this endpoint has run successfullyIf you are using Sonderplan on a **Flexible Billing** plan, creating resources will result in **additional charges** (calculated pro rata) being automatically charged to your credit card. # Delete Resource Source: https://docs.sonderplan.com/api-reference/resource/delete-resource /api-reference/openapi-mintlify.yaml delete /v2/resource `WRITE` access to the `ADMIN` module is required to access this endpointIf you're using Sonderplan with a **Flexible Billing** plan, deleting resources will generate unused **time credits** for the resource. These credits will be automatically applied to your account and used toward future invoices. # Get Resources Source: https://docs.sonderplan.com/api-reference/resource/get-resources /api-reference/openapi-mintlify.yaml get /v2/resource In Sonderplan, resources refer to any item or entity that can be booked, such as rooms, people, equipment, or actions like recreation and sick leave. For people resources, it’s recommended to link them to a corresponding contact record using the type_person_id attribute. Resources can be organized into hierarchical groups using the parent_id attribute, which enables the visual nesting of similar resources for better organization. Additionally, resources must be assigned to at least one schedule to appear in the resource selection menu in Sonderplan. `READ` access to the `ADMIN` module is required to access this endpoint # Update Resource Source: https://docs.sonderplan.com/api-reference/resource/update-resource /api-reference/openapi-mintlify.yaml put /v2/resource `WRITE` access to the `ADMIN` module is required to access this endpoint The `resourceEdited` webhook will be fired when this endpoint has run successfully # Create Status Source: https://docs.sonderplan.com/api-reference/status/create-status /api-reference/openapi-mintlify.yaml post /v2/status `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Status Source: https://docs.sonderplan.com/api-reference/status/delete-status /api-reference/openapi-mintlify.yaml delete /v2/status `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Status Source: https://docs.sonderplan.com/api-reference/status/get-status /api-reference/openapi-mintlify.yaml get /v2/status Statuses can be thought of as labels that indicate the current state or progress of a booking, helping users track and manage bookings by categorizing them based on their workflow stage. Examples include "Confirmed," "Tentative," "Cancelled," or custom statuses designed to suit your organization’s needs. Booking statuses are essential for organizing schedules, as they visually distinguish bookings and can trigger specific actions like sending notifications or updating workflows. `READ` access to the `ADMIN` module is required to access this endpoint # Update Status Source: https://docs.sonderplan.com/api-reference/status/update-status /api-reference/openapi-mintlify.yaml put /v2/status `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Tax Source: https://docs.sonderplan.com/api-reference/tax/create-tax /api-reference/openapi-mintlify.yaml post /v2/tax `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Tax Source: https://docs.sonderplan.com/api-reference/tax/delete-tax /api-reference/openapi-mintlify.yaml delete /v2/tax `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Taxes Source: https://docs.sonderplan.com/api-reference/tax/get-taxes /api-reference/openapi-mintlify.yaml get /v2/tax In Sonderplan, taxes represent the percentage-based fees applied to line items within quotes, or invoices to comply with financial regulations. Taxes can be configured to reflect applicable rates, such as VAT, GST, or sales tax, depending on your location or business requirements. Sonderplan allows you to create and manage multiple tax rates, ensuring accurate calculations for different scenarios. Taxes are automatically applied to line items as specified, and they appear as a separate entry on invoices and quotes for transparency. `READ` access to the `ADMIN` module is required to access this endpoint # Update Tax Source: https://docs.sonderplan.com/api-reference/tax/update-tax /api-reference/openapi-mintlify.yaml put /v2/tax `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Time Activity Source: https://docs.sonderplan.com/api-reference/time-activity/create-time-activity /api-reference/openapi-mintlify.yaml post /v2/time-activity `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Time Activity Source: https://docs.sonderplan.com/api-reference/time-activity/delete-time-activity /api-reference/openapi-mintlify.yaml delete /v2/time-activity `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Time Activities Source: https://docs.sonderplan.com/api-reference/time-activity/get-time-activities /api-reference/openapi-mintlify.yaml get /v2/time-activity Time activities are predefined task categories that users can reference when logging time entries in the time-tracking system. By standardizing task types, predefined activities enhance reporting accuracy, providing insights into the specific work required to complete a project. `READ` access to the `ADMIN` module is required to access this endpoint # Update Time Activity Source: https://docs.sonderplan.com/api-reference/time-activity/update-time-activity /api-reference/openapi-mintlify.yaml put /v2/time-activity `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Time Entry Source: https://docs.sonderplan.com/api-reference/time-entry/create-time-entry /api-reference/openapi-mintlify.yaml post /v2/time-entry `WRITE` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Delete Time Entry Source: https://docs.sonderplan.com/api-reference/time-entry/delete-time-entry /api-reference/openapi-mintlify.yaml delete /v2/time-entry `WRITE` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Get Time Entries Source: https://docs.sonderplan.com/api-reference/time-entry/get-time-entries /api-reference/openapi-mintlify.yaml get /v2/time-entry Time activities are predefined task categories that users can reference when logging time entries in the time-tracking system. By standardising task types, predefined activities enhance reporting accuracy, providing insights into the specific work required to complete a project. `READ` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Stop Time Entry Source: https://docs.sonderplan.com/api-reference/time-entry/stop-time-entry /api-reference/openapi-mintlify.yaml patch /v2/time-entry/stop `WRITE` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Update Time Entry Source: https://docs.sonderplan.com/api-reference/time-entry/update-time-entry /api-reference/openapi-mintlify.yaml put /v2/time-entry `WRITE` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Create Workspace Source: https://docs.sonderplan.com/api-reference/workspace/create-workspace /api-reference/openapi-mintlify.yaml post /v2/workspace `WRITE` access to the `ADMIN` module is required to access this endpoint The `scheduleCreated` webhook will be fired when this endpoint has run successfully # Delete Workspace Source: https://docs.sonderplan.com/api-reference/workspace/delete-workspace /api-reference/openapi-mintlify.yaml delete /v2/workspace `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Workspaces Source: https://docs.sonderplan.com/api-reference/workspace/get-workspaces /api-reference/openapi-mintlify.yaml get /v2/workspace A workspace (formerly known as a Schedule) is a collection of resources displayed in a timeline or calendar view on the Schedule, designed to help you manage and visualize resource usage. Workspaces make it easy to group and organize resources, such as rooms, equipment, or personnel, based on specific criteria like departments, resource types, or office locations. Additionally, workspaces include access control features, allowing you to restrict viewing and booking permissions to specific users or groups for enhanced security and organization. `READ` access to the `ADMIN` module is required to access this endpoint # Update Workspace Source: https://docs.sonderplan.com/api-reference/workspace/update-workspace /api-reference/openapi-mintlify.yaml put /v2/workspace `WRITE` access to the `ADMIN` module is required to access this endpoint The `scheduleEdited` webhook will be fired when this endpoint has run successfully # Create Invoice Template Source: https://docs.sonderplan.com/api-reference/invoice-template/create-invoice-template /api-reference/openapi-mintlify.yaml post /v2/invoice-template `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Invoice Template Source: https://docs.sonderplan.com/api-reference/invoice-template/delete-invoice-template /api-reference/openapi-mintlify.yaml delete /v2/invoice-template `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Invoice Templates Source: https://docs.sonderplan.com/api-reference/invoice-template/get-invoice-templates /api-reference/openapi-mintlify.yaml get /v2/invoice-template An invoice (or quote) template is a customizable layout used to generate invoices and quotes with a consistent format and design. It defines how details such as client information, items, taxes, and totals are displayed. Invoice templates can include your branding elements, like logos and company information, as well as custom fields or notes specific to your business needs. Both **Quote** and **Invoice** templates can be created, edited and deleted using this endpoint so be sure to use the correct `type_id`. `READ` access to the `ADMIN` module is required to access this endpoint # Update Invoice Template Source: https://docs.sonderplan.com/api-reference/invoice-template/update-invoice-template /api-reference/openapi-mintlify.yaml put /v2/invoice-template `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Project Source: https://docs.sonderplan.com/api-reference/project/create-project /api-reference/openapi-mintlify.yaml post /v2/project `WRITE` access to the `PROJECT` module is required to access this endpoint The `projectCreated` webhook will be fired when this endpoint has run successfully # Create Project Folder Source: https://docs.sonderplan.com/api-reference/project/create-project-folder /api-reference/openapi-mintlify.yaml post /v2/project/folder `WRITE` access to the `PROJECT` module is required to access this endpoint # Create Project Phase Source: https://docs.sonderplan.com/api-reference/project/create-project-phase /api-reference/openapi-mintlify.yaml post /v2/project/phase `WRITE` access to the `PROJECT` module is required to access this endpoint # Delete Project Source: https://docs.sonderplan.com/api-reference/project/delete-project /api-reference/openapi-mintlify.yaml delete /v2/project `WRITE` access to the `PROJECT` module is required to access this endpoint # Delete Project Folder Source: https://docs.sonderplan.com/api-reference/project/delete-project-folder /api-reference/openapi-mintlify.yaml delete /v2/project/folder `WRITE` access to the `PROJECT` module is required to access this endpoint # Delete Project Phase Source: https://docs.sonderplan.com/api-reference/project/delete-project-phase /api-reference/openapi-mintlify.yaml delete /v2/project/phase `WRITE` access to the `PROJECT` module is required to access this endpoint # Get Project Folders Source: https://docs.sonderplan.com/api-reference/project/get-project-folders /api-reference/openapi-mintlify.yaml get /v2/project/folder Project folders enable projects to be grouped and organized into one or more hierarchical levels. For example, if you're working on an episodic production, you can create a project folder for the season or series and organize all related projects within that folder. `READ` access to the `PROJECT` module is required to access this endpoint # Get Project Phases Source: https://docs.sonderplan.com/api-reference/project/get-project-phases /api-reference/openapi-mintlify.yaml get /v2/project/phase Projects are often divided into distinct phases, each associated with one or more deadlines. Project phases provide a way to visually organize and track your project's progress using phase markers and deadlines displayed on the Sonderplan Project Timeline. For example, in a typical post-production workflow, you might have phases for ingesting media, assembly editing, offline/online editing, grading, and final export. `READ` access to the `PROJECT` module is required to access this endpoint # Get Projects Source: https://docs.sonderplan.com/api-reference/project/get-projects /api-reference/openapi-mintlify.yaml get /v2/project In Sonderplan a project represents a container for grouping related bookings, files, quotes and invoices. Projects allow users to organize their work by associating bookings with a specific purpose, client, or final deliverable (such as a movie or commercial). Projects include metadata such as the project name, client information, deadlines, files, and any custom attributes defined (via custom fields) by the user. This helps streamline project management and reporting by keeping all relevant details in one place. `READ` access to the `PROJECT` module is required to access this endpoint # Update Project Source: https://docs.sonderplan.com/api-reference/project/update-project /api-reference/openapi-mintlify.yaml put /v2/project `WRITE` access to the `PROJECT` module is required to access this endpoint The `projectEdited` webhook will be fired when this endpoint has run successfully # Update Project Folder Source: https://docs.sonderplan.com/api-reference/project/update-project-folder /api-reference/openapi-mintlify.yaml put /v2/project/folder `WRITE` access to the `PROJECT` module is required to access this endpoint # Update Project Phase Source: https://docs.sonderplan.com/api-reference/project/update-project-phase /api-reference/openapi-mintlify.yaml put /v2/project/phase `WRITE` access to the `PROJECT` module is required to access this endpoint # Create Quote Source: https://docs.sonderplan.com/api-reference/quote/create-quote /api-reference/openapi-mintlify.yaml post /v2/quote `WRITE` access to the `SALES` module is required to access this endpoint The `quoteCreated` webhook will be fired when this endpoint has run successfully # Delete Quote Source: https://docs.sonderplan.com/api-reference/quote/delete-quote /api-reference/openapi-mintlify.yaml delete /v2/quote `WRITE` access to the `SALES` module is required to access this endpoint # Duplicate Quote Source: https://docs.sonderplan.com/api-reference/quote/duplicate-quote /api-reference/openapi-mintlify.yaml post /v2/quote/duplicate `WRITE` access to the `SALES` module is required to access this endpoint The `quoteCreated` webhook will be fired when this endpoint has run successfully # Generate Quote PDF Source: https://docs.sonderplan.com/api-reference/quote/generate-quote-pdf /api-reference/openapi-mintlify.yaml get /v2/quote/pdf Retrieves a PDF‐formatted version of an existing quote. Clients issue a GET request to `/v2/quote/pdf?id={id}` where `{id}` is the numeric identifier of the quote you wish to download. On success, the server responds with `HTTP 200` and streams back a binary PDF `(Content-Type: application/pdf)` along with a Content-Disposition header that suggests the filename. Because this is a read-only operation, it is safe and idempotent, and responses can be cached by HTTP caches or CDNs. If no quote exists with the given ID, the endpoint returns HTTP 404 with a JSON error payload; any unexpected failure returns HTTP 500 with an explanatory message. `READ` access to the `SALES` module is required to access this endpoint # Update Quote Source: https://docs.sonderplan.com/api-reference/quote/update-quote /api-reference/openapi-mintlify.yaml put /v2/quote `WRITE` access to the `SALES` module is required to access this endpoint The `quoteEdited` webhook will be fired when this endpoint has run successfully # Create Rate Scheme Source: https://docs.sonderplan.com/api-reference/rate-scheme/create-rate-scheme /api-reference/openapi-mintlify.yaml post /v2/rate-scheme `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Rate Scheme Source: https://docs.sonderplan.com/api-reference/rate-scheme/delete-rate-scheme /api-reference/openapi-mintlify.yaml delete /v2/rate-scheme `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Rate Schemes Source: https://docs.sonderplan.com/api-reference/rate-scheme/get-rate-schemes /api-reference/openapi-mintlify.yaml get /v2/rate-scheme Rate schemes function like rate cards, allowing you to define costs and discounts for each resource. They can be tailored based on criteria such as date, time, client, or a combination of these. Each rate scheme lets you specify hourly, daily, and weekly buy and sell rates, providing flexibility to match your pricing structure. `READ` access to the `ADMIN` module is required to access this endpoint # Update Rate Scheme Source: https://docs.sonderplan.com/api-reference/rate-scheme/update-rate-scheme /api-reference/openapi-mintlify.yaml put /v2/rate-scheme `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Resource Source: https://docs.sonderplan.com/api-reference/resource/create-resource /api-reference/openapi-mintlify.yaml post /v2/resource `WRITE` access to the `ADMIN` module is required to access this endpoint The `resourceCreated` webhook will be fired when this endpoint has run successfullyIf you are using Sonderplan on a **Flexible Billing** plan, creating resources will result in **additional charges** (calculated pro rata) being automatically charged to your credit card. # Delete Resource Source: https://docs.sonderplan.com/api-reference/resource/delete-resource /api-reference/openapi-mintlify.yaml delete /v2/resource `WRITE` access to the `ADMIN` module is required to access this endpointIf you're using Sonderplan with a **Flexible Billing** plan, deleting resources will generate unused **time credits** for the resource. These credits will be automatically applied to your account and used toward future invoices. # Get Resources Source: https://docs.sonderplan.com/api-reference/resource/get-resources /api-reference/openapi-mintlify.yaml get /v2/resource In Sonderplan, resources refer to any item or entity that can be booked, such as rooms, people, equipment, or actions like recreation and sick leave. For people resources, it’s recommended to link them to a corresponding contact record using the type_person_id attribute. Resources can be organized into hierarchical groups using the parent_id attribute, which enables the visual nesting of similar resources for better organization. Additionally, resources must be assigned to at least one schedule to appear in the resource selection menu in Sonderplan. `READ` access to the `ADMIN` module is required to access this endpoint # Update Resource Source: https://docs.sonderplan.com/api-reference/resource/update-resource /api-reference/openapi-mintlify.yaml put /v2/resource `WRITE` access to the `ADMIN` module is required to access this endpoint The `resourceEdited` webhook will be fired when this endpoint has run successfully # Create Status Source: https://docs.sonderplan.com/api-reference/status/create-status /api-reference/openapi-mintlify.yaml post /v2/status `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Status Source: https://docs.sonderplan.com/api-reference/status/delete-status /api-reference/openapi-mintlify.yaml delete /v2/status `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Status Source: https://docs.sonderplan.com/api-reference/status/get-status /api-reference/openapi-mintlify.yaml get /v2/status Statuses can be thought of as labels that indicate the current state or progress of a booking, helping users track and manage bookings by categorizing them based on their workflow stage. Examples include "Confirmed," "Tentative," "Cancelled," or custom statuses designed to suit your organization’s needs. Booking statuses are essential for organizing schedules, as they visually distinguish bookings and can trigger specific actions like sending notifications or updating workflows. `READ` access to the `ADMIN` module is required to access this endpoint # Update Status Source: https://docs.sonderplan.com/api-reference/status/update-status /api-reference/openapi-mintlify.yaml put /v2/status `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Tax Source: https://docs.sonderplan.com/api-reference/tax/create-tax /api-reference/openapi-mintlify.yaml post /v2/tax `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Tax Source: https://docs.sonderplan.com/api-reference/tax/delete-tax /api-reference/openapi-mintlify.yaml delete /v2/tax `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Taxes Source: https://docs.sonderplan.com/api-reference/tax/get-taxes /api-reference/openapi-mintlify.yaml get /v2/tax In Sonderplan, taxes represent the percentage-based fees applied to line items within quotes, or invoices to comply with financial regulations. Taxes can be configured to reflect applicable rates, such as VAT, GST, or sales tax, depending on your location or business requirements. Sonderplan allows you to create and manage multiple tax rates, ensuring accurate calculations for different scenarios. Taxes are automatically applied to line items as specified, and they appear as a separate entry on invoices and quotes for transparency. `READ` access to the `ADMIN` module is required to access this endpoint # Update Tax Source: https://docs.sonderplan.com/api-reference/tax/update-tax /api-reference/openapi-mintlify.yaml put /v2/tax `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Time Activity Source: https://docs.sonderplan.com/api-reference/time-activity/create-time-activity /api-reference/openapi-mintlify.yaml post /v2/time-activity `WRITE` access to the `ADMIN` module is required to access this endpoint # Delete Time Activity Source: https://docs.sonderplan.com/api-reference/time-activity/delete-time-activity /api-reference/openapi-mintlify.yaml delete /v2/time-activity `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Time Activities Source: https://docs.sonderplan.com/api-reference/time-activity/get-time-activities /api-reference/openapi-mintlify.yaml get /v2/time-activity Time activities are predefined task categories that users can reference when logging time entries in the time-tracking system. By standardizing task types, predefined activities enhance reporting accuracy, providing insights into the specific work required to complete a project. `READ` access to the `ADMIN` module is required to access this endpoint # Update Time Activity Source: https://docs.sonderplan.com/api-reference/time-activity/update-time-activity /api-reference/openapi-mintlify.yaml put /v2/time-activity `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Time Entry Source: https://docs.sonderplan.com/api-reference/time-entry/create-time-entry /api-reference/openapi-mintlify.yaml post /v2/time-entry `WRITE` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Delete Time Entry Source: https://docs.sonderplan.com/api-reference/time-entry/delete-time-entry /api-reference/openapi-mintlify.yaml delete /v2/time-entry `WRITE` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Get Time Entries Source: https://docs.sonderplan.com/api-reference/time-entry/get-time-entries /api-reference/openapi-mintlify.yaml get /v2/time-entry Time activities are predefined task categories that users can reference when logging time entries in the time-tracking system. By standardising task types, predefined activities enhance reporting accuracy, providing insights into the specific work required to complete a project. `READ` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Stop Time Entry Source: https://docs.sonderplan.com/api-reference/time-entry/stop-time-entry /api-reference/openapi-mintlify.yaml patch /v2/time-entry/stop `WRITE` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Update Time Entry Source: https://docs.sonderplan.com/api-reference/time-entry/update-time-entry /api-reference/openapi-mintlify.yaml put /v2/time-entry `WRITE` access to the `ADMIN` module is required to access this endpointCurrently, only users with Administrative level have access to view, create and modify time entries for other users time entries.

All users are able to create, edit and delete their own time entries, however this uses a separate API not currently available for public access.

Please contact our Support team if you are interested in accessing this private API.
# Create User Source: https://docs.sonderplan.com/api-reference/user/create-user /api-reference/openapi-mintlify.yaml post /v2/user `WRITE` access to the `ADMIN` module is required to access this endpointIf you are using Sonderplan on a **Flexible Billing** plan, creating users will result in **additional charges** (calculated pro rata) being automatically charged to your credit card. # Delete User Source: https://docs.sonderplan.com/api-reference/user/delete-user /api-reference/openapi-mintlify.yaml delete /v2/user `WRITE` access to the `ADMIN` module is required to access this endpointIf you're using Sonderplan with a **Flexible Billing** plan, deleting users will generate unused time credits for the user. These credits will be automatically applied to your account and used toward future invoices. # Get Users Source: https://docs.sonderplan.com/api-reference/user/get-users /api-reference/openapi-mintlify.yaml get /v2/user A user in Sonderplan is an individual with access to the platform, typically associated with an account used to manage bookings, resources, projects, create quotes and invoices, and perform administrative tasks. Each user’s permissions are determined by their group membership, which assigns roles such as administrator, staff member, or limited-access user. These roles define what actions the user can perform and the data they can view or edit within the system. Every user is aliased to a contact record and can have personalized settings, including notification preferences and default configurations. `READ` access to the `ADMIN` module is required to access this endpoint # Update User Source: https://docs.sonderplan.com/api-reference/user/update-user /api-reference/openapi-mintlify.yaml put /v2/user `WRITE` access to the `ADMIN` module is required to access this endpoint # Create Workspace Source: https://docs.sonderplan.com/api-reference/workspace/create-workspace /api-reference/openapi-mintlify.yaml post /v2/workspace `WRITE` access to the `ADMIN` module is required to access this endpoint The `scheduleCreated` webhook will be fired when this endpoint has run successfully # Delete Workspace Source: https://docs.sonderplan.com/api-reference/workspace/delete-workspace /api-reference/openapi-mintlify.yaml delete /v2/workspace `WRITE` access to the `ADMIN` module is required to access this endpoint # Get Workspaces Source: https://docs.sonderplan.com/api-reference/workspace/get-workspaces /api-reference/openapi-mintlify.yaml get /v2/workspace A workspace (formerly known as a Schedule) is a collection of resources displayed in a timeline or calendar view on the Schedule, designed to help you manage and visualize resource usage. Workspaces make it easy to group and organize resources, such as rooms, equipment, or personnel, based on specific criteria like departments, resource types, or office locations. Additionally, workspaces include access control features, allowing you to restrict viewing and booking permissions to specific users or groups for enhanced security and organization. `READ` access to the `ADMIN` module is required to access this endpoint # Update Workspace Source: https://docs.sonderplan.com/api-reference/workspace/update-workspace /api-reference/openapi-mintlify.yaml put /v2/workspace `WRITE` access to the `ADMIN` module is required to access this endpoint The `scheduleEdited` webhook will be fired when this endpoint has run successfully