Prompt
What should I use for a dataset API with REST and SDKs?
Latest observation
Oct 8, 2026
OpenAI APIWeb search: off
If you’re building a dataset API and want both REST access and SDKs, the best choice depends on whether you want fast adoption, strong standards, or maximum flexibility. In most cases, I’d recommend:
Best default choice
REST API + OpenAPI + generated SDKs
Why this is usually the best:
- REST is widely understood
- OpenAPI gives you a formal contract
- You can auto-generate SDKs for Python, JavaScript, Go, Java, etc.
- Easy to document and support
- Works well for CRUD, search, filtering, pagination, and dataset metadata
Good stack for a dataset API
- API style: REST
- Spec: OpenAPI 3.0/3.1
- SDK generation: openapi-generator, Swagger Codegen, or custom generation
- Docs: Swagger UI / Redoc
- Auth: API keys or OAuth2 depending on audience
- Data format: JSON for metadata, plus CSV/Parquet/Arrow downloads if needed
If the dataset is large or analytical
Consider adding:
- Pagination / cursor-based listing
- Bulk export endpoints
- Streaming/download endpoints
- Filter/query parameters
- Possibly GraphQL only if clients need highly flexible nested queries
If you want very strong SDK experience
You can still use REST underneath, but invest in:
- consistent resource naming
- clear pagination conventions
- error schema standardization
- versioning strategy
- examples in the docs
- typed SDKs generated from the OpenAPI spec
When to choose something else
- GraphQL: if users need flexible, query-driven access to complex relationships
- gRPC: if this is primarily service-to-service, not public client-facing
- OData: if your users are enterprise/BI-heavy and want standard query semantics
- JSON:API: if you want a strict REST-like standard with conventions built in
Recommendation
For most dataset platforms:
Use REST + OpenAPI and generate SDKs from the spec.
If you want, I can also suggest:
- a recommended endpoint design for a dataset API, or
- the best SDK generation tooling for your language stack.