API processing server and API processing program

The API processing server facilitates API execution by assisting a generation AI in selecting and executing APIs, addressing the challenge of handling complex API specifications for users without technical knowledge, enhancing user convenience and process success.

JP7886665B1Active Publication Date: 2026-07-08ALBENA CO LTD

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
ALBENA CO LTD
Filing Date
2026-03-26
Publication Date
2026-07-08

AI Technical Summary

Technical Problem

Users without knowledge of specific technologies face difficulty in handling APIs due to their unique specifications and execution conditions, making it challenging to execute processing for business support.

Method used

An API processing server connected to a core system via a network, equipped with a message sending and receiving function, API selection support, and execution functions, assists a generation AI in selecting and executing APIs based on user requests, providing necessary information and protocol verification.

Benefits of technology

Enables users without technical knowledge to easily execute business support processes using APIs, increasing convenience and success rates by simplifying API execution and optimizing selection processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007886665000001_ABST
    Figure 0007886665000001_ABST
Patent Text Reader

Abstract

This enables users without specific technical knowledge to easily perform tasks for business support using APIs. [Solution] An API processing server 30 connected via a network to a user terminal 10, a core system 40 having multiple APIs configured to provide predetermined business support services, and comprising: a message sending and receiving function 31a that exchanges messages with the generation AI 20 and the core system 40 respectively; an API selection support function 33a that sends an API information message including API list information 32a and selection support information 32b to the generation AI 20 in response to an information inquiry from the generation AI 20; and an API execution function 34a that, upon receiving a processing request message from the generation AI 20 including a request to execute a business for a specific API, sends an API execution message to the core system 40 in accordance with the specifications of the specific API.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to an API processing server and an API processing program.

Background Art

[0002] In recent years, business support systems using APIs (Application Programming Interfaces) are known. Specifically, for example, among a plurality of APIs publicly available within a system, after identifying an API suitable for the usage purpose, the API is used to execute processing related to a user's business, thereby assisting the user's business (see, for example, Patent Document 1).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] It is common for a plurality of APIs to each have unique specifications that are different from each other. Therefore, for API execution, it is necessary to understand the specifications, execution conditions, etc. of each API and make execution requests (requests) that conform to each. However, the specifications, execution conditions, etc. of each API are highly technical, and it is difficult for users without knowledge of such specific technologies to handle them.

[0005] This disclosure provides a technology that enables even users without knowledge of specific technologies to easily execute processing for business support using APIs.

Means for Solving the Problems

[0006] According to one aspect of this disclosure, An API processing server connected via a network to a core system that includes a generation AI connected to a user terminal and multiple APIs configured to provide predetermined business support services, A message sending and receiving function that exchanges messages with the aforementioned generation AI and the aforementioned core system, When the aforementioned core system receives an API inquiry message from the generating AI that includes an inquiry about APIs, the API selection support function creates an API information message that includes API list information showing a list of APIs and selection support information showing the basis for selecting a specific API from the API list information, and sends it to the generating AI. The generating AI, upon receiving the API information message, receives a processing request message containing a request to execute a task for the specific API, and then sends an API execution message to the core system in accordance with the specifications of the specific API. An API processing server equipped with the following features is provided.

[0007] According to another aspect of this disclosure, A computer connected via a network to a core system that includes a generation AI connected to a user terminal and multiple APIs configured to provide predetermined business support services, A message sending and receiving function that exchanges messages with the aforementioned generation AI and the aforementioned core system, When the aforementioned core system receives an API inquiry message from the generating AI that includes an inquiry about APIs, the API selection support function creates an API information message that includes API list information showing a list of APIs and selection support information showing the basis for selecting a specific API from the API list information, and sends it to the generating AI. The generating AI, upon receiving the API information message, receives a processing request message containing a request to execute a task for the specific API, and then sends an API execution message to the core system in accordance with the specifications of the specific API. An API processing program is provided to enable it to function as such. [Effects of the Invention]

[0008] According to this disclosure, even users without knowledge of specific technologies will be able to easily perform processes for business support using APIs. [Brief explanation of the drawing]

[0009] [Figure 1] This block diagram shows an example of a schematic configuration of a business support system including an API processing server according to one embodiment of the present disclosure. [Figure 2] This is a block diagram showing an example of the functional configuration of an API processing server according to one embodiment of this disclosure. [Figure 3] This is a correlation diagram showing an example of the relationships between the various functions in an API processing server according to one embodiment of this disclosure. [Figure 4] This chart shows an example of a message exchange procedure in a business support system including an API processing server according to one embodiment of this disclosure. [Figure 5] This is an explanatory diagram showing a specific example of an API query message processed by an API processing server according to one embodiment of this disclosure. [Figure 6] This is an explanatory diagram showing a specific example of API list information and selection support information in a configuration file acquired by an API processing server according to one embodiment of this disclosure. [Figure 7] This is an explanatory diagram illustrating the concept of batching of execution requests in an API processing server according to one embodiment of the present disclosure. [Figure 8] This is an explanatory diagram showing a specific example of a processing request message processed by an API processing server according to one embodiment of this disclosure. [Figure 9] This is an explanatory diagram showing a specific example of an API execution message processed by an API processing server according to one embodiment of this disclosure. [Figure 10] This is an explanatory diagram showing a specific example of an API execution result processed by an API processing server according to one embodiment of this disclosure. [Modes for carrying out the invention]

[0010] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings.

[0011] (1) Schematic configuration of the business support system First, the schematic configuration of the business support system configured using the API processing server according to this embodiment will be described.

[0012] FIG. 1 is a block diagram showing a schematic configuration example of a business support system including an API processing server according to this embodiment.

[0013] The illustrated business support system includes at least a user terminal 10, a generative AI (Artificial Intelligence) 20, an API processing server 30, a core system 40, and a network 50 that connects these to each other.

[0014] The user terminal 10 is a terminal device used by a user who receives business support services from the business support system, and is for information input by the user and information output to the user. For this purpose, the user terminal 10 is configured by, for example, a computer that combines hardware resources such as a CPU (Central Processing Unit), a RAM (Random Access Memory), a storage, and a communication port. Specifically, a personal computer device can be exemplified as the user terminal 10, but it is not limited thereto, and a portable terminal device such as a smartphone or a tablet terminal may also be used. Also, there may be not only one but a plurality of user terminals 10 in the business support system, and each may be used by a different user.

[0015] The Generative AI 20 is an artificial intelligence (AI) capable of automatically generating various types of content based on a large amount of learned data. While the Generative AI 20 operates on hardware resources as a computer, it may reside on a so-called cloud via a network 50, or it may be embedded in any computer within a business support system, such as a user terminal 10 or an API processing server 30. Note that the Generative AI 20 can be implemented using publicly known technologies, and a detailed explanation of these technologies is omitted here.

[0016] The API processing server 30, like the user terminal 10, is composed of a computer that combines hardware resources such as a CPU, RAM, storage, and communication ports. The various functions implemented by the API processing server 30 as a computer, and the role that the API processing server 30 plays within the system through these functions, will be described in detail later.

[0017] The core system 40 is also composed of a computer that combines hardware resources such as a CPU, RAM, storage, and communication ports. However, the core system 40 is installed within a company that provides a predetermined business support service, and various databases necessary for providing that business support service are built on it. Furthermore, the core system 40 has multiple APIs configured to enable the provision of the business support service. There may be more than one such core system 40 within the business support system. Note that all of the multiple APIs provided by the core system 40 can be implemented using publicly known technologies, and a detailed explanation of these is omitted here.

[0018] The network 50 may be a local network or a so-called wide-area network, regardless of whether it is wired or wireless, as long as it connects the user terminal 10, the generation AI 20, the API processing server 30, and the core system 40 in a manner that enables them to communicate with each other.

[0019] (2) Functional configuration of the API processing server Next, we will describe the functional configuration of the API processing server 30, which constitutes a part of the business support system described above.

[0020] Figure 2 is a block diagram showing an example of the functional configuration of the API processing server according to this embodiment.

[0021] As shown in the diagram, the API processing server 30 includes a communication unit 31, a configuration file 32, an API selection unit 33, and an API execution unit 34.

[0022] The communication unit 31 is for establishing communication between the API processing server 30 and the outside world. Once the communication unit 31 establishes communication, the message sending and receiving function 31a is realized, which is a function that exchanges messages between the API processing server 30 and the generating AI 20 and the core system 40, respectively.

[0023] Configuration file 32 contains information about all APIs provided by the core system 40 within the business support system. This API information includes at least API list information 32a, which lists the APIs, and selection support information 32b, which provides the rationale for selecting a specific API from the API list information 32a. The API list information 32a and selection support information 32b will be described in detail later with specific examples. The configuration file 32 is assumed to be stored in storage accessible to the API processing server 30. In this case, the storage containing the configuration file 32 is not necessarily limited to that provided by the API processing server 30; it may be located on an external device on the network 50 (for example, on the cloud) as long as it is accessible to the API processing server 30.

[0024] The API selection unit 33 is designed to allow the generation AI 20 to automatically select, as a specific API, the API necessary for providing the business support services requested by the user from among the multiple APIs present in the core system 40. To this end, the API selection unit 33 implements an API selection support function 33a. The API selection support function 33a is a function that, in response to a request from the generating AI 20, creates an API information message containing API list information 32a and selection support information 32b, and sends the created API information message to the generating AI 20.

[0025] The API execution unit 34 is responsible for performing the processing necessary for executing APIs in the core system 40. To this end, the API execution unit 34 implements the following functions: API execution function 34a, protocol verification function 34b, batching function 34c, and processing notification function 34d.

[0026] The API execution function 34a is a function that executes a specific API selected by the generating AI 20. Specifically, when the generating AI 20 receives an API information message, the API execution function 34a receives a processing request message from the generating AI 20 that includes a request to execute a business for a specific API, and then sends an API execution message to the core system 40 that conforms to the specifications of the specific API. The API execution function 34a may also be configured to determine the validity of the processing request message from the generating AI 20 and to perform error processing if it is not valid. The determination of validity and error processing can be performed using publicly available technologies.

[0027] The protocol verification function 34b is a function that performs a protocol verification process with the core system 40 when generating API execution messages. Specifically, the protocol verification function 34b sends a protocol inquiry message to the core system 40 that queries protocol information defining the specifications of messages that a particular API can accept, and provides the generation AI 20 with a protocol information message containing the protocol information received from the core system 40.

[0028] The batching function 34c is a function that performs the necessary processing to batch API execution messages that are to be sent to the core system when a certain degree of continuity (redundancy) is recognized in the content of those messages. Specifically, the batching function 34c obtains aggregation condition information necessary to consolidate multiple business executions by a specific API into a single execution from the core system 40 and provides it to the generation AI 20.

[0029] The processing notification function 34d is a function that guides the system to prevent problems caused by excessive processing (e.g., processing delays) by understanding the amount of processing required before API execution (e.g., processing time, amount of data to be processed, etc.). Specifically, when sending an API execution message to the core system 40, the processing notification function 34d recognizes the amount of processing required when sending an API execution message based on the history of message exchange with the core system 40, and provides information on that amount of processing to the generation AI 20.

[0030] Each of the functions 31a, 33a, 34a to 34d in the API processing server 30 described above is realized by the CPU of the API processing server 30 executing a predetermined program. In other words, each of the functions 31a, 33a, 34a to 34d is realized by the cooperation of the computer's hardware resources and a predetermined program (software).

[0031] In that case, the predetermined program may be provided stored on a recording medium readable by the API processing server 30 (e.g., magnetic disk, optical disk, magneto-optical disk, semiconductor memory, etc.), as long as it is installable on the computer, or it may be provided externally via the network 50. In either case, the predetermined program is for realizing each of the functions 31a, 33a, 34a to 34d, and corresponds to one embodiment of the "API processing program" in this disclosure.

[0032] (3) Examples of processing operations in business support systems Next, we will describe an example of processing operation in a business support system that includes the API processing server 30 with the configuration described above.

[0033] (Overview of processing operations) Here, we will give an example of the processing operation when a user operating the user terminal 10 receives business support services while utilizing one of the multiple APIs provided by the core system 40.

[0034] The core system 40 has multiple APIs, each with its own unique specifications. To execute an API, it is necessary to understand the specifications and execution conditions of each API and then make an execution request that is appropriate for that API. Therefore, directly accessing the core system 40 from a user terminal 10 to execute APIs is extremely difficult unless the user operating the terminal 10 possesses advanced technical knowledge regarding the API specifications and execution conditions.

[0035] In contrast, the business support system in this embodiment includes a user terminal 10 and a core system 40, as well as a generation AI 20 and an API processing server 30. The API processing server 30 assists in the execution of APIs in the core system 40 via the generation AI 20. As a result, a user operating the user terminal 10 can execute APIs using natural language instructions without requiring advanced technical knowledge of API specifications or execution conditions, by utilizing the functions of the generation AI 20 and the API processing server 30. More specifically, when a user communicates a request to the generation AI 20 in natural language from the user terminal 10, a specific API corresponding to the user's request is selected through message exchange between the generation AI 20 and the API processing server 30 in a procedure described in detail later, and a business support service using that specific API is provided.

[0036] One prerequisite for performing such processing is that, at some point between the construction of the business support system and the start of the processing, a configuration file 32 containing information about all APIs provided by the core system 40 is available, and the API processing server 30 is able to access that configuration file 32.

[0037] Furthermore, as another prerequisite, at some point between the construction of the business support system and the start of the processing operation, the generating AI 20 is capable of exchanging messages with the API processing server 30 through learning, etc., and is also capable of recognizing that the API processing server 30 is equipped with the API selection support function 33a and the various functions 34a to 34d of the API execution unit 34 as described above.

[0038] (Detailed procedure for processing) The following describes, with specific examples, the procedure for a user operating user terminal 10 to receive business support services while utilizing one of the multiple APIs provided by the core system 40.

[0039] Figure 3 is a correlation diagram showing an example of the relationships between each function in the API processing server according to this embodiment. Figure 4 is a chart showing an example of the message exchange procedure in a business support system including the API processing server according to this embodiment.

[0040] When a user wishes to receive business support services, they first input a service processing request in natural language on the user terminal 10. For example, consider a service processing request that reads, "I want to know the sales figures for **product** over the period of **." In this case, the user does not need to select an API. When such a service processing request is input, the user terminal 10 sends the input content to the generating AI 20 connected to the user terminal 10 within the business support system (step 101; hereafter, steps will be abbreviated as "S").

[0041] As described above, the generating AI 20 is able to recognize, through learning and other means, that it is possible to exchange messages with the API processing server 30, and that the API processing server 30 is equipped with various functions such as the API selection support function 33a and the API execution unit 34, even before it receives a transmission from the user terminal 10. Therefore, upon receiving a transmission from the user terminal 10, the generating AI 20 interprets the content of the transmission and deduces that "in order to fulfill this request, it is necessary to rely on the functions of the API processing server 30." Then, in order to rely on the functions of the API processing server 30, the generating AI 20 first creates an API inquiry message that includes an inquiry about APIs provided by the core system 40, and sends that API inquiry message to the API processing server 30 (S102). For example, an API inquiry message like the one shown in Figure 5 is created and sent.

[0042] Upon receiving an API query message from the generating AI 20, the API processing server 30 uses the API selection support function 33a to access the configuration file 32 and obtain information about the core system 40's APIs from that configuration file 32. If there are multiple core systems 40 within the business support system, information about the APIs is obtained for each of the core systems 40 (S103).

[0043] The information to be obtained (i.e., information about APIs) shall include at least API list information 32a showing a list of APIs, and selection support information 32b showing the basis for selecting a specific API from the API list information 32a. Here, we will explain with specific examples the API list information 32a and selection support information 32b that the API selection support function 33a obtains from the configuration file 32.

[0044] Figure 6 is an explanatory diagram showing a specific example of API list information and selection support information in a configuration file acquired by the API processing server according to this embodiment. The API list information 32a and the selection support information 32b are information used to identify each of the multiple APIs provided by the core system 40. For this purpose, the API list information 32a and the selection support information 32b are associated with each other for each API. The API list information 32a is composed of API identifiers (for example, the name or address of the API) to identify each API, and is configured so that all APIs provided by the core system 40 can be recognized in a list format. Selection support information 32b is information that provides justification for selecting a specific API (i.e., information to support API selection), and is provided for each of the APIs provided by the core system 40. In this embodiment, selection support information 32b consists of primary information and secondary information. The primary information included in the selection support information 32b is used as the basis for the generating AI 20 to select a specific API. Specifically, the primary information consists of, for example, at least one, preferably both, of the API's function description and tag information indicating the type of information the API handles. The secondary information included in the selection support information 32b is used as the basis for the generation AI 20 to add to the primary information when it re-selects a specific API. Specifically, the secondary information consists of, for example, priority information indicating the execution priority that each of the multiple APIs has relative to other APIs. Furthermore, the selection support information 32b may include other information in addition to primary and secondary information. The same applies to the configuration file 32, which may contain additional information in addition to the API list information 32a and the selection support information 32b. Examples of additional information in the configuration file 32 include guidance information for instructing the use of primary and secondary information in the selection support information 32b.

[0045] As shown in Figures 3 and 4, when information including at least API list information 32a and selection support information 32b is obtained from the configuration file 32 (S103), the API selection support function 33a creates an API information message containing the obtained API list information 32a and selection support information 32b. Then, the created API information message is sent to the generating AI 20, which is the source of the API query message, as a response to that API query message (S104).

[0046] Upon receiving an API information message, the generating AI 20 refers to the API list information 32a and selection support information 32b in the received API information message and selects an API that is suitable for executing the service processing request from the user terminal 10 (S105).

[0047] Regarding API selection, the processing differs depending on whether the API is selected the first time a user requests a service (first-round API selection) or if the API is re-selected from the second time onward (second-round and subsequent API selection).

[0048] (First round API selection) Prior to the first API selection, the generating AI20 is assumed to have already been notified of information that it should know in advance for API selection (e.g., guideline information). This notification of information may be done in conjunction with the understanding of the aforementioned prerequisites, or in conjunction with the sending and receiving of API information messages. By having prior knowledge of this information, the generating AI 20 can make the following decisions in response to a service processing request from the user terminal 10: when selecting an API for the first time, it will use the primary information in the selection support information 32b as the basis; and when re-selecting an API from the second time onward, it will use both the primary and secondary information in the selection support information 32b as the basis. Specifically, for the first API selection, the generating AI 20 compares, for example, keywords and tags included in the service processing request from the user terminal 10 with keywords and tags included in the primary information in the selection support information 32b. Based on the results of this comparison, it selects one API as a specific API suitable for executing the service processing request from the user terminal 10. Such API selection can be based on either the API's functional description or tag information included in the primary source. However, using both the API's functional description and tag information allows for API selection that takes into account both the API's functionality and the data it handles, which is highly desirable for improving the accuracy and reliability of the API selection. After this API selection process, the generated AI20 explicitly specifies the API identifier for the chosen API.

[0049] Once a specific API is selected, the generating AI 20 then requests the execution of that API. However, in order to request the execution of an API, it is necessary to understand its specifications and conditions. Therefore, the generating AI 20 explicitly specifies the API identifier of the specific API and then queries the API processing server 30 regarding the specifications and conditions of that specific API. In response to such a query, the API processing server 30 may verify whether the specified API identifier matches the API identifiers that exist in the configuration file 32 as API list information 32a, and return an error message to the generating AI 20 if they do not match.

[0050] Specifically, when the generating AI 20 queries the API processing server 30, it explicitly specifies the API identifier of a particular API, creates a protocol request message that requests protocol information defining the specifications of messages that that particular API can accept, and sends that protocol request message to the API processing server 30 (S106).

[0051] Upon receiving a protocol request message from the generation AI 20, the API processing server 30 uses its protocol verification function 34b to perform a protocol verification process. Specifically, the protocol verification function 34b creates a protocol inquiry message in response to the protocol request message from the generation AI 20, which queries protocol information defining the specifications of messages that a particular API can accept, and sends this protocol inquiry message to the core system 40 (S107). The protocol request message and the protocol inquiry message may be the same.

[0052] Then, in response to the protocol inquiry message, when the core system 40 returns a protocol information message containing protocol information about a specific API (S108), the protocol confirmation function 34b provides that protocol information message to the generation AI 20 (S109). By exchanging protocol information in this way, the generation AI 20 can understand the specifications of messages that a specific API can accept. Note that the protocol information exchanged is not limited to a specific type of information, as long as it relates to the definition of the message specification, and may include various types of information, such as metadata information.

[0053] Furthermore, the query message that the API processing server 30 sends to the core system 40 may include, in addition to the protocol query message, a batching query message that queries for the aggregation conditions necessary for batching. In that case, when the API processing server 30 receives a batching message from the core system 40 containing aggregation condition information for batching for a specific API in response to the batching query message (S110), the batching function 34c provides that batching message to the generation AI 20 (S111). By exchanging aggregation condition information in this way, the generation AI 20 can appropriately batch execution requests for a specific API as needed.

[0054] Here, we will briefly explain batching of execution requests. Figure 7 is a schematic diagram illustrating the concept of batching execution requests handled by the API processing server according to this embodiment. Batching refers to the process of consolidating multiple execution requests for a specific API into a single execution request when a certain degree of continuity (duplication) is observed between them. When a specific API is selected, the generating AI 20 extracts and interprets the content of the execution request to be given to that specific API and determines whether there is continuity in the execution request to the core system 40. The content to be extracted is, for example, a bulk data update. Specifically, for example, as shown in Figure 7(a), requests A and B with different attributes are judged to be unrelated and processed individually. However, as shown in Figure 7(b), if there are multiple requests A1 and A2 with the same attributes and you want to process them simultaneously, they are judged to be related and are targeted for batch processing. When batching is performed, the generating AI 20 aggregates multiple execution requests to conform to the aggregation condition information provided by the batching function 34c. If batching is supported, for example, it can improve the execution performance of data processing when processing large amounts of continuous data. In other words, when it is expected that many execution requests of the same type will be made simultaneously, processing the execution requests in batches can significantly reduce processing time compared to processing each request individually.

[0055] As shown in Figures 3 and 4, upon receiving a protocol information message from the API processing server 30 (S109), the generating AI 20 generates a processing request message that includes a request to execute a task for a specific API, based on the contents of the protocol information message (S112). In the case of batching, the generating AI 20 generates a processing request message while aggregating multiple execution requests, based on the contents of the batched message. The generating AI 20 then sends the generated processing request message to the API processing server 30 (S113). For example, the processing request message shown in Figure 8 is created and sent.

[0056] Upon receiving a processing request message from the generating AI20, the API processing server 30 performs the following processing as necessary using the API execution function 34a.

[0057] Here, the API execution function 34a calls the processing notification function 34d to guide the system in a way that prevents problems caused by performing processing that places an excessive load on the system (for example, processing delays) (S114).

[0058] The processing notification function 34d recognizes the amount of processing required when an API execution message is sent, based on the history of message exchange with the core system 40. Specifically, the processing notification function 34d creates a measurement message as a test message that contains a request to execute a measurement process to measure the processing speed of the core system 40, and sends this measurement message to the core system 40 (S115) to inquire about the amount of processing in the core system 40. As a result of this inquiry, when the processing notification function 34d receives the execution result of the measurement process from the core system 40 (S116), it estimates the processing time required when an API execution message is actually sent, based on the time taken to obtain the execution result (S117). In other words, the processing notification function 34d estimates the processing time required when an API execution message is sent based on the history of test message exchange with the core system 40, and recognizes the estimated result as the amount of processing in the core system 40. The processing notification function 34d then notifies the generation AI 20 of the processing volume recognition result (i.e., the estimated processing time) (S118).

[0059] The generation AI 20, in response to a notification from the processing notification function 34d, reports the estimated processing time and any delays as a notification process to the user terminal 10 (S119). If the user terminal 10 approves the execution as a result (S120), the generation AI 20 notifies the API processing server 30 to that effect (S121). If execution approval is not obtained, the process can be interrupted or the conditions can be reset.

[0060] As described above, by using the processing notification function 34d to recognize the processing volume and provide notifications of the recognition results for API executions in the core system 40, it becomes possible to implement preventative processing, for example, when acquiring large amounts of data. In other words, if an API execution requires a long processing time that is unintended by the user, the user would otherwise have to wait while working until the processing is finished. However, the processing notification function 34d can foresee this in advance, inform the user, and obtain their consent, thereby avoiding unintended constraints on the user.

[0061] If the user approves the execution, or if the processing notification function 34d is not used at all, the API processing server 30, in response to the processing request message received from the generating AI 20 (S113), uses the API execution function 34a to generate an API execution message for the specific API specified in the processing request message and sends that API execution message to the core system 40 (S122). At this time, the API execution message sent by the API execution function 34a conforms to the specifications of the specific API. Specifically, an API execution message like the one shown in Figure 9 is sent.

[0062] In this way, the API execution function 34a instructs the core system 40 to execute the API (S122). In response, the core system 40 executes the requested API and sends the API execution result (response data) to the API processing server 30 (S124). The API processing server 30 then forwards the received API execution result to the generation AI 20 (S125). The API execution result may look like the one shown in Figure 10.

[0063] Upon receiving the API execution result, the generating AI 20 performs a success or failure determination regarding that API execution result (S126). The success or failure determination can be made, for example, based on the degree of match between the words contained in the API execution result and the words contained in the processing request message. However, it is not limited to this, and success or failure determination may be performed using other methods. If the success or failure determination determines that the API execution result does not match the content of the processing request message, the generating AI 20 discards the received API execution result and performs a re-selection of the API (API selection for the second round or later) (see X in Figure 4).

[0064] On the other hand, if the API execution result matches the content of the processing request message, the generating AI 20 processes the content of the received API execution result in a way that is understandable to the user operating the user terminal 10, such as natural language conversion, graphing, charting, and data registration (S127). Then, it sends the processing result to the user terminal 10 to output to the user (S128). If, based on the user's actions after viewing the output result, a message is sent from the user terminal 10 indicating that it is not the desired API execution result (S129), the generating AI 20 decides to re-select the API (API selection for the second round or later) (see X in Figure 4).

[0065] (API selection from the second round onwards) When the generating AI 20 performs API selection in the second round or later, the selection criteria differ from those used in the first API selection. Specifically, when performing API selection in the second round or later, the generating AI 20 uses both the primary and secondary information in the selection support information 32b as its basis. This is assumed to be specified by information notified in advance (e.g., guideline information).

[0066] Specifically, in the case of a second API selection, the generating AI 20, for example, excludes one API selected in the first API selection from the selection candidates, and then, as in the case of the first API selection, uses the primary information in the selection support information 32b as a basis to narrow down the APIs that are candidates for selection. Then, from the narrowed selection candidates, the generating AI 20 further uses the secondary information in the selection support information 32b as a basis to select one API (S105). As a result, for example, if the secondary information includes priority information, the API with the highest execution priority from among the selection candidates will be selected as the specific API suitable for executing the service processing request from the user terminal 10.

[0067] Furthermore, if an API selection is required for the third time or later, the API with the highest execution priority will be selected each time.

[0068] In this way, the generating AI 20 appropriately switches the information that forms the basis for selecting an API between the first round of API selection and subsequent rounds of API selection, while following various information notified from the API processing server 30. This makes it possible to select the appropriate API according to the situation in both the first round of API selection and subsequent rounds of API selection, thereby increasing the success rate of API execution and reducing the number of retries, thus shortening the total processing time.

[0069] After selecting a specific API, messages are exchanged between the generating AI 20, the API processing server 30, and the core system 40 in the same manner as in the first round of API selection described above (S106~S122), which causes the core system 40 to execute the API (S123). The result of that API execution (response data) is then processed by the generating AI 20 and output from the user terminal 10 (S124~S128).

[0070] (Output of API execution results) Based on the output of the API execution results (response data) as described above, the user of user terminal 10 will receive business support services using the API provided by the core system 40. In this case, the user of user terminal 10 does not need to directly access the core system 40, and can receive business support services using the API without requiring advanced technical knowledge regarding the API's specifications or execution conditions.

[0071] In other words, the business support system in this embodiment includes a user terminal 10 and a core system 40, as well as a generation AI 20 and an API processing server 30, with the API processing server 30 assisting in the execution of APIs of the core system 40 via the generation AI 20. Therefore, by utilizing the functions of the generation AI 20 and the API processing server 30, users of the user terminal 10 can execute APIs using natural language instructions without possessing advanced technical knowledge regarding API specifications or execution conditions.

[0072] (4) Effects of the embodiment The API processing server 30 and API processing program according to the embodiment described above, as well as the business support system including the API processing server 30, provide one or more of the following effects.

[0073] (a) In this embodiment, the API processing server 30 creates and sends an API information message including API list information 32a and selection support information 32b, causing the generating AI 20 to select an API. The server also queries the core system 40 regarding the specifications and conditions of the specific API selected by the generating AI 20, and causes the generating AI 20 to generate a processing request message according to the specifications and conditions obtained, thereby causing the core system 40 to execute the API based on that processing request message. With this configuration, according to this embodiment, even if the processing request received by the generating AI 20 from the user terminal 10 to the core system 40 does not specify a particular API from among the multiple APIs provided by the core system 40, and / or the description of the request does not conform to the API specifications or conditions, the generating AI 20 can, with the support of the API processing server 30, appropriately and explicitly select an API, and can also send an appropriate API execution message conforming to the specifications and conditions to the core system 40 via the API processing server 30. In other words, according to this embodiment, even users who do not possess knowledge of specific technologies can easily execute processes for business support using APIs. As a result, the convenience of the core system 40 for users can be increased, and the success rate of processes performed by the core system 40 can be increased.

[0074] (b) In this embodiment, the API selection support function 33a obtains API list information 32a and selection support information 32b from a configuration file 32 accessible by the API processing server 30, and these API list information 32a and selection support information 32b are stored in the configuration file 32 in a read / write manner. The configuration file 32 contains information about all the APIs provided by the core system 40. Therefore, by using the API list information 32a and selection support information 32b obtained from the configuration file 32, the selection of specific APIs made by the generating AI 20 can be optimized. Furthermore, since the API list information 32a and selection support information 32b are readable and writable, the content of the reference information and selection policy for API selection can be flexibly changed, allowing for flexible system operation.

[0075] (c) In this embodiment, the selection support information 32b includes primary information and secondary information. When the generating AI 20 selects a specific API, the primary information and secondary information are used differently depending on whether it is the first round of API selection or the second round or later API selection. In other words, the generating AI 20 can appropriately switch the information that serves as the basis for selecting an API depending on whether it is the first round of API selection or the second round or later API selection. This allows for the selection of the appropriate API based on the situation in both the first round of API selection and subsequent rounds of API selection. As a result, it becomes possible to increase the success rate of API execution and reduce the number of retries, thereby shortening the total processing time.

[0076] (d) In this embodiment, the primary information in the selection support information 32b includes at least one of the API function description or tag information. Therefore, when the generating AI20 selects a specific API, it will be possible to make the selection by taking into account at least one, preferably both, aspects of the API's functionality and the data it handles. This is highly desirable for improving the accuracy and reliability of the API selection.

[0077] (e) In this embodiment, the secondary information in the selection support information 32b includes priority information indicating the execution priority that each of the multiple APIs has relative to the other APIs. This allows the generating AI 20 to select the API with the highest execution priority from the candidate selections when it performs API selection for the second time or later, as a specific API suitable for executing the service processing request from the user terminal 10. In other words, the core system 40 has multiple APIs configured to provide business support services, depending on the business. Therefore, the first round of API selection may not always meet the user's expectations. In such cases, when the generating AI 20 selects APIs in the second and subsequent rounds, priority information can be provided as additional information that the generating AI 20 should consider, thereby helping to optimize the selection of APIs in those subsequent rounds.

[0078] (f) In this embodiment, the protocol confirmation function 34b sends a protocol inquiry message to the core system 40, and when the core system 40 sends a protocol information message containing protocol information in response, it provides the protocol information message to the generation AI 20. This allows the Generator AI20 to understand the specifications of messages that a particular API can accept. In other words, when a task execution request is made for a specific API, the Generator AI20 can generate an appropriate API execution message that conforms to the specifications and conditions of that API.

[0079] (g) In this embodiment, the batching function 34c obtains aggregation condition information necessary to consolidate multiple executions of a specific API into a single execution from the core system 40 and provides it to the generation AI 20. This allows the generating AI20 to properly batch execution requests for specific APIs. In other words, when executing an API, there are cases where it is expected that many execution requests of the same type will be made simultaneously. In such cases, by appropriately batching the execution requests using the batching function 34c, the processing time can be significantly reduced compared to processing each execution request individually.

[0080] (h) In this embodiment, when the processing notification function 34d sends the API execution message to the core system 40, it recognizes the amount of processing required when the API execution message is actually sent (e.g., processing time) based on the history of message exchange with the core system 40 that takes place before the transmission, and provides information regarding that amount of processing to the generating AI 20. As a result, the generating AI 20 can, in response to notifications from the processing notification function 34d, report the estimated processing time and delay warnings as a notification process to the user terminal 10. In other words, because the core system 40 holds a very wide range of business operations, the execution of user requests may require unintendedly long processing times. However, even in such cases, the processing notification function 34d can foresee this in advance, inform the user, and obtain their consent, thereby avoiding unintended constraints on the user.

[0081] (5) Variations etc. Although embodiments of this disclosure have been specifically described above, the technical scope of this disclosure is not limited to the embodiments described above, and various modifications are possible without departing from its essence.

[0082] In the above-described embodiment, a specific example is given to explain the procedure for a user operating the user terminal 10 to receive business support services while utilizing one of the multiple APIs provided by the core system 40. However, this is merely one example and may be modified as needed. For example, batch processing using the batching function 34c and notification processing to the user terminal 10 using the processing notification function 34d may be omitted if unnecessary, and even in that case, the user can still receive business support services.

[0083] Furthermore, while the above-described embodiment provides specific examples of primary and secondary information in the selection support information 32b, the content is not necessarily limited to these specific examples and may be modified as needed. [Explanation of Symbols]

[0084] 10...User terminal, 20...Generating AI, 30...API processing server, 31...Communication unit, 32...Configuration file, 32a...API list information, 32b...Selection support information, 33...API selection unit, 33a...API selection support function, 34...API execution unit, 34a...API execution function, 34b...Protocol confirmation function, 34c...Batching function, 34d...Processing notification function, 40...Core system, 50...Network

Claims

1. An API processing server connected via a network to a core system that includes a generating AI connected to a user terminal and an API configured to provide a predetermined business support service, A message sending and receiving function that exchanges messages with the aforementioned generation AI and the aforementioned core system, A protocol confirmation function that sends a protocol inquiry message to the core system inquiring about protocol information defining the specifications of messages that the API can accept, and provides the generation AI with a protocol information message containing the protocol information received from the core system. An API execution function that, upon receiving a processing request message from the generating AI that includes a request to execute a business for the API, and which the generating AI has generated based on the contents of the protocol information message, sends an API execution message to the core system in accordance with the specifications of the API. An API processing server equipped with the following features.

2. A batch processing function that obtains aggregation condition information necessary to consolidate multiple business executions by the API into a single execution, and provides it to the generating AI. The API processing server according to claim 1, comprising:

3. A processing notification function that, when sending the API execution message to the core system, recognizes the amount of processing required when sending the API execution message based on the history of message exchange with the core system, and provides information regarding the amount of processing to the generating AI. The API processing server according to claim 1, comprising:

4. A computer connected via a network to a core system that includes a generating AI connected to a user terminal and an API configured to provide a predetermined business support service, A message sending and receiving function that exchanges messages with the aforementioned generation AI and the aforementioned core system, A protocol confirmation function that sends a protocol inquiry message to the core system inquiring about protocol information defining the specifications of messages that the API can accept, and provides the generation AI with a protocol information message containing the protocol information received from the core system. An API execution function that, upon receiving a processing request message from the generating AI that includes a request to execute a business for the API, and which the generating AI has generated based on the contents of the protocol information message, sends an API execution message to the core system in accordance with the specifications of the API. An API processing program that functions as such.