# Items to prepare

To perform an integration in an external application, the concepts explained in the [**Shared Resources**](/integration-guide/concepts-to-take-into-account/shared-resources.md), [**Users**](/integration-guide/concepts-to-take-into-account/users.md), [**Groups of users**](/integration-guide/concepts-to-take-into-account/groups-of-users.md), [**Authentication Tokens**](/integration-guide/concepts-to-take-into-account/authentication-tokens.md) and [**Data Policies**](/integration-guide/concepts-to-take-into-account/data-policies.md) sections must be taken into account. All of this management can be done manually, for integrations that do not require automating changes or access, or that do not require giving access to a user in real time.

The **automation** of all these tasks can be done using the **Biuwer public API**, which requires coding in your application, to implement the required calls (user management, authentication tokens and data policies, mainly).

It is necessary to take into account how your application is managed at a security level, and consider how your end users need to access the content (Shared Resources), and what data access needs they have, which will determine how many Users Basics must be managed and in what way.

Typically for a multi-tenant B2B application, you must have a dynamic table, normally managed in a database, with the **list of Biuwer Authentication Tokens that are associated with each user identifier in your application**, which can be user IDs, Company IDs or a combination of both. This **mapping table** can be called, for example, "integration\_security\_mapping".

Example of a **1 to 1 mapping table**, for 1 Basic User for every 1 end user in your application (assuming a "users" table with a "user\_id" field as identifier):

<table><thead><tr><th width="220">user_id</th><th>biuwer_auth_token</th></tr></thead><tbody><tr><td>65423600</td><td>4656e978-be1f-4b26-96d1-b6215bfc7e87</td></tr><tr><td>72471109</td><td>baedaa5a-9615-4fbd-9970-0a25bf5b0c88</td></tr><tr><td>91660724</td><td>961a45a2-a782-4f94-b42b-7506a58c6a5d</td></tr><tr><td>88091477</td><td>1dc78c2a-dca6-4e92-8db0-d5ae7ace2ad1</td></tr></tbody></table>

Example of **1 to N mapping table**, for 1 Basic User shared by multiple (N) end users in your application. This means that different end users in your application will be able to access the same content and data in Biuwer.

<table><thead><tr><th width="222">user_id</th><th>biuwer_auth_token</th></tr></thead><tbody><tr><td>65423600</td><td>baedaa5a-9615-4fbd-9970-0a25bf5b0c88</td></tr><tr><td>72471109</td><td>baedaa5a-9615-4fbd-9970-0a25bf5b0c88</td></tr><tr><td>91660724</td><td>961a45a2-a782-4f94-b42b-7506a58c6a5d</td></tr><tr><td>88091477</td><td>961a45a2-a782-4f94-b42b-7506a58c6a5d</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.biuwer.com/integration-guide/how-do-i-integrate-biuwer-into-my-application/items-to-prepare.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
