Retry after an HTTP 500 error

Implements a custom retry policy that retries HTTP requests that have returned an HTTP 500 status code.

Documentation pages that include this code sample

To view the code sample used in context, see the following documentation:

Code sample

YAML

main:
  steps:
    - read_item:
        try:
          call: http.get
          args:
            url: https://host.com/api
          result: api_response
        retry:
          predicate: ${custom_predicate}
          max_retries: 5
          backoff:
            initial_delay: 2
            max_delay: 60
            multiplier: 2
    - last_step:
        return: "OK"

custom_predicate:
    params: [e]
    steps:
      - what_to_repeat:
          switch:
          - condition: ${e.code == 500}
            return: True
      - otherwise:
          return: False

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser.