Guided definition of an application programming interface action for a workflow

US10521195B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10521195-B1
Application numberUS-201916358276-A
CountryUS
Kind codeB1
Filing dateMar 19, 2019
Priority dateMar 19, 2019
Publication dateDec 31, 2019
Grant dateDec 31, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computing system includes persistent storage configured to store definitions of actions for integration into workflows, and a software application configured to define an action that invokes a function of an application programming interface (API). The software application obtains a specification and identifies therein definitions of a uniform resource locator (URL) that addresses the API, the function, an input of the function, and an output of the function. The software application generates an input variable of the action that corresponds to the input of the function and an output variable of the action that corresponds to the output of the function. The software application determines a first mapping between the input variable and a URL parameter of the API and a second mapping between the output variable and a response from the API. The first and second mappings are stored in in the persistent storage to define the action.

First claim

Opening claim text (preview).

What is claimed is: 1. A computing system comprising: persistent storage configured to store definitions of actions for integration into workflows; one or more processors; and an action design software application configured to define an action that invokes a function of an application programming interface (API), wherein the action design software application is configured to perform, by way of the one or more processors, operations comprising: obtaining a specification that defines attributes of the API; identifying, within the specification, definitions of (i) a uniform resource locator (URL) that addresses the API, (ii) the function, (iii) an input of the function, and (iv) an output of the function; generating (i) an input variable of the action that corresponds to the input of the function and (ii) an output variable of the action that corresponds to the output of the function; determining a first mapping between the input variable and a URL parameter of the API, wherein execution of the action generates a modified version of the URL that includes therein a value of the input variable according to the first mapping and invokes the function by transmitting a request to the modified version of the URL during execution of a workflow; determining a second mapping between the output variable and a response from the API, wherein the response is to the request, and wherein reception from the API of the response causes a value of the output of the function to be stored in the output variable according to the second mapping during execution of the workflow; and storing the first mapping and the second mapping in the persistent storage to define the action; wherein the URL parameter of the API comprises at least one of (i) a URL resource path parameter that identifies a specific resource provided by a server device that hosts the API or (ii) a URL query parameter comprising a key and value pair. 2. The computing system of claim 1 , wherein the action is a first action of a plurality of actions, and wherein the computing system further comprises: a workflow design software application configured to define workflows that include one or more of the plurality of actions, wherein the workflow design software application is configured to perform, by way of the one or more processors, operations comprising: receiving selection of the first action and a second action to define the workflow, wherein the second action precedes the first action in the workflow; receiving an assignment of a second output variable of the second action to the input variable of the first action; and generating a connection between (i) the second output variable and (ii) the input variable, wherein a value of the second output variable is passed from the second action to the input variable of the first action during execution of the workflow. 3. The computing system of claim 1 , wherein the action is a first action of a plurality of actions, and wherein the computing system further comprises: a workflow design software application configured to define workflows that include one or more of the plurality of actions, wherein the workflow design software application is configured to perform, by way of the one or more processors, operations comprising: receiving selection of the first action and a second action to define the workflow, wherein the first action precedes the second action in the workflow; receiving an assignment of the output variable of the first action to a second input variable of the second action; and generating a connection between (i) the output variable and (ii) the second input variable, wherein the value of the output variable is passed from the first action to the second input variable of the second action during execution of the workflow. 4. The computing system of claim 1 , wherein obtaining the specification of the API comprises importing the specification from a computing device associated with the API using a target URL. 5. The computing system of claim 1 , wherein obtaining the specification of the API comprises receiving the specification as text input by way of a user interface provided by the action design software application. 6. The computing system of claim 1 , wherein the operations further comprise: identifying, within the specification, an additional definition of an additional input of the function; generating an additional input variable of the action that corresponds to the additional input of the function; determining a third mapping between the additional input variable and a header parameter to be provided to the API as a hypertext transfer protocol (HTTP) header of the request, wherein execution of the action generates the request that includes in the HTTP header thereof an additional value of the additional input variable according to the third mapping; and storing the third mapping in the persistent storage to further define the action. 7. The computing system of claim 1 , wherein the operations further comprise: identifying, within the specification, an additional definition of an additional input of the function; generating an additional input variable of the action that corresponds to the additional input of the function; determining a third mapping between the additional input variable and a body parameter to be provided to the API as part of a hypertext transfer protocol (HTTP) body of the request, wherein execution of the action generates the request that includes in the HTTP body thereof an additional value of the additional input variable according to the third mapping; and storing the third mapping in the persistent storage to further define the action. 8. The computing system of claim 1 , wherein the operations further comprise: identifying, within the specification, an additional definition of an additional input of the function; generating an additional input variable of the action that corresponds to the additional input of the function; determining a third mapping between the additional input variable and a cookie parameter to be provided to the API within an HTTP cookie header of the request, wherein execution of the action generates the request that includes in the HTTP cookie header thereof an additional value of the additional input variable according to the third mapping; and storing the third mapping in the persistent storage to further define the action. 9. The computing system of claim 1 , wherein the input comprises a plurality of inputs, wherein the input variable comprises a plurality of input variables, and wherein the operations further comprise: determining, based on the specification and for each respective input variable of the plurality of input variables, an attribute indicating whether the corresponding input is optional or required, wherein the action is executable without providing values for the plurality of input variables corresponding to optional inputs, and wherein the action is not executable without providing values for the plurality of input variables corresponding to required inputs; and storing, for each respective input variable, an indication of the attribute in the persistent storage to further define the action. 10. The computing system of claim 9 , wherein the operations further comprise: determining, based on the specification, a default value of a particular input variable corresponding to a particular optional input, wherein the function is executed with the default value as the particular optional input when an alternative value is not assigned to the particular input variable; and storing the default value of the particular input variable in the persistent storage to further define the action.

Assignees

Inventors

Classifications

  • Interprogram communication · CPC title

  • URL specific, e.g. using aliases, detecting broken or misspelled links · CPC title

  • Graphical or visual programming · CPC title

  • G06F8/20Primary

    Software design · CPC title

  • Workflow analysis · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10521195B1 cover?
A computing system includes persistent storage configured to store definitions of actions for integration into workflows, and a software application configured to define an action that invokes a function of an application programming interface (API). The software application obtains a specification and identifies therein definitions of a uniform resource locator (URL) that addresses the API, th…
Who is the assignee on this patent?
Servicenow Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/20. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 31 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).