Resilient workflows dependent on external computing systems
Abstract
Disclosed are various embodiments for resilient workflows dependent on external computing systems. In one embodiment, one or more steps in a workflow are determined to invoke a request to an external computing system. Availability information for the external computing system is determined. The external computing system is detected to be potentially unavailable before a request within a workflow is submitted via an application programming interface (API) for processing by the external computing system. An indication is provided that an integration with the external computing system is unavailable in response to detecting that the external computing system is potentially unavailable.
Claims
exact text as granted — not AI-modifiedTherefore, the following is claimed:
1. A system, comprising:
at least one computing device; and
at least one memory storing instructions executable in the at least one computing device, wherein when executed the instructions further cause the at least one computing device to at least:
generate a user interface comprising a plurality of selectable components associated with a plurality of external computing systems, a selection of a respective selectable component providing access to a respective external computing system;
determine one or more steps in a workflow that invoke a request to a particular external computing system of the plurality of external computing systems;
determine availability information regarding the particular external computing system;
before submitting the request within the workflow via an application programming interface (API) for processing by the particular external computing system, detect that the particular external computing system is potentially unavailable based at least in part on at least one of an improper rejection or a timeout of at least one previous request to the API of the particular external computer system; and
modify the user interface to indicate a potential issue with the particular external computing system by modifying a visual appearance of a particular selectable component of the plurality of selectable components in response to detecting that the particular external computing system is potentially unavailable, the particular selectable component corresponding to the particular external computing system.
2. The system of claim 1 , wherein when executed the instructions further cause the at least one computing device to at least generate the user interface as part of the workflow to include at least one other selectable option corresponding to at least one other integration with one or more other external computing systems.
3. The system of claim 2 , wherein when executed the instructions further cause the at least one computing device to determine to provide an indication based at least in part on determining an availability of the at least one other integration with one or more other external computing systems as alternatives to the integration.
4. The system of claim 1 , wherein when executed the instructions cause a selection of the visually modified particular selectable component to accept the request for processing when a potential availability of the particular external computing system is detected.
5. The system of claim 1 , wherein determining the availability information further comprises determining that at least one other request to the API of the external computing system in a different workflow has failed.
6. The system of claim 1 , wherein determining the availability information further comprises further comprises determining that the external computing system is affected by a scheduled downtime.
7. The system of claim 1 , wherein the external computing system corresponds to a payment processing provider, the workflow is a checkout workflow of an electronic commerce provider, and a user selection of an integration causes the payment processing provider to be selected to process a payment for an order with the electronic commerce provider.
8. The system of claim 1 , wherein the external computing system corresponds to a payment processing provider, the workflow is a payment account creation workflow of an electronic commerce provider, and a user selection of an integration causes the electronic commerce provider to add a payment account with the payment processing provider to a user account with the electronic commerce provider.
9. A method, comprising:
generating a user interface comprising a plurality of selectable components associated with a plurality of external computing systems, a selection of a respective selectable component providing access to a respective external computing system;
determining, via at least one of one or more computing devices, one or more steps in a workflow that invoke a request to a particular external computing system of the plurality of external computing systems;
determining, via at least one of the one or more computing devices, availability information regarding the particular external computing system;
before submitting the request within the workflow via an application programming interface (API) for processing by the particular external computing system, detecting, via at least one of one or more computing devices, that the particular external computing system is potentially unavailable based at least in part on at least one of an improper rejection or a timeout of at least one previous request via the API; and
modifying, via at least one of one or more computing devices, the user interface to indicate a potential issue with the particular external computing system by modifying a visual appearance of a particular selectable component of the plurality of selectable components in response to detecting that the particular external computing system is potentially unavailable, the particular selectable component corresponding to the particular external computing system.
10. The method of claim 9 , further comprising generating the user interface as part of the workflow to include at least one other selectable option corresponding to at least one other integration with one or more other external computing systems.
11. The method of claim 10 , further comprising providing an indication based at least in part on determining an availability of the at least one other integration with one or more other external computing systems as alternatives to the integration.
12. The method of claim 9 , wherein determining the availability information further comprises performing a canary polling function on the external computing system.
13. The method of claim 9 , wherein determining the availability information further comprises determining that at least one other request to the API of the external computing system in a different workflow has failed.
14. The method of claim 9 , wherein determining the availability information further comprises further comprises determining that the external computing system is affected by a scheduled downtime.
15. The method of claim 9 , wherein the external computing system corresponds to a payment processing provider, the workflow is a checkout workflow of an electronic commerce provider, and a user selection of an integration causes the payment processing provider to be selected to process a payment for an order with the electronic commerce provider.
16. A non-transitory computer-readable medium embodying instructions executable in at least one computing device, wherein when executed the instructions cause the at least one computing device to at least:
generate a user interface comprising a plurality of selectable components associated with a plurality of external computing systems, a selection of a respective selectable component providing access to a respective external computing system;
determine one or more steps in a workflow that invoke a request to a particular external computing system of the plurality of external computing systems;
determine availability information regarding the particular external computing system;
before submitting the request within the workflow via an application programming interface (API) for processing by the particular external computing system, detect that the particular external computing system is potentially unavailable based at least in part on at least one of an improper rejection or a timeout of at least one previous request via the API; and
modify the user interface to indicate a potential issue with the particular external computing system by modifying a visual appearance of a particular selectable component of the plurality of selectable components in response to detecting that the particular external computing system is potentially unavailable, the particular selectable component corresponding to the particular external computing system in response to detecting that the external computing system is potentially unavailable.
17. The non-transitory computer-readable medium of claim 16 , wherein when executed the instructions further cause the at least one computing device to at least generate the user interface as part of the workflow to include at least one other selectable option corresponding to at least one other integration with one or more other external computing systems.
18. The non-transitory computer-readable medium of claim 16 , wherein determining the availability information further comprises at least one of performing a canary polling function on the external computing system or determining that at least one other request to the API of the external computing system in a different workflow has failed.
19. The non-transitory computer-readable medium of claim 16 , wherein the external computing system corresponds to a payment processing provider, the workflow is a payment account creation workflow of an electronic commerce provider, and a user selection of an integration causes the electronic commerce provider to add a payment account with the payment processing provider to a user account with the electronic commerce provider.
20. The non-transitory computer-readable medium of claim 16 , wherein when executed the instructions further cause the at least one computing device to at least modify the user interface to cause an alteration of a selectable component corresponding to another external system in response to detecting that the other external computing system is potentially unavailable, the alteration of the selectable component corresponding to the other external system preventing a user selection of the selectable component corresponding to the other external system.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.