However, I would really like to log this as an idea for voting and visibility.
I would really like to be able to point to both OpenAPI 2 (swagger) and OpenAPI 3 versions of the specification.
Regarding the one endpoint that takes an input stream and makes it "impossible" today - just leave it out of the specs for now. Publish all compliant endpoints.
Even publish it without the one inputstream parameter.
Having OpenAPI specs will make it a breeze to integrate with for instance Azure Logic Apps, or use tools to autogenerate clients. (Like the "good old days" of WSDL)
If it is Open API (pka swagger) spec where can I find the definition(s) for the services. Sorry if this is a dumb question but I can’t seem to find any schema and the term Open Api is used throughout Hubspots own description and documentation.
@amatomike We use the term Open API in the sense of a programmable interface that is open for developers of HubSpot customers to push and pull information from our platform. At the moment I do not believe we are part of the “Open API Initiative” and have not based our specs on the swagger specification standard.
Unfortunately, we aren't able to generate a detailed Swagger spec for that endpoint at this time. One day, we hope for all of our docs to be OpenAPI Specification (OAS) compliant, however I can't offer a concrete timeline right now.
In light of this, can I personally help clarify anything about that endpoint?
Thanks for replying. Judging from your answer, if I would need the Swagger spec for this specific endpoint, I would need it to construct it myself? If that is at all possible, of course.
My understanding is that we can programmatically generate Swagger specifications for many of our endpoints but not the contact createOrUpdate endpoint at this time because it takes a raw InputStream. Because this is just a generic stream of input bytes, our tooling doesn't define it in Swagger and the specification is incomplete. It is possible to create a Swagger spec for this endpoint manually.
Cloud Elements created and manages those specs. As a company which normalizes APIs into standard formats, they built their own API on top of HubSpot and produced Swagger specs for it.
Hello here! I'm working on an R client for the Hubspot API. I'm wondering whether there's any public machine-readable schema available for the API?
For all methods it'd contain what's in the docs HTTP method, format, authentication, rate limiting info, headers, product, required scope, optional and necessary parameters, output structure, e.g. in a big JSON.
The reason I'm asking is that I'd like to use such a machine readable schema to scaffold the functions in the R client (we want to add wrappers for each GET method at the moment).
Currently, our API public documentation isn't any type of Swagger/OpenAPI Specification (OAS), it's HubSpot form of documentation. Moving forward, the team is definitely looking to be OAS compliant however I can't provide a specific date.
That said, do let me know if there's any endpoint that I can help to clarify on.
I do not believe this advice can be correct as of Jan 3 onwards.
The entire hubspot-api-php client is being generated from an OpenAPI definitions file. This is publicly evident / even in the commit at hotspot's github account:
Given the choice of pre-built api clients is very limited, if you could make available the file used to call the OpenAPI Generator, it would allow developers to call from strongly typed languages such as Rust or Java. Any reason not to make file available? The (currently) unavailable file is being relied on for the official client, so any reason not to make it available?
Not sure why the api model spec file being used in both projects is not made available? It would make developer experience much better, even if you just provided on a "use at own risk" type basis.
I just wanted to use all the API objects like marketing, events, Owners, Pipelines So I need the dynamic schema. So is there any way to get the metadata for all the Hubspot API Objects?
You should be able to find the API schema on our new API docs i.e. CRM API | Owners > At the right side of the endpoint > Under 'Response' > Select 'Schema'.