Documentation & Resources
Everything you need to integrate with That Is A Q's platform. Comprehensive API references, SDKs, guides, and code examples.
New in v2.4.0: We've introduced Webhook signatures, batch operations, and a completely redesigned SDK. Check the changelog for migration details.
Overview
The That Is A Q API is a RESTful API that enables you to build applications, automate workflows, and integrate with our platform. All API requests must be made over HTTPS, and all responses are returned as JSON.
Authentication
OAuth 2.0 and API key authentication with scoped access control.
Read docs →REST Endpoints
Complete reference for all API endpoints, parameters, and response schemas.
View endpoints →SDKs & Libraries
Official client libraries for JavaScript, Python, Go, Ruby, and more.
Browse SDKs →Rate Limits
Understand request limits, tier quotas, and best practices for efficiency.
Learn more →Quick Start
Get up and running with the That Is A Q API in under 5 minutes. Here's how to make your first API call.
Install the SDK
Install the official JavaScript/TypeScript SDK using your preferred package manager.
Configure Your API Key
Set your API key as an environment variable or configure it directly in your SDK client.
Make Your First Request
Initialize the client and make your first API call to fetch resources.
API Endpoints
Projects
Create, retrieve, update, and delete projects within your organization.
Members
Manage team members and their roles within your organization.
Authentication
The That Is A Q API supports two authentication methods: API Keys for server-to-server communication and OAuth 2.0 for user-authenticated requests.
Security Notice: Never expose your API keys in client-side code. Use environment variables and server-side proxies for all sensitive operations.
API Key Authentication
Include your API key in the Authorization header of every request:
OAuth 2.0 Flow
SDKs & Libraries
Official client libraries available for the most popular programming languages. All SDKs follow the same conventions and are maintained by the That Is A Q team.
@thatisaq/sdk
JavaScript / TypeScript SDK. Full type safety, tree-shaking support, and Node.js + browser compatible.
View on npm →thatisaq-python
Python SDK with async/await support. Available on PyPI. Compatible with Python 3.8+.
View on PyPI →go-thatisaq
Go SDK with context support, goroutine safety, and automatic retry logic.
View on GitHub →thatisaq-ruby
Ruby gem with Rails integration, ActiveModel serialization, and i18n support.
View on RubyGems →Error Codes
The API uses standard HTTP status codes and returns detailed error objects in the response body.
| HTTP Code | SDK Error | Description | Action |
|---|---|---|---|
200 |
— | Success | Process response normally |
400 |
BadRequestError |
Invalid request parameters | Check request body & query params |
401 |
AuthenticationError |
Invalid or expired API key | Regenerate your API key |
403 |
PermissionError |
Insufficient permissions | Verify OAuth scopes |
404 |
NotFoundError |
Resource not found | Check resource ID |
429 |
RateLimitError |
Rate limit exceeded | Implement exponential backoff |
500 |
InternalServerError |
Server-side error | Contact support |
Error Response Format
Webhooks
Subscribe to events to receive real-time notifications when resources change. Webhooks are signed using HMAC-SHA256 for verification.
Webhooks are now GA! Available on all plans starting from v2.4.0. Previously beta-only.
Available Events
-
project.created Triggered when a new project is created in the organization.
-
project.updated Triggered when project metadata or configuration is modified.
-
project.deleted Triggered when a project is permanently deleted.
-
member.invited Triggered when a new member is invited to the organization.
-
key.rotated Triggered when an API key is rotated or revoked.
Verifying Webhook Signatures
Pagination
Lists that return multiple resources support cursor-based pagination. Include the after parameter to fetch the next page.
Rate Limiting
API requests are rate-limited based on your plan tier. Check the X-RateLimit-* headers in responses to track your usage.
| Plan | Requests/min | Burst Limit | Monthly Quota |
|---|---|---|---|
| Starter | 60 |
100 |
10K |
| Growth | 300 |
500 |
100K |
| Enterprise | Unlimited |
2000 |
Unlimited |
Changelog
Webhooks GA + Batch Operations
Webhooks are now generally available. New batch endpoints for bulk updates. Improved SDK error handling. TypeScript declaration files are now bundled.
OAuth 2.0 Refresh Tokens
Added refresh token support for OAuth flows. New pagination helpers. Go SDK added. Bug fixes for webhook retry logic.
Rate Limit Headers
Rate limit headers added to all responses. Ruby SDK released. Improved webhook signature verification.
Major API Redesign
Complete API v2 with new authentication model, updated resource schemas, and breaking changes from v1.x. Migration guide available.
Ready to build? Jump into our Quick Start Guide or browse the Code Examples for real-world integration patterns.