> For the complete documentation index, see [llms.txt](https://docs.rairprotocol.org/rairprotocol/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rairprotocol.org/rairprotocol/codebase.md).

# CODEBASE

- [RAIRsolidity](https://docs.rairprotocol.org/rairprotocol/codebase/rairsolidity.md): RAIR smart contract logic
- [Soneium (Minato)](https://docs.rairprotocol.org/rairprotocol/codebase/rairsolidity/soneium-minato.md): Official RAIRprotocol deployment contracts on Soneium Testnet
- [Core DAO](https://docs.rairprotocol.org/rairprotocol/codebase/rairsolidity/core-dao.md): List of Core DAO deployed contract addresses
- [All Contract Addresses](https://docs.rairprotocol.org/rairprotocol/codebase/rairsolidity/all-contract-addresses.md): Deployed Solidity contracts.
- [Transfer functions](https://docs.rairprotocol.org/rairprotocol/codebase/rairsolidity/transfer-functions.md): List of smart contract functions that invoke transfer conditions
- [RAIRdapp](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp.md)
- [RAIRfrontend](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairfrontend.md): The REACT + Typescript marketplace frontend of the RAIR system.
- [Proxy Settings for Default Frontend](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairfrontend/proxy-settings-for-default-frontend.md): How to configure system to load a blank homepage
- [Frontend Variables Library](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairfrontend/frontend-variables-library.md): List of variables that can be modified on the RAIRfrontend
- [RAIRnode](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairnode.md): Backend of the RAIR system
- [Permissions and Access Controls](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairnode/permissions-and-access-controls.md)
- [Backend Variables Library](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairnode/backend-variables-library.md): List of variables for configuring the RAIRnode
- [RAIRsync](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairsync.md): Alchemy powered syncing system for RAIR
- [Integrating New EVMs](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairsync/integrating-new-evms.md): How to add support for new EVMs
- [RAIRstream](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairstream.md): RAIR steaming DRM system
- [RAIRinfra](https://docs.rairprotocol.org/rairprotocol/codebase/rairdapp/rairinfra.md): All of the Kubernetes manifests and other cloud configuration settings.
- [RAIR API](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api.md): Connecting It All
- [Endpoints](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints.md): RAIR API currently provides the following 16 sub resources:
- [Auth](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/auth.md): /api/auth provides endpoints for authentication of web3 wallets, login/logout functionality, and media accessibility.
- [Get challenge](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/auth/get-challenge.md): Intent "login" to check if want to make signature request to login to system or unlock a video.
- [Login](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/auth/login.md)
- [Logout](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/auth/logout.md)
- [Me](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/auth/me.md)
- [Unlock](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/auth/unlock.md)
- [Stream](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/auth/stream.md)
- [Out](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/auth/stream/out.md)
- [Analytics](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/analytics.md): /api/analytics provides endpoints for gathering and outputting analytics data for specified media.
- [Csv](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/analytics/csv.md): This endpoint lets you export user data from the platform. To use it you need to provide a valid media id.
- [Contracts](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/contracts.md): /api/contracts provides endpoints for gathering, outputting, and importing Smart Contract data to and from the database.
- [FactoryList](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/contracts/factorylist.md)
- [Full](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/contracts/full.md)
- [Import](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/contracts/import.md)
- [My](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/contracts/my.md)
- [Network](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/contracts/network.md)
- [Products](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/contracts/network/products.md)
- [Offers](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/contracts/network/products/offers.md)
- [Credits](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/credits.md): /api/credits provides endpoints for tracking erc20 fungible token balances, off chain, in the database. Users deposit tokens on chain, and the database tracks spending until the balance is withdrawn.
- [Withdraw](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/credits/withdraw.md): Warning:
- [Favorites](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/favorites.md): /api/favorites provides endpoints for gathering, adding, and removing tokens from a users favorites list.
- [Files](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/files.md): /api/files provides endpoints for locating, displaying, and modifying information associated with specified media files.
- [ById](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/files/byid.md)
- [ByCategory](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/files/bycategory.md)
- [Categories](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/files/categories.md)
- [ForToken](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/files/fortoken.md)
- [Unlocks](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/files/unlocks.md)
- [List](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/files/list.md)
- [Remove](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/files/remove.md)
- [Update](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/files/update.md)
- [Nft](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft.md): /api/nft provides endpoints for locating, and uploading metadata for user NFTs.
- [Network](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/network.md)
- [Attributes](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/network/attributes.md)
- [Files](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/network/files.md)
- [Locks](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/network/locks.md)
- [Offers](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/network/offers.md)
- [Token](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/network/token.md)
- [Pinning](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/network/token/pinning.md)
- [PinningMultiple](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/pinningmultiple.md)
- [Csv](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/csv.md)
- [Sample](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/nft/csv/sample.md)
- [Offers](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/offers.md): /api/offers provides endpoints for querying available offers. An offer is subset of tokens within a product associated with a specified price.
- [/](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/offers/undefined.md)
- [Products](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/products.md): /api/products provides endpoints for locating and updating product information. A product represents an individual collection of tokens within a contract.
- [/](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/products/undefined.md)
- [User](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/products/user.md)
- [Resales](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/resales.md): /api/resales
- [Create](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/resales/create.md)
- [Delete](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/resales/delete.md)
- [Open](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/resales/open.md)
- [Purchase](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/resales/purchase.md)
- [Update](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/resales/update.md)
- [Search](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/search.md): /api/search
- [All](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/search/all.md)
- [Settings](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/settings.md): /api/settings
- [Featured](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/settings/featured.md)
- [Theme](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/settings/theme.md)
- [AppLogo](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/settings/applogo.md)
- [Tokens](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/tokens.md): /api/tokens
- [/](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/tokens/undefined.md)
- [TokenNumbers](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/tokens/tokennumbers.md)
- [Transaction](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/transaction.md): /api/transaction
- [Upload](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/upload.md): /api/upload
- [File](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/upload/file.md)
- [Validate](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/upload/validate.md)
- [Users](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/users.md): /api/users
- [/](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/users/undefined.md)
- [Export](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/users/export.md)
- [List](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/users/list.md)
- [Yoti verify](https://docs.rairprotocol.org/rairprotocol/codebase/rair-api/endpoints/users/yoti-verify.md)
- [A Note on Documentation](https://docs.rairprotocol.org/rairprotocol/codebase/a-note-on-documentation.md): Space is cheap, Document Your Work.
