Endpoint Commands
Endpoint IDs and Display Names
Most Globus Command Line Interface (CLI) commands require you to
specify one or more endpoints,
so it is important to understand how Globus endpoints are identified.
Each endpoint has a globally unique 32 character ID
as well as a user-friendly and non-unique "display name".
It is the ID that must be used in CLI commands.
As an example, the endpoint with display name "Globus Tutorial Endpoint 1"
has an ID of ddb59aef-6d04-11e5-ba46-22000b92c6ec
.
Searching for Endpoints
To acquire the necessary endpoint IDs, users can search
using the CLI's endpoint search
command.
By default, the search will be performed on all endpoints (its scope is "all").
When searching over all endpoints you must add a quoted search term argument to the command.
The CLI will search for the term(s) in various endpoint attributes,
such as display name, description and organization, but will not attempt to match the owner name.
In this example, we search for all endpoints whose fields contain the text "tacc cilogon".
Though this example only returns five results, such searches can return up to 100 results. We can limit the number of results by filtering them in two ways.
By using the --filter-owner-id
option we can limit the results
to those where the owner matches an ID we provide.
Here we search for endpoints owned by the TACC Globus ID.
Note that a search term argument is still required - we use "cilogon" to produce the same list as before.
Results can also be filtered by a scope using the --filter-scope
option.
Several scopes are available, such as endpoints that are owned by you (my-endpoints
)
and endpoints that have been shared with you (shared-with-me
).
Only one such filter can be specified.
When filtering in this way you do not have to provide a search term.
The globus endpoint search reference page contains more information about this command, including a full list of available scopes and options for returning results as JSON and processing that JSON with JMESPath.
Using an Endpoint
Note that merely identifying a Globus endpoint does not mean that you can access it. Operations on the endpoint are only possible once your use of the endpoint has been enabled. If you issue a command and access has not yet been enabled, the CLI will print instructions for you to follow to perform the enabling. This may involve issuing another CLI command that brings up a web page (similar to the login process) where you can enable access. See the Globus web site for an example of this process.
Working With Multiple Endpoint IDs
Once you know your endpoint ID, you can obviously copy it to your shell's clipboard and paste it in whenever you need to supply the ID to a Globus CLI command. However, this can be inconvenient when you are working with more than one endpoint ID. A handy trick is to save each endpoint ID to a different shell variable, which can then be used in later Globus CLI commands, like this: