API Documentation
Learn how to integrate with the FiboDC API using your API key
Authentication
All API requests require authentication using an API key. To authenticate, include your API key in the request headers:
Authorization: Bearer YOUR_API_KEY
API keys can be generated in the Settings page when admin features are enabled.
Get All Applications
Retrieves a list of all applications with pagination support.
Endpoint
GET /api/external/applications
Query Parameters
page
(optional): Page number (default: 1)limit
(optional): Number of items per page (default: 20)search
(optional): Search term to filter applications by name or descriptionstatus
(optional): Filter applications by status
Response
{ "success": true, "data": [ { "id": "application_id", "name": "Application Name", "description": "Application Description", "status": ["New", "Archived"], "isPublished": true, "isPublic": true, "isSLA": false, "hasDeadline": false, "deadline": null, "accessLevel": "public", "createdAt": "2025-03-25T12:00:00.000Z", "updatedAt": "2025-03-25T12:00:00.000Z", "organization": { "id": "organization_id", "name": "Organization Name" }, "user": { "id": "user_id", "name": "User Name", "email": "[email protected]" }, "_count": { "Submissions": 5 } } ], "pagination": { "page": 1, "limit": 20, "totalCount": 50, "totalPages": 3, "hasNextPage": true, "hasPrevPage": false } }
Get Application by ID
Retrieves detailed information about a specific application.
Endpoint
GET /api/external/applications/{id}
Response
{ "success": true, "data": { "id": "application_id", "name": "Application Name", "description": "Application Description", "formTitle": "Form Title", "formDescription": "Form Description", "questionnaire": "Questionnaire JSON", "status": ["New", "Archived"], "isPublished": true, "isPublic": true, "isSLA": false, "hasDeadline": false, "deadline": null, "accessLevel": "public", "submissionAccess": "any_person", "allowedOrgIds": [], "createdAt": "2025-03-25T12:00:00.000Z", "updatedAt": "2025-03-25T12:00:00.000Z", "organization": { "id": "organization_id", "name": "Organization Name", "description": "Organization Description" }, "user": { "id": "user_id", "name": "User Name", "email": "[email protected]" }, "_count": { "Submissions": 5, "tasks": 2 } } }
Error Responses
All endpoints return a consistent error response format:
{ "success": false, "error": "Error message" }
Common HTTP Status Codes
400
: Bad Request - Missing or invalid parameters401
: Unauthorized - Missing or invalid API key403
: Forbidden - Admin features not enabled404
: Not Found - Resource not found500
: Internal Server Error - Server-side error
Code Examples
Get All Applications
curl -X GET "https://warkflow.com//api/external/applications?page=1&limit=20" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json"
Update Submission Status
curl -X PATCH "https://warkflow.com//api/external/submissions/submission_id" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"status": "In Progress"}'