Complete documentation of all HTTP REST endpoints in the GoFigr server API.
Base URL: https://api.gofigr.io
Supported API Versions: v1, v1.1, v1.2, v1.3, v1.4
All endpoints are versioned: /api/{version}/resource/
Authentication:
JWT Bearer token: Authorization: Bearer {access_token}
API Key: Authorization: Token {api_key}
Table of Contents
Obtain JWT Token Pair
Authenticates user and returns access/refresh token pair.
Request Body:
Response: 200 OK
Refresh Access Token
Request Body:
Response: 200 OK
Request Body:
Get Bootstrap Data
Returns all data needed for initial frontend load in a single request.
Response: 200 OK
This eliminates multiple round trips on initial page load.
List Workspaces
Lists all workspaces the user has access to.
Create Workspace
Request Body:
Get Workspace Overview
Returns aggregated counts for the workspace.
Response: 200 OK
Get Workspace Dashboard
Returns all data needed for the home view in a single request.
Query Parameters:
activity_limit (integer): Number of activity items (default: 10, max: 50)
exclude_deleted (boolean): Exclude deleted items from activity log
Response: 200 OK
Workspace Members
Workspace Sharing
Stories are AI-generated presentations from figure collections.
Response:
Request Body:
Request Body:
Comments support Markdown, @mentions, and threading.
Query Parameters (required):
target_type: asset, asset_revision, figure, or figure_revision
target_id: API ID of the target object
Response: 200 OK
Request Body:
Mentions using @username trigger email notifications.
Only the comment author can edit. Sets is_edited: true.
Request Body:
Only the comment author can delete.
Create AI Response
Creates an AI-authored reply to the specified comment. The AI generates the response asynchronously.
Response: 201 Created - The empty AI comment (content populated async)
Emoji reactions on comments.
Create Reaction
Request Body:
Delete Reaction
Deep Insight (AI)
AI-powered analysis of figures using Amazon Bedrock.
Query Deep Insight
Request Body:
Response (non-streaming):
Response (streaming): Server-Sent Events
Compare Revisions
Request Body:
Extracts the code that generated a figure using AI.
Request Body:
Response:
Returns data inputs/outputs for a figure revision.
Response:
Text-Only Query
AI query without a figure (text-only context).
Request Body:
Check Availability
Checks if AI can process a figure (permissions, rate limits).
Response:
Story Generation Endpoints
Optimized endpoints for AI story generation.
Manage SSH keys for Git repository imports.
Response:
Request Body:
Note: Private key is stored encrypted. Never returned in API responses.
Request Body:
Check Repository Access
Validates Git repository URL and authentication.
Request Body:
Upload User Data
Upload and process files (Git repos, PowerPoint, Word docs).
Asset Revisions - Additional Endpoints
Unlinks a figure revision from an asset revision.
Request Body:
Returns AI usage statistics and quota information.
API Version History
AI-generated titles and descriptions (ai_title, ai_description fields)
Tasks API, Comments, Reactions, created_on_behalf fields, optimized workspace list
Lazy-loaded revision data (data returned separately, not inline)
Nested objects in responses (analyses/figures return full objects, not just IDs)
Added ai_title and ai_description fields to figures and revisions
AI-generated descriptions for imported content
Tasks API: Background task tracking (/tasks/ endpoint)
Comments & Reactions: Full collaboration features
Attribution: created_on_behalf, created_on_behalf_name, created_on_behalf_email fields
Performance: ShallowWorkspaceSerializer for list operations
Revision data: Data objects returned via separate fetch, not inline with revision
Improves performance for large revisions
Nested objects: Workspace responses include full analysis objects (not just IDs)
Analysis responses include full figure objects
Original API with core CRUD operations
API Versioning: Use v1.4 for new integrations.
Data Processing: Revisions are processed asynchronously. Check status endpoint.
Shallow Representations: Use ?shallow=true for lightweight responses.
Silent Operations: Use ?silent=true to suppress activity logs.
Base64 Encoding: Binary data is base64-encoded.
Rate Limiting: AI endpoints are rate-limited based on plan.
Last Updated: January 2026
API Versions Supported: v1, v1.1, v1.2, v1.3, v1.4