@mikiguillamon/n8n-nodes-solidtime
v0.2.6
Published
n8n community node for Solidtime with guided operations, flexible API requests, and AI agent tool support.
Downloads
93
Maintainers
Readme
@mikiguillamon/n8n-nodes-solidtime
Professional n8n community node for Solidtime Cloud and self-hosted Solidtime instances.
It implements the official Solidtime API contract exposed by the exported api-1.json and api-1.yaml specifications, with guided UI for the public resources, filters, enums, and payloads, plus a safe Custom API Request escape hatch for anything outside the modeled surface.
Supported Resources
API TokenChartClientProjectProject MemberReportPublic ReportInvitationMemberOrganizationTagTaskTime EntryUserCurrencyImporterImportExportCustom API Request
Supported Operations
- CRUD where the official API exposes CRUD
- user profile and memberships
- API token management
- organization settings
- members, projects, project members, clients, tags, tasks, reports, invitations
- time entry listing, create/update/delete, bulk update, bulk delete, aggregate, export, aggregate export
- chart endpoints
- importer discovery and import launch
- organization export launch
Custom API Request
Requirements
- n8n with community nodes enabled
- Node.js
^22.22.0 || >=24.0.0for local development - A Solidtime API token
- A Solidtime organization ID
Installation
On a self-hosted n8n instance:
- Go to
Settings > Community Nodes - Select
Install - Enter
@mikiguillamon/n8n-nodes-solidtime - Confirm the installation prompt
- Restart n8n if your deployment requires it
Credentials
Create Solidtime API credentials with:
Base URL:https://app.solidtime.iofor cloud, or your self-hosted base URL without/apiAPI TokenOrganization IDLicense Key
Authentication uses the Solidtime bearer token format:
Authorization: Bearer <api-token>License Behavior
The node is already prepared for commercial licensing.
Current behavior:
- Any license key with 10 or more characters is accepted
- Validation is centralized and cached
- The validation layer is ready to switch to a remote license server later
How the Node Covers the API
As of May 15, 2026, this package is aligned to the exported official API specs that include 46 public paths across:
- users and memberships
- API tokens
- organizations
- clients
- members
- projects and project members
- reports and public reports
- tags
- tasks
- time entries
- charts
- invitations
- currencies
- importers, imports, and exports
The node models those resources with guided operations and leaves Custom API Request as a fallback for future or private endpoints.
Custom API Request
Custom API Request supports:
- HTTP method
- Relative API path
- Additional query parameters as key/value rows
- Additional headers as key/value rows
- JSON request body
- Shared credentials and shared transport logic
Security rules applied by the node:
- Absolute URLs are rejected
- Path traversal like
..is rejected - The request is always anchored to the configured Solidtime base URL
Examples:
/v1/organizations/<organization-ID>/projects/api/v1/organizations/<organization-ID>/time-entries
AI Tool Usage
The node is marked with usableAsTool.
AI-oriented behavior included:
- Semantic resource and operation names
- Guided fields for common actions
- Safe defaults
Outputmode withSimplifiedorRaw- Local
Limithandling for list operations when needed
Known API Limits
- Some export endpoints can return non-JSON payloads depending on the selected format
Import.dataremains free-form because the official contract does not publish a fully structured payload schema for each importer type- Pagination behavior depends on the endpoint family: some use
page, others uselimit/offset
Examples
Create a project
- Resource:
Project - Operation:
Create - Name:
Website redesign - Color:
#2563eb
Get time entries for a user
- Resource:
Time Entry - Operation:
Get Many - User ID:
<user-uuid> - After:
2026-05-01 - Return All:
false - Limit:
100
Call an unsupported endpoint
- Resource:
Custom API Request - HTTP Method:
GET - Path:
/v1/organizations/<organization-ID>/...
Development
npm install
npm run lint
npm run build
npm pack --dry-run
npm run devValidation
The package should pass:
npm run lint
npm run build
npm pack --dry-runRelease
The release workflow is documented in RELEASE.md.
Public publishing is configured through GitHub Actions with npm provenance.
