Skip to main content

Official SDKs

The official Files.com SDKs let applications use the REST API through a supported programming language. They handle authentication, request formatting, retries, and pagination, and provide file-transfer helpers. Files.com uses several of these SDKs in its own products.

What the Official SDKs Provide

Use an SDK when your application needs to upload or download files, manage users and permissions, create Share Links, or work with other API resources. The SDK formats requests and responses so your application can work with objects and methods rather than constructing each HTTP request.

SDKs retry temporary failures, but your application must still handle errors after retries are exhausted. Transfer features such as chunking and parallelism vary by language; consult the matching developer reference before selecting an SDK for a large-transfer workflow.

Supported SDK Languages

Files.com maintains SDKs for seven languages, with source and version tags in the Files.com GitHub organization and releases through the language's package manager. The table identifies the official package and source repository for each SDK; package names are not always the same as repository names.

LanguageOfficial Package Channel and IdentifierGitHubDeveloper Docs
GoGo modules: github.com/Files-com/files-sdk-go/v3External LinkThis link leads to an external website and will open in a new tabfiles-sdk-goExternal LinkThis link leads to an external website and will open in a new tabGo SDKExternal LinkThis link leads to an external website and will open in a new tab
JavaMaven Central: com.files:files-sdkExternal LinkThis link leads to an external website and will open in a new tabfiles-sdk-javaExternal LinkThis link leads to an external website and will open in a new tabJava SDKExternal LinkThis link leads to an external website and will open in a new tab
JavaScript (Node.js), server-side onlynpm: files.comExternal LinkThis link leads to an external website and will open in a new tabfiles-sdk-javascriptExternal LinkThis link leads to an external website and will open in a new tabJavaScript SDKExternal LinkThis link leads to an external website and will open in a new tab
Microsoft .NET (runtime requirements)NuGet: FilesComExternal LinkThis link leads to an external website and will open in a new tabfiles-sdk-dotnetExternal LinkThis link leads to an external website and will open in a new tab.NET SDKExternal LinkThis link leads to an external website and will open in a new tab
PHPPackagist / Composer: files.com/files-php-sdkExternal LinkThis link leads to an external website and will open in a new tabfiles-sdk-phpExternal LinkThis link leads to an external website and will open in a new tabPHP SDKExternal LinkThis link leads to an external website and will open in a new tab
PythonPyPI / pip: files-comExternal LinkThis link leads to an external website and will open in a new tabfiles-sdk-pythonExternal LinkThis link leads to an external website and will open in a new tabPython SDKExternal LinkThis link leads to an external website and will open in a new tab
RubyRubyGems: files.comExternal LinkThis link leads to an external website and will open in a new tabfiles-sdk-rubyExternal LinkThis link leads to an external website and will open in a new tabRuby SDKExternal LinkThis link leads to an external website and will open in a new tab

Use the linked developer reference for installation commands, runtime requirements, configuration, and the full API reference. The current .NET package is FilesCom; the older NuGet package named Files.com is deprecated.

Releases are tagged by version, which makes it easy to review what changed before upgrading. Keep your SDK current through its official package channel.

The JavaScript SDK Is for Server-Side Use Only

The JavaScript SDK runs in Node.js. It is not for use in the browser.

Calling the Files.com REST API from browser-side JavaScript will produce CORS errorsExternal LinkThis link leads to an external website and will open in a new tab for your users. Your integration code using the JavaScript SDK must run on a server.

.NET SDK Version Requirements

The SDK package supports multiple .NET targets, including .NET Standard. Check the .NET SDK framework requirementsExternal LinkThis link leads to an external website and will open in a new tab for the version you install. A runtime must both support that package and negotiate one of Files.com's default secure ciphers.

Using Older .NET Versions

For .NET Framework applications, TLS support depends on the operating system, target framework, and application configuration. A package that loads successfully can still fail to connect if the application forces an obsolete TLS version.

Follow Microsoft's TLS guidance for .NET FrameworkExternal LinkThis link leads to an external website and will open in a new tab. Prefer operating-system defaults where supported and review explicit ServicePointManager.SecurityProtocol settings before changing Files.com's cipher policy. Upgrade the runtime or operating system when it cannot negotiate a supported secure connection.

SDK Authentication Methods

SDKs support two authentication methods: API key and session-based.

API key authentication is recommended for headless or unattended integrations. API keys can be site-wide or associated with a user. Access depends on the key's permission scope and Workspace, as well as the associated user's permissions when it is a user key. Choose the narrowest access that the integration requires.

Session-based authentication creates a session using a username and password. It's best for an interactive application where users sign in with their own Files.com credentials. Sessions follow the same timeout rules as web interface sessions. When a session expires, your code needs to create a new one. SDKs can't re-authenticate sessions automatically, because they won't store your password.

Choosing Between an SDK and Other Methods

If your environment requires working in a supported language, we always recommend using its SDK.

If you're building an AI application, the Files.com MCP Server provides structured tools to interact with your Files.com site, available with no extra coding required.

If your environment calls for a scripting language, Infrastructure as Code, an iPaaS platform, or a system that only supports file transfer protocols, consult the full decision guide covering all available integration methods.