Global Ascendancy is here! Check out our new features. Explore
API Documentation
Build integrations and automate workflows with the IdeaDunes REST API. Full CRUD support, JWT authentication, and real-time webhooks.
Getting Started
The IdeaDunes API is a RESTful JSON API. All requests must include an Authorization: Bearer <token> header with a valid JWT obtained from the login endpoint. All API responses return JSON with consistent error formatting.
Authenticate with email/password. Returns JWT token and session.
POST
/api/auth/signup
Create a new user account with email verification.
POST
/api/auth/logout
Invalidate current session and JWT token.
POST
/api/auth/refresh
Refresh an expired JWT token using refresh token.
POST
/api/auth/forgot-password
Request a password reset email.
POST
/api/auth/reset-password
Reset password using token from email.
POST
/api/auth/verify-email
Verify email address using verification token.
POST
/api/auth/magic-link
Request a passwordless login link via email.
POST
/api/auth/setup-2fa
Enable two-factor authentication (TOTP or SMS).
POST
/api/auth/verify-2fa
Verify 2FA code during login.
Users & Profiles
Method
Endpoint
Description
GET
/api/users/me
Get the authenticated user profile.
PUT
/api/users/me
Update the authenticated user profile.
GET
/api/users/{id}
Get a user by ID (admin only).
GET
/api/users
List all users with pagination and filtering (admin only).
Contacts & CRM
Method
Endpoint
Description
GET
/api/crm/contacts
List all contacts with search and pagination.
POST
/api/crm/contacts
Create a new contact record.
GET
/api/crm/contacts/{id}
Get contact details by ID.
PUT
/api/crm/contacts/{id}
Update an existing contact.
DELETE
/api/crm/contacts/{id}
Delete a contact (soft delete).
GET
/api/crm/leads
List all leads with filtering.
GET
/api/crm/accounts
List all accounts/companies.
Projects & Tasks
Method
Endpoint
Description
GET
/api/projects
List all projects accessible to the user.
POST
/api/projects
Create a new project.
GET
/api/projects/{id}
Get project details and summary.
GET
/api/projects/{id}/tasks
List all tasks in a project.
POST
/api/tasks
Create a new task.
PUT
/api/tasks/{id}
Update task status, assignee, or details.
Invoicing & Billing
Method
Endpoint
Description
GET
/api/invoices
List invoices with filters (status, date, client).
POST
/api/invoices
Create a new invoice with line items.
GET
/api/invoices/{id}
Get invoice details with line items and payments.
POST
/api/invoices/{id}/send
Send invoice to client via email.
Files & Documents
Method
Endpoint
Description
GET
/api/files
List files and folders in the file manager.
POST
/api/files/upload
Upload a file (max 50MB, multipart/form-data).
GET
/api/files/{id}/download
Download a file by ID.
DELETE
/api/files/{id}
Delete a file (moves to trash).
Webhooks
Method
Endpoint
Description
GET
/api/webhooks
List configured webhooks for the account.
POST
/api/webhooks
Create a new webhook subscription.
DELETE
/api/webhooks/{id}
Remove a webhook subscription.
Error Codes
Code
Meaning
Action
400
Bad Request
Check request body and parameters
401
Unauthorized
Provide or refresh your JWT token
403
Forbidden
Insufficient permissions for this resource
404
Not Found
Resource does not exist
422
Validation Error
Fix the validation errors in the response body
429
Rate Limit Exceeded
Wait and retry after the Retry-After header value
500
Server Error
Contact support with the request ID from the response
Webhooks
Register webhook endpoints to receive real-time notifications when resources are created, updated, or deleted in IdeaDunes. Webhook payloads include the event type, timestamp, and full resource data.