Flows API
  • Globus Flows
  • Overview
  • Getting Started
    • How to Run a Flow
    • How to Monitor a Flow Run
    • How to Create a Flow
  • Authoring Flows
    • Introduction
    • Actions
    • Expressions
    • Choice States
    • Wait States
    • Fail States
    • Pass States
    • Protecting Secrets
    • Handling Exceptions
    • Performing Actions as Different Users
    • Run Context
    • Validating Flow Definitions
  • Authoring Input Schemas
  • Authentication and Authorization
  • Consents and Resuming Runs
  • Permissions
  • Limits
  • Hosted Action Providers
    • Hello World
    • Globus Search - Ingest Task
    • Globus Search - Delete Task
    • Send Notification Email
    • Wait For User Selection
    • Expression Evaluation
    • DataCite Mint
    • Transfer APs
    • Compute AP
  • Example Flows
    • Simple Transfer
    • Move (copy and delete) files
    • Transfer and Share Files
    • Two Stage Globus Transfer
    • Transfer After Approval
    • Looping Batched Move
    • Tar and Transfer with Globus Compute
Skip to main content
Globus Docs
  • APIs
    Auth Flows Groups Search Timers Transfer Globus Connect Server Compute Helper Pages
  • Applications
    Globus Connect Personal Globus Connect Server Premium Storage Connectors Compute Command Line Interface Python SDK JavaScript SDK
  • Guides
  • Support
    FAQs Mailing Lists Contact Us Check Support Tickets
  1. Home
  2. Globus Services
  3. Globus Flows
  4. Hosted Action Providers
  5. Hello World

Action Provider: Hello World

URL: https://actions.globus.org/hello_world [Introspect]

Scope: https://auth.globus.org/scopes/actions.globus.org/hello_world

Synchronous / Asynchronous: Either

The Hello World action provider is useful for testing and learning purposes.

The action provider will always return an output with the key/value pair "Hello": "World".

If echo_string is included in the parameters submitted to the action provider, an additional key, "hello", and the value of the echo_string parameter will be returned.

If sleep_time is included in the parameters submitted to the action provider, the action provider will immediately respond that the action is "ACTIVE" and subsequent status checks will show that the action is still "ACTIVE" until sleep_time seconds have elapsed since the action started running. After sleep_time seconds have elapsed, status checks will show that the action is "SUCCEEDED".

(If sleep_time is not included, the status of the action will immediately be "SUCCEEDED".)

If required_dependent_scope is included in the parameters submitted to the action provider, the action provider will require consent to that dependent scope, which is a useful way to test that an application can handle ConsentRequired errors.

Usage Example

The example below demonstrates how to use the action provider in a flow.

  • Flow definition
  • Flow input schema
  • Sample flow input body

Features of the flow:

  • The echo_string value is an expression (indicated by the .= suffix) which generates the value passed to the action provider using a name parameter. In this case, it demonstrates string concatenation syntax.

{
  "StartAt": "HelloWorld",
  "States": {
    "HelloWorld": {
      "Type": "Action",
      "ActionUrl": "https://actions.globus.org/hello_world/",
      "Parameters": {
        "echo_string.=": "'Greetings, ' + name + '!'",
        "sleep_time": 10
      },
      "End": true
    }
  }
}

Features of the input schema:

  • A constraint (minLength) ensures that the user provides a string that is not blank.

{
  "properties": {
    "name": {
      "title": "Name to greet",
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false
}
{
  "name": "Demo User"
}
  • Globus Flows
  • Overview
  • Getting Started
    • How to Run a Flow
    • How to Monitor a Flow Run
    • How to Create a Flow
  • Authoring Flows
    • Introduction
    • Actions
    • Expressions
    • Choice States
    • Wait States
    • Fail States
    • Pass States
    • Protecting Secrets
    • Handling Exceptions
    • Performing Actions as Different Users
    • Run Context
    • Validating Flow Definitions
  • Authoring Input Schemas
  • Authentication and Authorization
  • Consents and Resuming Runs
  • Permissions
  • Limits
  • Hosted Action Providers
    • Hello World
    • Globus Search - Ingest Task
    • Globus Search - Delete Task
    • Send Notification Email
    • Wait For User Selection
    • Expression Evaluation
    • DataCite Mint
    • Transfer APs
    • Compute AP
  • Example Flows
    • Simple Transfer
    • Move (copy and delete) files
    • Transfer and Share Files
    • Two Stage Globus Transfer
    • Transfer After Approval
    • Looping Batched Move
    • Tar and Transfer with Globus Compute
© 2010- The University of Chicago Legal Privacy Accessibility