AI agents: the content index is at /llms.txt. Every page is also available as Markdown — send the request header Accept: text/markdown, or append .md to the page URL.
Xperience Docs

Cookie consent

We use necessary cookies (opens in a new tab) to run our website and improve your experience while browsing. Additional cookies are only used with your consent. You may revoke your consent on the Cookies Policy (opens in a new tab) page or in your browser at any time.

Configure (opens in a new tab)
  • Documentation
    InstallationUsing the Xperience interfaceDeveloping websitesConfiguring XperienceManaging usersSecuring websitesDeploying websitesManaging website contentMultilingual websitesMacro expressionsExternal utilitiesIntegrating 3rd party systemsCustom developmentE-commerce featuresOn-line marketing featuresRelease notes - Xperience 13Xperience terminology glossary
  • Tutorial
    Using the Xperience interfaceDeveloper tutorialBusiness tutorialResource hub for marketers
  • API Examples
    ConfigurationContent managementDevelopmentE-commerceOn-line marketingSocial media
  1. Home
  2. Custom development
  3. Working with physical files using the API

Working with physical files using the API


Was this page helpful?

Send us feedback Go back to top
  • Community Questions & Answers (opens in a new tab)
  • Contact support (opens in a new tab)

CMS.IO is a namespace that serves as an interlayer between the business layer of Xperience and storages used for physical files. CMS.IO is used throughout the system instead of the default System.IO library provided by the .NET Framework in order to be compatible with various types of file storages.

CMS.IO is an abstract layer, which accesses file storages by means of a provider built on top of it. CMS.IO defines the classes and their methods and properties, which the provider overrides in order to manipulate files in a storage.

Depending on the storage type that you use for your files, the system utilizes one of the following providers:

  • File system storage – used by default for files stored in the Windows file system. The provider is only a wrapper for the standard System.IO library.
  • Azure storage – used when storing files in the Microsoft Azure Blob storage.
  • Amazon storage – used when storing files in the Amazon S3 storage service.

The following figure demonstrates how CMS.IO allows you to access different types of file storage by building providers:

  • Learn how to work with files in custom code
  • Learn how to write a custom storage provider

This documentation section assumes that you are familiar with the System.IO library and know how to use it to manipulate files and directories in the Windows file system. Learn how to use System.IO⁠ (opens in a new tab).