# Usertour documention ## Docs - [List attribute definitions](https://docs.usertour.io/api-reference/attribute-definitions/list.md): Retrieves a paginated list of attribute definitions in your account. Each definition includes its data type, scope, and metadata. - [The attribute definition object](https://docs.usertour.io/api-reference/attribute-definitions/model.md) - [Attributes](https://docs.usertour.io/api-reference/attributes.md): Objects in the API, such as users, companies, and events, can store custom attributes in the ```attributes``` object. This allows you to extend the default data model with your own fields. - [Upsert a company](https://docs.usertour.io/api-reference/companies/create.md): Create a new company or update an existing one. This endpoint uses an upsert operation, creating a new company if the ID doesn't exist, or updating the existing company if it does. - [Delete a company](https://docs.usertour.io/api-reference/companies/delete.md): Permanently remove a company from the system. This operation cannot be undone, and all associated memberships will be deleted. - [Get a company](https://docs.usertour.io/api-reference/companies/get.md): Retrieve detailed information about a specific company. The endpoint returns a 404 Not Found response if the company does not exist. - [List companies](https://docs.usertour.io/api-reference/companies/list.md): Retrieve a paginated list of companies in your account. The response includes company details and pagination information. - [The company object](https://docs.usertour.io/api-reference/companies/model.md): Companies represent organizational units in your system. They can be used to group users, manage permissions, and orchestrate user flows based on company-specific conditions. - [Upsert a membership](https://docs.usertour.io/api-reference/company-memberships/create.md): Create or update a company membership. Note that memberships are managed through user operations rather than direct API calls. - [Remove a membership](https://docs.usertour.io/api-reference/company-memberships/delete.md): Removes a single user from a single company. Leaves the user and the company themselves intact. - [List memberships](https://docs.usertour.io/api-reference/company-memberships/list.md): Retrieve company memberships by expanding the memberships field of a user or company object. Direct listing of memberships is not supported. - [The company membership object](https://docs.usertour.io/api-reference/company-memberships/model.md): Company memberships represent the relationship between users and companies. They allow you to store custom attributes that describe how a user interacts with a specific company. - [Delete a content session](https://docs.usertour.io/api-reference/content-sessions/delete.md): Permanently deletes a content session and all its associated data (progress, survey answers, etc.). This operation cannot be undone. The API is idempotent - attempting to delete a non-existent session will return a success response. - [End a content session](https://docs.usertour.io/api-reference/content-sessions/end.md): Marks a content session as completed and records its completion time. This operation is idempotent - calling it multiple times on the same session will not cause any issues. - [Get a content session](https://docs.usertour.io/api-reference/content-sessions/get.md): Retrieves a specific content session by its ID, including all its attributes and relationships. - [List content sessions](https://docs.usertour.io/api-reference/content-sessions/list.md): Retrieves a paginated list of content sessions with optional filtering and expansion options. - [The content session object](https://docs.usertour.io/api-reference/content-sessions/model.md) - [The answer object](https://docs.usertour.io/api-reference/content-sessions/the-answer-model.md) - [Get a content version](https://docs.usertour.io/api-reference/content-versions/get.md): Retrieves a specific version of a content object by its version ID. - [List content versions](https://docs.usertour.io/api-reference/content-versions/list.md): Retrieves a paginated list of versions for a specific content object. - [The content version object](https://docs.usertour.io/api-reference/content-versions/model.md) - [The question object](https://docs.usertour.io/api-reference/content-versions/the-question-model.md) - [Get a content](https://docs.usertour.io/api-reference/content/get.md): Retrieves a single content object by its ID. - [List content](https://docs.usertour.io/api-reference/content/list.md): Retrieves a paginated list of all content objects in your account. - [The content object](https://docs.usertour.io/api-reference/content/model.md) - [Errors](https://docs.usertour.io/api-reference/errors.md): Troubleshoot problems with this comprehensive breakdown of all error codes. - [List event definitions](https://docs.usertour.io/api-reference/event-definitions/list.md): Retrieves a paginated list of event definitions in your account. Each definition includes its name, code, and metadata. - [The event definition object](https://docs.usertour.io/api-reference/event-definitions/model.md) - [Expanding objects](https://docs.usertour.io/api-reference/expanding-objects.md): Learn how to expand related objects in API responses using the ```expand``` query parameter. - [Introduction](https://docs.usertour.io/api-reference/introduction.md): Understand general concepts, response codes, and authentication strategies. - [Ordering](https://docs.usertour.io/api-reference/ordering.md): Some top-level API resources that support listing can be ordered by one or more fields using the orderBy query parameter. Each resource will list which fields it can be ordered by. - [Pagination](https://docs.usertour.io/api-reference/pagination.md): All top-level API resources that support listing use the same format for pagination and the same response object. - [Upsert a user](https://docs.usertour.io/api-reference/users/create.md) - [Delete a user](https://docs.usertour.io/api-reference/users/delete.md) - [Get a user](https://docs.usertour.io/api-reference/users/get.md): Retrieves a specific user by their ID, including all their attributes and relationships. - [List users](https://docs.usertour.io/api-reference/users/list.md): Retrieve a paginated list of users. You can filter the results using various query parameters. - [The user object](https://docs.usertour.io/api-reference/users/model.md) - [Flows](https://docs.usertour.io/building-experiences/creating-your-first-flow.md): Learn how to create and customize interactive flows with Usertour - [Understanding In-App Flows](https://docs.usertour.io/building-experiences/understanding-in-app-flows.md): Learn how to create effective in-app flows to guide users through your product with interactive tours, tooltips, and modals. - [Content Security Policy](https://docs.usertour.io/developers/csp.md): Content Security Policy about Usertour. - [disableEvalJs()](https://docs.usertour.io/developers/usertourjs-reference/advanced/disable-eval-js.md): Disable Evaluate JavaScript actions for security - [registerCustomInput()](https://docs.usertour.io/developers/usertourjs-reference/advanced/register-custom-input.md): Teach Usertour to recognize custom HTML elements as input fields - [setBaseZIndex()](https://docs.usertour.io/developers/usertourjs-reference/advanced/set-base-zIndex.md): Set the base z-index for Usertour floating elements - [setCustomNavigate()](https://docs.usertour.io/developers/usertourjs-reference/advanced/set-custom-navigate.md): Configure custom navigation behavior for single-page applications - [setCustomScrollIntoView()](https://docs.usertour.io/developers/usertourjs-reference/advanced/set-custom-scroll-into-view.md): Customize how Usertour scrolls elements into view - [setLinkUrlDecorator()](https://docs.usertour.io/developers/usertourjs-reference/advanced/set-link-url-decorator.md): Automatically modify external link URLs in Usertour flows - [setUrlFilter()](https://docs.usertour.io/developers/usertourjs-reference/advanced/set-url-filter.md): Filter sensitive data from URLs before sending to Usertour - [group()](https://docs.usertour.io/developers/usertourjs-reference/companies/company.md): Associate the current user with a company and update company attributes - [updateGroup()](https://docs.usertour.io/developers/usertourjs-reference/companies/update-company.md): Update attributes for the currently associated company - [endAll()](https://docs.usertour.io/developers/usertourjs-reference/content/end-all.md): Close all active Usertour content displays for the current user - [isStarted()](https://docs.usertour.io/developers/usertourjs-reference/content/is-started.md): Check if a specific Usertour content has been started - [start()](https://docs.usertour.io/developers/usertourjs-reference/content/start.md): Programmatically trigger and display Usertour content for authenticated users - [Events](https://docs.usertour.io/developers/usertourjs-reference/events/overview.md): Track custom product events for users and companies in Usertour - [track()](https://docs.usertour.io/developers/usertourjs-reference/events/track.md): Record custom product events for the current user and optionally attach event attributes - [Installation](https://docs.usertour.io/developers/usertourjs-reference/installation.md) - [Introduction](https://docs.usertour.io/developers/usertourjs-reference/overview.md): Introduction to Usertour.js SDK and its core features - [closeResourceCenter()](https://docs.usertour.io/developers/usertourjs-reference/resource-center/close-resource-center.md): Programmatically collapse the resource center back to its launcher - [hideResourceCenterLauncher()](https://docs.usertour.io/developers/usertourjs-reference/resource-center/hide-resource-center-launcher.md): Hide the resource center launcher button - [isResourceCenterOpen()](https://docs.usertour.io/developers/usertourjs-reference/resource-center/is-resource-center-open.md): Check whether the resource center panel is currently expanded - [openResourceCenter()](https://docs.usertour.io/developers/usertourjs-reference/resource-center/open-resource-center.md): Programmatically expand the resource center panel - [showResourceCenterLauncher()](https://docs.usertour.io/developers/usertourjs-reference/resource-center/show-resource-center-launcher.md): Show the resource center launcher button - [toggleResourceCenter()](https://docs.usertour.io/developers/usertourjs-reference/resource-center/toggle-resource-center.md): Toggle the resource center between open and collapsed - [init()](https://docs.usertour.io/developers/usertourjs-reference/setup/init.md): Initialize the Usertour SDK with your environment token - [identify()](https://docs.usertour.io/developers/usertourjs-reference/users/identify.md): Identify authenticated users with their unique ID and attributes - [identifyAnonymous()](https://docs.usertour.io/developers/usertourjs-reference/users/identify-anonymous.md): Identify anonymous users with automatically generated IDs - [isIdentified()](https://docs.usertour.io/developers/usertourjs-reference/users/is-identified.md): Check if the current user has been identified - [reset()](https://docs.usertour.io/developers/usertourjs-reference/users/reset.md): Clear the current user's identification and hide active flows - [updateUser()](https://docs.usertour.io/developers/usertourjs-reference/users/update-user.md): Update attributes for the currently identified user - [FAQ](https://docs.usertour.io/faq.md): Find answers to frequently asked questions about Usertour's features, requirements, and integration capabilities. - [Banners](https://docs.usertour.io/how-to-guides/banners.md): Learn how to create and customize banners to communicate with your users right inside your app. - [Billing & Invoices](https://docs.usertour.io/how-to-guides/billing.md): Learn how to manage your subscription and download invoices from the Billing page via Stripe. - [Checklists](https://docs.usertour.io/how-to-guides/checklists.md): Learn how to create and manage interactive checklists to guide users through your product - [Companies](https://docs.usertour.io/how-to-guides/companies.md): Learn how to manage and target users across different organizations in your application - [Customizing Themes](https://docs.usertour.io/how-to-guides/customizing-themes.md): With themes, you can design flows and other UserTour content to seamlessly integrate with your app. We provide a powerful yet user-friendly visual editor that requires no CSS or programming knowledge to modify every element of your theme. - [Delete and duplicate content](https://docs.usertour.io/how-to-guides/delete-and-duplicate-content.md): Learn how to manage your Usertour content by deleting or duplicating flows, launchers, and checklists. - [Deleting user data](https://docs.usertour.io/how-to-guides/deleting-user-data.md): Learn how to delete user data in Usertour, including complete user deletion, resetting individual flow sessions, and dismissing flows for all users. - [Embed any content](https://docs.usertour.io/how-to-guides/embed.md): Learn how to embed videos, forms, images, and other web content into your flows. - [Environments](https://docs.usertour.io/how-to-guides/environments.md): Learn how to manage different environments for development, staging, and production - [Event Trackers](https://docs.usertour.io/how-to-guides/event-trackers.md): Learn how to use no-code event tracking in Usertour to capture meaningful product behavior more quickly. - [Flow Analytics](https://docs.usertour.io/how-to-guides/flow-analytics.md): Learn how to track and analyze user engagement with your flows - [Go to page when flow starts](https://docs.usertour.io/how-to-guides/go-to-page-when-starts.md): Learn how to automatically navigate users to the right page when they start a flow or checklist, with three different approaches to handle page navigation - [Hidden Steps](https://docs.usertour.io/how-to-guides/hidden-steps.md): Learn how to effectively use hidden steps in Usertour to create more complex and dynamic user flows while maintaining a clean and organized flow structure. - [How Start Rules Work](https://docs.usertour.io/how-to-guides/how-start-rules-work.md): Understand how auto-start rules and temporary hide rules work together so your onboarding appears at the right time. - [Launchers](https://docs.usertour.io/how-to-guides/launchers.md): Learn how to create and customize launchers to highlight features and provide quick access to help - [Mobile](https://docs.usertour.io/how-to-guides/mobile.md): Learn how to optimize Usertour for mobile web applications and handle device-specific content - [Resource Center](https://docs.usertour.io/how-to-guides/resource-center.md): Learn how to build an in-app help hub with tabs, content lists, sub-pages, and live chat - [Starting Content](https://docs.usertour.io/how-to-guides/starting-flows.md): Learn how to trigger flows or checklists automatically or manually in your application - [Surveys/NPS](https://docs.usertour.io/how-to-guides/surveys.md): Learn how to create and customize surveys to collect user feedback and measure satisfaction - [Team Management](https://docs.usertour.io/how-to-guides/team.md): Building onboarding is a collaborative effort, and usertour lets you add your team to the same account so you can all work together on building the content. - [URL pattern matching](https://docs.usertour.io/how-to-guides/urls.md): Learn how to use URL patterns to control when and where your content appears in your application - [Users and Segments](https://docs.usertour.io/how-to-guides/users-and-segments.md): Learn how to manage users and create targeted segments for personalized experiences - [Backups](https://docs.usertour.io/open-source/backups.md): Database and environment backup strategies for self-hosted UserTour instances - [Business + Enterprise](https://docs.usertour.io/open-source/business-enterprise.md): Business and Enterprise licensing for UserTour - [Deploy with Coolify](https://docs.usertour.io/open-source/coolify-deployment.md): Deploy Usertour using Coolify - a simple and fast way to get started - [Environment Variables](https://docs.usertour.io/open-source/env.md): Environment Variables. - [License Management](https://docs.usertour.io/open-source/license-management.md): Manage instance-level and project-level licenses for self-hosted Usertour deployments - [Local Development](https://docs.usertour.io/open-source/local-development.md): Set up and run Usertour in your local development environment - [Deploy with Docker](https://docs.usertour.io/open-source/self-hosting.md): Deploy Usertour on your own infrastructure using Docker - [System Admin](https://docs.usertour.io/open-source/system-admin.md): Manage self-hosted instance settings, licensing, users, and projects - [Troubleshooting](https://docs.usertour.io/open-source/troubleshooting.md) - [Usertour.js Installation](https://docs.usertour.io/open-source/usertourjs.md): Install and configure Usertour.js in your self-hosted environment - [Getting Started](https://docs.usertour.io/quickstart.md): Get started with Usertour - a powerful platform for building product tours, checklists, and launchers. Follow this guide to integrate Usertour into your application and create your first user experience. - [Session lifecycles](https://docs.usertour.io/use-cases/session-lifecycles.md): Understand when Usertour creates, updates, completes, and ends sessions for flows, checklists, launchers, banners, resource centers, and event trackers. - [Element is present](https://docs.usertour.io/use-cases/start-flow-when-element-appears.md): Use an Element is present start rule to wait until the real page is ready before showing a flow. - [Starting content](https://docs.usertour.io/use-cases/starting-content.md): How Usertour decides whether and when to show each content type — flows, checklists, banners, resource centers, launchers, and event trackers. ## OpenAPI Specs - [openapi](https://docs.usertour.io/api-reference/openapi.json)