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.
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.