DataHub API Documentation
A comprehensive REST API for managing users, products, and orders. Version 2.0
Introduction
Welcome to the DataHub API! This API allows you to programmatically access and manage your data. Our API is organized around REST principles and uses standard HTTP response codes.
Base URL: https://api.datahub.example.com/v2
Format: All responses are returned in JSON format.
Authentication
All API requests require an API key to be included in the header.
Include your API key in the request header:
Example request:
Users
GET /users
Retrieve a list of all users.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | optional | Number of results (default: 10, max: 100) |
| offset | integer | optional | Pagination offset (default: 0) |
| sort | string | optional | Sort by field (created_at, name) |
Response (200 OK)
POST /users
Create a new user.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | required | User's full name |
| string | required | User's email address | |
| role | string | optional | User role (admin, user, guest) |
Response (201 Created)
GET /users/:id
Retrieve a specific user by ID.
Response (200 OK)
DELETE /users/:id
Delete a user by ID.
Response (204 No Content)
Products
GET /products
Retrieve all products.
Response (200 OK)
POST /products
Create a new product.
Request Body
Orders
GET /orders
Retrieve all orders.
Response (200 OK)
POST /orders
Create a new order.
Error Handling
The API uses standard HTTP status codes to indicate success or failure.
| Status Code | Meaning |
|---|---|
| 200 | OK - Request succeeded |
| 201 | Created - Resource created successfully |
| 400 | Bad Request - Invalid request parameters |
| 401 | Unauthorized - Invalid or missing API key |
| 404 | Not Found - Resource not found |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error |
Error Response Format
Rate Limits
API requests are limited to prevent abuse:
- Standard: 1000 requests per hour
- Premium: 5000 requests per hour
Rate limit info is included in response headers: