> ## Documentation Index
> Fetch the complete documentation index at: https://cal.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# FAQ

> Answers to the most common questions about the Platform API and atoms.

<Warning>
  This is now deprecated and under maintenance for existing users only - no new customers can sign up for the platform plan
</Warning>

### 1. What is an OAuth client?

* A platform OAuth client enables you communicate with our API and manage your users.
* It contains properties such as name, redirect uris and permissions required by your users.

### 2. What is a managed user?

* A managed user is just a representation of your user within our database containing basic information like e-mail.
* It can be used to manage the setup of integrations such as Google Calendar, your users bookings. availability, etc.
* You should store information about the managed users in your database and use the access token to make API calls on their behalf.

### 3. Are a cal.com user and a managed user related?

* No, a cal.com user and a managed user are not related in any way. We can consider them as two separate entities.
* A "managed user" is completely independent of user accounts on cal.com and you don't need to register users on the cal.com web application.

### 4. What is an access token?

* At the time of creating a managed user you'll be provided with an access token and a refresh token.
* Each managed user is linked with an access token which helps us in identifying which users scheduling we need to handle.
* The access token only lasts for 60 minutes after which you can query the refresh point with your refresh token which will give you a new access token.
* Inside of atoms we handle access token refreshing part ourselves, outside of that you may need to handle the refreshing part yourselves.
* Refresh tokens should never be exposed to the frontend, keep them secure and only use them on the backend.

### 5. What is an atom?

* An atom is a customizable UI component that handles scheduling on behalf of your user.
* Everything from the front-end to the API calls is being handled by the atom, all you need to do is import the atom and drop it in your code.

### 6. What are the minimum setup requirements for using atoms?

* You need to have a project that uses React version 18 and above.
* At the moment atoms are only supported in React, so there's no way to use them in vanilla js or any other popular framework.

### 7. Can recurring events be rescheduled?

* No, at the moment you are only allowed to cancel a recurring event.

### 8. Why toggle animation is not working in the AvailabilitySettings atom?

* For the AvailabilitySettings toggle animation to work set the reading direction on the `<html>` element:

```html theme={null}
<html dir="ltr"> ... </html>
```

### 9. What are the authentication methods for making calls to the v2 API?

Either of the two:

* Setting `Authorization: Bearer <token>` header where `<token>` is access token of the managed user.
* Setting `x-cal-client-id: <client-id>` and `x-cal-secret-key: <client-secret>` where `<client-id>` is OAuth client id and `<client-secret>` is OAuth client secret. Both can be copied from the dashboard.

### 10. When am I charged and not charged ?

* You are charged for scheduled booking only when the booking starts.
* If a booking is rescheduled you are still charged once.
* If a booking is cancelled then you are not charged for it.

### 11. What happens if there are more bookings than in my plan?

* You have to pay overage for each booking that exceeds the amount in your plan.

***

<CardGroup cols={1}>
  <Card href="/docs/platform/guides/managed-orgs" title="Previous: Managed Organizations" icon="arrow-left">
    Create managed orgs
  </Card>
</CardGroup>
