Skip to content
This repository was archived by the owner on Dec 31, 2025. It is now read-only.

Pyrrhusn/Intent2API-Tide

Repository files navigation

Intent2API-Tide

Interface with the Tide API using natural language, powered by OpenAI API and GPT-5.1 that helps you explore, converse about and create a request to send to the chosen endpoint.

The program flow is as follows:

  1. Use PromptController and POST /api/prompt endpoint to gauge the users intent or action. The API responds with up to 3 candidate endpoints.
  2. Send the chosen endpoint from step 1 to the ConversationController to first create a conversation object which returns the objects id and an initial response.
  3. Send the user's message to that initial response to the responses endpoint to keep the conversation going. The returned object has a boolean value that represents whether the user has filled every parameter and/or that they confirm to proceed to the next step.
  4. The submission endpoint is used to extract three possible actions from the user's message: Submit, Edit, or Reset. If the user doesn't answer correctly, the api will return a null for the action and a message to ask the user again.
  5. In case of Submit action, the other properties of the ConversationSubmissionAction object will be filled as well with their respective values. It is now possible to send the request to the chosen endpoint, but the client has to take care of that.
  6. The message property is always filled in.
  7. For other actions, only the UserSubmissionAction will have a value corresponding to Reset or Edit.

Run

In order to run this project, you need an OpenAI API key. That key must have access to the Responses API, File Search API, Vector Store (Files).

After you have acquired the API key, add the key as an environment variable on your system. In Windows, you can use the GUI to edit the environment variables, but in any case the name of the variable must be correct, OPENAI_API_KEY:

OPENAI_API_KEY=YOUR_OPENAI_API_KEY

Tide API - Swagger/OpenAI Specification

To provide new updates to the definitions or newer Swagger document of the Tide API, use the SwaggerFileController endpoints.

The POST /api/SwaggerFile/filter-swagger-paths extracts the paths and their possible operations. You can upload a file or the API tries to find a local version which must be present in the application data folder. (On Windows: C:\Users\<user>\AppData\Roaming\Intent2API)

Highly Recommended: It also possible to upload the filtered file directly to OpenAI which can then be used by the Responses API to query new definitions.

Client

This project serves as the backend for the frontend chatbot project, which can be found here.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages