For Agents
Manage GoodDay projects, tasks, time reports, events, documents, and users through 36 endpoints under api.goodday.work/2.0.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the GoodDay API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fgoodday.work%2Fgoodday" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fgoodday.work%2Fgoodday" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with GoodDay API.
Create projects and folders inside the GoodDay organisation hierarchy
Create tasks within a project, assign them to users, and update their status
Query the action-required and assigned-task lists for any user
GET STARTED
Use for: Create a project folder for a new client engagement, I want to assign a task to a teammate inside a GoodDay project, List every action-required task for the current user, Get all time reports logged by a developer this week
Not supported: Does not handle chat messaging, video meetings, or invoice payment processing - use for GoodDay project, task, time-report, event, document, and user operations only.
The GoodDay API provides 36 endpoints across users, projects, tasks, events, time reports, and documents for the GoodDay project management platform. It covers task creation, status changes, comments, time tracking, and project hierarchy queries, plus user-level views of action-required and assigned tasks. Authentication is a gd-api-token header, and the API is the integration surface for teams that run multiple projects, agile boards, and time-tracked engagements inside GoodDay.
Read and write time reports against tasks for billing and capacity tracking
Manage events and documents associated with a project
Read user hourly rate history to support project profitability reports
Patterns agents use GoodDay API for, with concrete tasks.
★ Project Bootstrap Automation
Operations teams script new-client onboarding by creating a folder, the underlying project, and a templated set of tasks in GoodDay through the API. POST /projects/new-folder and POST /projects/new-project handle the hierarchy, then a loop creates tasks against /project/{projectId}/tasks so the team starts a new engagement in minutes.
Create folder 'Client Acme', create project 'Acme - Q3 implementation' under it, and add tasks 'Kickoff', 'Discovery', and 'Design' to the new project.
Time Tracking and Billing
Agencies pull time reports per user and per project to feed billing systems. /user/{userId}/time-reports returns the entries logged by an individual, and combining that with /user/{userId}/hourly-rate-history lets a script generate accurate invoices that respect rate changes mid-engagement.
Pull time reports for user user_42 between 2026-06-01 and 2026-06-30, multiply each entry by the matching hourly rate, and produce an invoice line per project.
Daily Personal Standup
An automation pulls each team member's action-required tasks every morning and posts them into a chat channel so standups stay short. The /user/{userId}/action-required-tasks endpoint returns precisely the tasks GoodDay flags as awaiting that user, which is more actionable than a flat assigned-task list.
Get the action-required tasks for each member of team_eng and post a summary to a chat channel.
AI Project Manager Agent via Jentic
An AI project manager agent can triage a backlog by reading tasks, updating status, and assigning owners through Jentic. The agent finds the GoodDay operations by intent, loads the task schema, and executes with the gd-api-token held in the vault - no manual REST plumbing.
Read the open tasks in project proj_42, assign any unassigned task to the project lead, and move stale tasks back to 'Backlog'.
36 endpoints — the goodday api provides 36 endpoints across users, projects, tasks, events, time reports, and documents for the goodday project management platform.
METHOD
PATH
DESCRIPTION
/users
Query organisation users
/user/{userId}/action-required-tasks
Tasks awaiting a user
/user/{userId}/time-reports
Time reports for a user
/projects/new-project
Create a project
/projects/new-folder
Create a project folder
/project/{projectId}/tasks
List tasks in a project
/project/{projectId}
Update a project
/users
Query organisation users
/user/{userId}/action-required-tasks
Tasks awaiting a user
/user/{userId}/time-reports
Time reports for a user
/projects/new-project
Create a project
/projects/new-folder
Create a project folder
What agents get from Jentic-routed access to this vendor.
Setup
Wiring GoodDay by hand means passing the gd-api-token header against api.goodday.work, scoping calls to one organisation, and mapping the project, task, and time-report endpoints yourself. Through Jentic you install once, import GoodDay from the API Directory, store the token once, and your agent calls it.
Permission scoping
GoodDay puts the project id and user id in the URL path (/project/{projectId}/tasks and /user/{userId}/...), so a rule can pin your agent to one project: it can list and read that project's tasks and nothing else. You choose the operations it may call, so ones like creating a project or updating project settings are not included unless you add them.
Credential isolation
Your GoodDay token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'list a user's assigned tasks' or 'create a goodday task', and Jentic returns the matching GoodDay operation with its input schema so the agent calls the right endpoint without browsing the reference.
Alternatives and complements available in the Jentic catalogue.
Specific to using GoodDay API through Jentic.
What authentication does the GoodDay API use?
GoodDay uses an apiKey scheme on the gd-api-token header. Through Jentic the token is stored encrypted in the vault and scoped to a single GoodDay organisation, so the raw token never enters the agent's context.
Can I create a project with the GoodDay API?
Yes. POST /projects/new-project creates a project, and POST /projects/new-folder creates a parent folder for it. After creation, POST /project/{projectId}/tasks adds tasks against the new project.
What are the rate limits for the GoodDay API?
GoodDay applies per-organisation rate limits documented at goodday.work/help. The OpenAPI spec does not encode exact numbers, so check GoodDay's API docs before running large historical pulls - list endpoints such as /users and /projects support pagination.
How do I pull a user's open tasks through Jentic?
Search Jentic for 'goodday tasks assigned to a user', load the schema for GET /user/{userId}/assigned-tasks (or /action-required-tasks for the narrower view), and execute with the user ID. Jentic injects the gd-api-token at execution and returns the task list.
Does the API expose hourly rate history?
Yes. GET /user/{userId}/hourly-rate-history returns each rate change with its effective date, which is essential for accurate retrospective billing and profitability reports across long engagements.
Can the API send chat messages on behalf of a user?
No. The GoodDay API focuses on projects, tasks, time, events, and documents. For chat-style notifications, pair with Slack or another messaging API and trigger from a webhook or scheduled GoodDay query.
Can I limit what my agent is allowed to do with the GoodDay API?
Yes. Because GoodDay puts the project id and user id in the URL path, such as /project/{projectId}/tasks and /user/{userId}/time-reports, your self-hosted Jentic One instance lets you write a rule that pins the agent to a single project so it can only list and read that project's tasks. You decide which operations the agent may call, so write actions like POST /projects/new-project or PUT /project/{projectId} are excluded unless you explicitly add them. Your GoodDay token stays with your own instance and is injected at execution, never entering the agent's context.
/project/{projectId}/tasks
List tasks in a project
/project/{projectId}
Update a project