docs /api

Connect your application to Shyne.

Create an organization API key, authenticate a backend or script, and use every current REST operation with live schemas.

The REST API is for developers building backends, scripts, automations, and integrations. Create one organization API key, keep it on your server, and call Shyne over HTTPS.

Create a key

  1. Open Settings → Organization → API keys.
  2. Create an organization API key and copy the secret when it is shown.
  3. Store it in your deployment platform or secret manager as SHYNE_API_KEY.

The secret is shown only when it is created. It acts for the organization, so never place it in a URL, browser or mobile bundle, analytics event, source repository, or log.

Base URL

Every request goes to one base URL. Send your organization API key on each /v1 call.

API base URL
https://api.shyne.ai

Make the first request

Send the key in the Authorization header on every /v1 request. Never send it as a query parameter.

cURL
curl https://api.shyne.ai/v1/me \
  -H "Authorization: Bearer $SHYNE_API_KEY"
JavaScript (server-side)
const response = await fetch("https://api.shyne.ai/v1/me", {
  headers: { Authorization: `Bearer ${process.env.SHYNE_API_KEY}` },
});

if (!response.ok) throw new Error(await response.text());
console.log(await response.json());

A successful GET /v1/me returns the key’s creator, organization id, and project count. This is the quickest connection check.

An external product can connect directly when it supports a custom HTTPS base URL and Authorization header. If it does not, call Shyne from your own backend or automation rather than exposing the key in client-side code.

Work with projects and canvas tools

The normal flow is: verify the key, list or create a project, discover the current canvas tools, then call a tool with that project id.

1 · list projects
curl https://api.shyne.ai/v1/projects -H "Authorization: Bearer $SHYNE_API_KEY"
2 · create a project
curl -X POST https://api.shyne.ai/v1/projects \
  -H "Authorization: Bearer $SHYNE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Campaign workspace"}'
3 · discover tools and their schemas
curl https://api.shyne.ai/v1/tools -H "Authorization: Bearer $SHYNE_API_KEY"
4 · call a tool
curl -X POST https://api.shyne.ai/v1/projects/PROJECT_ID/tools/get_basic_info \
  -H "Authorization: Bearer $SHYNE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

GET /v1/tools returns the live name, description, complete JSON input schema, and read/write/destructive hints for every canvas tool. The same concrete operations appear in the OpenAPI 3.1 specification, which can be imported into tools that support OpenAPI.

Brands, scheduling, and publishing

CapabilityREST routes
Reusable brandsGET /v1/brands, POST /v1/brands, DELETE /v1/brands/{id}
Recurring tasksGET /v1/scheduled, POST /v1/scheduled, PATCH /v1/scheduled/{id}, DELETE /v1/scheduled/{id}
Public artifact snapshotsGET /v1/projects/{id}/published-artifact, POST to publish, DELETE to unpublish

Use the OpenAPI entry for the exact request fields, enums, limits, and response status of each operation. Project reads and writes are checked against the organization and the project’s sharing rules.

Errors and revocation

Error responses use { "error": "code", "message": "what went wrong" }. A 400 means invalid input or a tool failure, 401 means the key is missing or no longer valid, 403 means the organization cannot access the resource, and 404 means the route, tool, or resource does not exist.

Revoke a key from Settings → Organization → API keys. Verification is cached briefly, so allow up to 60 seconds for a revoked key to stop working everywhere. Rotate immediately if a key is exposed.