# User login types
Meeting SDKs offer support for various user login types. Users can either use the SDK as a logged-in user or non-logged in user.
- A **logged in user** utilizes the SDK by logging in via single sign-on (SSO).
- A **non-logged in user** can either use SDK anonymously - without logging in - or can authenticate via either a Zoom Access Key (ZAK) or an On Behalf Of (OBF) token obtained through the [Meeting API](/docs/api/users/#tag/users/get/users/{userId}/token).
_**Note: For apps that need to be a participant and show on the participant list, use a ZAK token or OBF token. For apps that only process media, use RTMS.**_
> **Requirements for external meeting access**
>
> To join meetings outside of your developer account, your app must:
>
> - Be [reviewed by Zoom](/docs/build-flow/submitting-apps-for-review/).
> - Authenticate with either a ZAK or On Behalf Of (OBF) token to attribute to a user in a meeting.
>
> You can:
>
> - [Publish the approved app on the Zoom App Marketplace](/docs/distribute/).
> - Set your app to [unlisted](/docs/build-flow/app-listing/eu-and-discoverability/#app-discoverability).
> - Contact the [Integrated Software Vendor (ISV) sales team](https://explore.zoom.us/en/isv/#isv) for other options.
## Non-logged in users
Non-logged in users have the option to access certain SDK methods, such as **join meeting**, as anonymous users. This doesn't require logging in. To have an anonymous user host or start a meeting on behalf of someone else, first authenticate the non-logged in user with the host's ZAK token or OBF token.
_**Billing notes: Anonymous users' SDK feature usage is billed to the Client ID and Client Secret owner (app developer). When a user hosts a meeting on behalf of another user using that other user's ZAK or OBF token, usage is billed to the meeting host, not the app developer.**_
## Logged in users
For logged in users, the authentication process involves signing in via SSO. Once authenticated, users gain access to the full range of built-in SDK functions and can directly host a meeting.
_**Note: The Meeting SDK doesn't support logging in directly with a username and password.**_
## Compare login types
| Account Type | Non-logged in
(Anonymous) | Non-logged in
(ZAK) | Non-logged in
(OBF) | Logged in
(SSO) |
| -------------------------------------- | --------------------------------- | --------------------------- | --------------------------- | ----------------------- |
| Host a scheduled meeting | No | Yes | No | Yes |
| Join a meeting | Yes | Yes | Yes | Yes |
| Start an instant meeting | No | Yes† | No | Yes† |
| Schedule & manage meetings‡ | through the Meeting API | through the Meeting API | n/a | through the Meeting API |
† Starting an instant meeting requires entering the user's Personal Meeting ID (PMI), which can be obtained through the Meeting API.
‡ Scheduling and managing meetings are handled through the Meeting API, not directly in the Meeting SDK.