Globus is fully scriptable — everything available in the web interface can also be driven from the command line, Python, or any language that speaks REST.
Access Globus features via its web browser interface, command-line interface (CLI), Python SDK, or web-standard REST APIs for non-Python applications. If you use the CLI, SDK, or REST APIs, you are encouraged to join the developer mailing list to engage directly with the Globus engineering team and other developers.
Command Line Interface (CLI)
You can use Globus’s command line interface (CLI) to script, or automate, your use of Globus services. For example, you might write a script that automatically uploads the output data produced by an application when the application completes.
Follow Globus’s CLI installation instructions to install the CLI on your system. Once installed, follow Globus’s CLI QuickStart guide to quickly become familiar with the CLI and how to use it in your work.
Software Development Kit (SDK)
Use the Globus Software Development Kit (SDK) for Python to write applications that use Globus services. Follow Globus’s SDK installation instructions to install the SDK, then follow the SDK Tutorial to become familiar with it. The full SDK documentation includes complete reference information and examples.
REST API
If you write applications in a language other than Python, or if you require advanced features that aren’t provided in the SDK, Globus also provides web-standard REST APIs with complete access to all Globus services. Access is controlled by OAuth 2.0 access tokens obtained by authenticating with Globus Auth.
Summary of transfer methods
| Usage mode | Transfer method | Things to know |
|---|---|---|
| Web browser interface | Globus Web application | Easy-to-use web interface; uses ACCESS web single sign-on; desktop download available |
| Command line interface | Globus CLI | Managed, reliable, and auto-tuned transfer; supports scripting; uses ACCESS web single sign-on; requires command line/scripting skill; requires a Python installation |
| Application programming interface | Globus SDK for Python | Designed for application developers; simplifies code; use in Jupyter notebooks; requires Python programming skill; some advanced features are not exposed |
| Application programming interface | Globus REST API | Usable with most development environments; full access to all Globus service features; requires programming skill; requires familiarity with REST and OAuth 2.0 |