ChatGPT handling complex OpenAPI schemas

I don’t have access to the Plugins API yet but I’m working on an application that lets OpenAI Plugins talk to user databases (https://jinj.at/) easily and I want to start working on the project until I get access to it. :slight_smile:

I wonder if ChatGPT really knows about the OpenAPI specification with the complex polymorphism features or control blocks. [1] If it really knows about the spec, I rather create fewer endpoints that are more complex but more customizable. If not, I will let the user generate more endpoints that have a simpler schema.

An example of this is business metrics. Let’s say that I have revenue and churn metrics that I defined in my database. I can drill down the revenue metric with the customer_plan dimension whereas I can only drill down churn metric with customer_location dimension. I can generate a single endpoint that has metric_name and dimensions using OpenAPI’s discriminator feature so that I can only let relevant values for dimensions but the API endpoint will be more complex to handle. Alternatively, I can create two endpoints for churn and revenue that uses enum feature of OpenAPI.

1: Inheritance and Polymorphism

2 Likes

I am building a complex Plugin and curious if you have had luck? I am getting decent results by simplifying and documenting our REST API.