Oswald Labs Platform is a set of open, extensible APIs and SDKs to build apps. This repository contains (some) code that runs on our servers, primarily serving as a wrapper around various APIs and to prevent API key exposion. Most APIs available here are free for public use with rate limits.
Endpoint | Details | Params |
---|---|---|
GET /screenshot |
Screenshot image | url (webpage URL) |
GET /read-aloud |
Text-to-speech | text (URL-encoded text) |
GET /reader |
JSON with website content | url (webpage URL) |
POST /reader |
JSON with website content | url (webpage URL) |
POST /describe |
JSON with AutoALT | dataUri (base 64-encoded image) |
πͺπΊ Note: The GDPR export/delete APIs are served through a brute force prevention middleware, so more than a few requests in a short time will slow down the response (resets in 15 minutes).
Endpoint | Details |
---|---|
GET /agastya/gdpr/export.csv |
Data export CSV file |
GET /agastya/gdpr/export/:format |
Data export in JSON/CSV |
GET /agastya/gdpr/delete |
JSON number of deleted items |
GET /agastya/secure-collect |
Anonymously track an event |
Endpoint | Details |
---|---|
GET /_/API_KEY.js |
Load Agastya to your site |
GET /_/dev/API_KEY.js |
Load Agastya development |
GET /_/beta/API_KEY.js |
Load Agastya beta |
Note: APIs with the π (lock) emoji require Bearer token-based authentication. You can generate a token by using Oswald Labs Account APIs. APIs with the π (key) emoji require captcha validation.
Endpoint | Details |
---|---|
GET /agastya/api-keys |
π List of your API keys |
GET /agastya/api-keys/:apiKey |
π Configuration of an API key |
PATCH /agastya/api-keys/:apiKey |
π Update configuration of API key |
DELETE /agastya/api-keys/:apiKey |
π Delete an API key |
PUT /agastya/api-keys |
π Create a new API key |
Endpoint | Details |
---|---|
GET /auth/details |
π Returns account details |
PATCH /auth/details |
π Updates account details |
POST /auth/login |
Generates a login token |
POST /auth/register |
π Create a new account |
POST /auth/forgot |
Emails a forgot password link |
POST /auth/reset |
π Requests a password reset |
Endpoint | Details |
---|---|
GET /billing/customer |
π Returns customer details |
GET /billing/plans |
π Returns list of plans |
GET /billing/cards |
π Returns credit card(s) |
PATCH /billing/cards/:cardId |
π Updates card details |
DELETE /billing/cards/:cardId |
π Deletes credit catd |
GET /billing/invoices |
π Returns customer invoices |
GET /billing/subscriptions |
π Returns customer subscriptions |
PUT /billing/subscriptions |
π Creates new subscription |
Endpoint | Details |
---|---|
POST /agastya/analytics/recents |
π Returns recent tracked events |
POST /agastya/analytics/graphs |
π Aggregated values for graphing |
POST /agastya/analytics/sorted |
π Single key-value sorted events |
POST /agastya/analytics/explore |
π User journey timeline |
These APIs are free for public usage with the following rate limits (requests slow down after 500 requests/15 minutes):
Usage type | Rate limit | Total limit |
---|---|---|
Without API key | 200 requests/minute | No daily/monthly limits |
GDPR export/delete | Increasing delay | Renews in 15 minutes |
When you're using authenticated endpoints, use /secure/*
instead of /v1/*
to avoid all rate limits and send your API key as x-api-key
in the header. API keys are available for free to Oswald Labs Accelerator startups and our partners. Custom-priced API keys are available for everyone else; get in touch to request one.
Clone this repo and install dependencies. To install Puppeteer on Ubuntu, first install its dependencies. There may be issues.
yarn
Start a local server for development:
yarn start:local
Run the update shell script on production server:
./update.sh