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

# Architecture Patterns

We recommend creating a visual representation for your application before
writing any code. The architecture patterns shown below are generic and do not
represent an exhaustive list of possibilities.

<Tip>
  Would you like assistance with application architecture?
  Contact your account team to purchase Box Consulting services.
</Tip>

## Administrative tasks

<Frame center shadow border>
  <img src="https://mintcdn.com/box/QTXp9lJTDnzaTTuG/platform/appendix/images/admin_tasks.png?fit=max&auto=format&n=QTXp9lJTDnzaTTuG&q=85&s=ee6c30cdc9ede75bfadee18c518929fc" alt="Admin Tasks Diagram" width="1950" height="875" data-path="platform/appendix/images/admin_tasks.png" />
</Frame>

Components:

* A server or local machine running a PowerShell script
* An identity provider with a user provisioning/deprovisioning service
* A [Service Account][sa] owned folder containing a personal folder for each user
* A PowerShell script based on a time that monitors the [event stream][events] and creates/collaborates each user on their personal folder

## Vault Portal

<Frame center shadow border>
  <img src="https://mintcdn.com/box/QTXp9lJTDnzaTTuG/platform/appendix/images/vault_portal.png?fit=max&auto=format&n=QTXp9lJTDnzaTTuG&q=85&s=c734dc1f4e95b90185a5e1f74387eaee" alt="Vault Portal Diagram" width="1950" height="1142" data-path="platform/appendix/images/vault_portal.png" />
</Frame>

Components:

* A custom portal allowing users to collaborate in a non-Box branded environment
* A load balancer distributing users to a web server with the deployed portal
* Users can login using credentials maintained in an identity provider, which are then mapped to [App User][au] information from Box within a data server.
* Other site data is stored on the data server

[usermodel]: /platform/appendix/user-models

[auth]: /guides/authentication

[platform-app]: /guides/applications/platform-apps/index

[events]: /reference/resources/event

[userevents]: /guides/events/user-events/for-user

[sa]: /platform/user-types/#service-account

[fr]: https://support.box.com/hc/en-us/articles/360045304813-Using-File-Request-to-get-Content-from-Anyone

[au]: /platform/user-types/#app-user

[metadata]: /reference/post-files-id-metadata-global-boxSkillsCards
