Integration
Connect GitLab and Timesheet
When New Code Snippet Comment fires in GitLab, your agent runs Create Task in Timesheet, or New Absence in Timesheet to Add Note to Issue in GitLab. Describe the whole flow and it is built, tested on every scenario and kept running.
What the catalog holds today. Ask for anything missing and your agent reads the API documentation and adds it.
Build solutions, not workarounds.
What do you want GitLab and Timesheet to do together?
Ask the assistant
Connect your AI client
Give your AI client this address.
https://mcp.apiant.aiOne connection does both: ask your client to act in an app once, or have it build an automation that keeps running. Any client that takes a remote MCP server. Nothing to install. Create your free account, then sign in once in your browser.
Set it up in your client
Claude Code
Run this in the directory you want to work in.
claude mcp add --transport http -s project apiant-ai https://mcp.apiant.aiStart Claude Code there, approve the server, and sign in in the browser page it opens.
Claude Code guide (opens in a new tab)Claude, web and desktop
Open Customize, then Connectors, then Add custom connector, and paste the address. On Team and Enterprise an owner adds it first.
Setup guide (opens in a new tab)Cursor
Add the address to your MCP configuration as a server URL. Cursor signs you in in your browser.
Setup guide (opens in a new tab)Zed
Open Settings, then AI, then MCP Servers, then Add Server, then Add Remote Server.
Setup guide (opens in a new tab)Codex and the ChatGPT desktop app
Open Settings, then MCP servers, then Add server, and choose Streamable HTTP. From the terminal, Codex takes the address with its own add command and then signs you in.
Setup guide (opens in a new tab)Any other MCP client
Paste the address where the client asks for a remote MCP server URL, and name the server apiant-ai where it lets you. APIANT's skills reach the client over the same connection.
Setup guide (opens in a new tab)Example flows
What GitLab and Timesheet can do together
From GitLab to Timesheet
When New Code Snippet Comment in GitLab
then Create Task in Timesheet
When New Commit in GitLab
then Create Note in Timesheet
From Timesheet to GitLab
When New Absence in Timesheet
then Add Note to Issue in GitLab
When New Project in Timesheet
then Create Issue in GitLab
Starting points drawn from the triggers and actions in the catalog today. Describe the flow you need, at any depth, and your agent builds it and tests every scenario before it ships.
Everything your agent can do with GitLab and Timesheet
Triggers and actions 28 triggers · 115 actions
Trigger
Deployment Event (instant)Fires on a deployment status change (deployment_events).
Trigger
New Code Snippet CommentTriggers when a new comment is made on a code snippet in the selected project
Trigger
New CommitTriggers when a new commit is pushed to a GitLab project's repository.
Trigger
New Commit CommentTriggers when a new comment is made on a commit in the selected project
Trigger
New Group Issue EventTriggers on group issue events, e.g. when an issue is opened, updated, or closed.
Trigger
New Group Merge Request EventTriggers on an open, merge, close, or update merge request event.
Trigger
New IssueTriggers when a new issue is created in a GitLab project.
Trigger
New Issue CommentTriggers when a new comment is made on an issue in the selected project
Trigger
New Job EventTriggers for a specified job event in a project.
Trigger
New Merge RequestTriggers when a new merge request is opened in a GitLab project.
Trigger
New Merge Request CommentTriggers when a new comment is made on a merge request in the selected project
Trigger
New PipelineTriggers when a new CI/CD pipeline is created in a GitLab project.
Trigger
New ProjectTriggers when a new GitLab project is created that the connected user can see.
Trigger
New Project Issue EventTriggers on project issue events, e.g. when an issue is opened, updated, or closed.
Trigger
New Project Merge Request EventTriggers on an open, merge, close, or update merge request event.
Trigger
New ReleaseTriggers when a new release is created in a GitLab project.
Trigger
New Release (instant)Fires when a release is created or updated (releases_events).
Trigger
New TagTriggers when a new tag is added to a GitLab project's repository.
Trigger
New Tag (instant)Fires when a tag is pushed (tag_push_events).
Trigger
Pipeline Event (instant)Fires on a pipeline status change (pipeline_events).
Trigger
Wiki Page Event (instant)Fires when a wiki page is created or updated (wiki_page_events).
Action
Accept Merge RequestMerges an open merge request into its target branch, optionally squashing commits, deleting the source branch, or setting it to merge automatically once checks pass.
Action
Add Comment to CommitAdds a comment to a commit in a GitLab project, optionally on a specific line of a file.
Action
Add Note to IssueAdds a comment to an issue in a GitLab project.
Action
Add Note to Merge RequestAdds a comment to a merge request in a GitLab project.
Action
Add Note to SnippetAdds a comment to a project snippet in GitLab and returns the created comment.
Action
Approve Merge RequestApproves a merge request as the connected GitLab user and returns the merge request's updated approval state.
Action
Cancel PipelineCancels all running and pending jobs in a GitLab pipeline and returns the pipeline with its updated status.
Action
Create BranchCreates a new branch in a GitLab project's repository from an existing branch or commit.
Action
Create CommitCreates a commit on a branch of a GitLab project, applying a batch of file changes (create, update, delete, move, chmod).
Action
Create FileCreates a new file in a GitLab project's repository by committing it to a branch.
Action
Create IssueCreates a new issue in a GitLab project, with optional description, labels, assignees, milestone and due date.
Action
Create LabelCreates a label in a GitLab project with the name and color you choose.
Action
Create Merge RequestCreates a new merge request in a GitLab project from a source branch to a target branch.
Action
Create MilestoneCreates a milestone in a GitLab project, with an optional description, start date and due date.
Action
Create PipelineStarts a new CI/CD pipeline on a branch or tag of a GitLab project, optionally with pipeline variables and inputs.
Action
Create ProjectCreates a new GitLab project in your personal namespace or in a group you choose.
Action
Create ReleaseCreates a release in a GitLab project from an existing tag, or from a branch or commit that is tagged as part of the release.
Action
Create SnippetCreates a personal snippet with a title and one file of content in your GitLab account.
Action
Create TagCreates a new Git tag in a GitLab project pointing at a branch, commit or existing tag. Add a message to make it an annotated tag.
Action
Create Wiki PageCreates a new wiki page in a GitLab project with the given title and content.
Action
Delete BranchDeletes a branch from a GitLab project's repository. The default branch and protected branches cannot be deleted.
Action
Delete FileDeletes a file from a GitLab project's repository by committing its removal to a branch.
Action
Delete IssueDeletes an issue from a GitLab project. Only administrators and project owners can delete issues.
Action
Delete TagDeletes a tag from a GitLab project's repository.
Action
Find Group Merge RequestsReturns merge requests across a GitLab group and its subgroups, filtered by state, author, assignee, reviewer, labels, milestone, branch, dates or search text.
Action
Find Project Merge RequestsFinds merge requests in a GitLab project, filtered by text search, state, author, assignee, reviewer, labels, branches, dates and more.
Action
Find ProjectsFinds GitLab projects whose name, path or description matches your search text, optionally narrowed by membership, ownership, visibility, topic and activity dates.
Action
Find UserFinds GitLab users by username, public email, or a name/username/email search, with optional filters on account state and type.
Action
Get BranchReturns a repository branch in a GitLab project, including its protection status, merge status and latest commit.
Action
Get CommitReturns a single commit from a project's repository, identified by its SHA or by a branch or tag name, including stats and the latest pipeline.
Action
Get FileReturns a file from a GitLab repository, including its name, size, commit details and Base64-encoded content.
Action
Get GroupReturns the details of a GitLab group, such as its name, path, visibility and parent group.
Action
Get IssueReturns a single issue in a GitLab project, including its title, description, state, labels, assignees and milestone.
Action
Get JobReturns a single CI/CD job in a GitLab project, including its status, stage, pipeline, commit and runner details.
Action
Get Merge RequestReturns a single merge request in a GitLab project, including its state, branches, author, reviewers and pipeline.
Action
Get Merge Request ApprovalsReturns the approval state of a merge request: whether it is approved, who approved it, and how many approvals are still required.
Action
Get PipelineReturns a single CI/CD pipeline in a project, including its status, ref, commit, timing and who triggered it.
Action
Get ProjectReturns a single GitLab project by its ID or full path, including its settings, visibility and links.
Action
Get ReleaseReturns a project's release for the given Git tag, including its description, commit, milestones and assets.
Action
Get SnippetReturns a personal snippet by its ID, including its title, file name, visibility, author and links.
Action
Get Snippet NoteReturns a single comment (note) posted on a project snippet.
Action
Get Wiki PageReturns a wiki page from a GitLab project, including its title, content and format.
Action
List BranchesReturns the branches in a GitLab project's repository, sorted by name, optionally filtered by a search term or regular expression.
Action
List Commit CommentsReturns the comments left on a commit in a GitLab project.
Action
List CommitsReturns the commits in a GitLab project's repository, optionally filtered by branch, author, file path or date range.
Action
List GroupsReturns the GitLab groups visible to the connected user, optionally filtered by name, visibility, ownership or access level.
Action
List LabelsReturns the labels defined for a GitLab project, optionally filtered by keyword and including issue and merge request counts.
Action
List MilestonesReturns the milestones of a GitLab project, optionally filtered by state, title, search text or dates.
Action
List PipelinesReturns the pipelines in a GitLab project, optionally filtered by branch, status, commit, date range or user.
Action
List Project JobsReturns the CI/CD jobs in a project, newest first, optionally filtered to one job status such as success or failed.
Action
List Project MembersReturns the direct members of a GitLab project, optionally filtered by name, email or username.
Action
List ReleasesReturns the releases of a GitLab project, newest first by release date.
Action
List TagsReturns the Git tags in a GitLab project's repository, optionally filtered by name and sorted.
Action
Retry JobRetries a single CI/CD job in a GitLab project and returns the new job that was queued.
Action
Retry PipelineRetries the failed or canceled jobs in a GitLab pipeline and returns the updated pipeline.
Action
Update FileUpdates the content of an existing file in a GitLab repository by committing the change to a branch.
Action
Update IssueUpdates an existing issue in a GitLab project, including closing or reopening it, changing its title, description, labels, assignees, milestone or dates.
Action
Update Merge RequestUpdates an existing merge request in a GitLab project — title, description, assignees, reviewers, labels, milestone, target branch or state.
Action
Update MilestoneUpdates a project milestone's title, description, dates, or open/closed state.
Action
Update ProjectUpdates an existing GitLab project's name, description, visibility, default branch, topics, merge settings and feature visibility. Returns the updated project.
Action
Update ReleaseUpdates an existing release's name, description, milestones or release date in a GitLab project.
Action
Update Wiki PageUpdates the title, content or format of an existing wiki page in a GitLab project.
Trigger
New AbsenceTriggered when a new absence is requested or recorded in the chosen Timesheet organization.
Trigger
New ProjectTriggered when a new project is created in Timesheet.
Trigger
New RateTriggered when a new pay rate is created in Timesheet.
Trigger
New TagTriggered when a new tag is created in Timesheet.
Trigger
New TaskTriggered when a new tracked time entry is recorded in Timesheet.
Trigger
New TeamTriggered when a new team is created in Timesheet.
Trigger
New TodoTriggered when a new to-do is created in Timesheet.
Action
Approve AbsenceApproves a pending absence request in a Timesheet organization. Returns the updated absence, including its new status and who approved it.
Action
Create ExpenseCreates an expense on a Timesheet task, with an amount, date and optional receipt. Returns the new expense with its ID.
Action
Create NoteCreates a note on a Timesheet task, with text and an optional attachment. Returns the new note with its ID.
Action
Create OrganizationCreates a new organization (team workspace) in Timesheet. Returns the new organization with its ID.
Action
Create ProjectCreates a new project in Timesheet, optionally with a client, default billing rate and team. Returns the new project with its ID.
Action
Create RateCreates a pay rate in Timesheet, such as an overtime multiplier or a bonus amount. Returns the new rate with its ID.
Action
Create ReminderCreates a reminder in Timesheet on a one-off or recurring schedule. Returns the new reminder with its ID and next fire time.
Action
Create TagCreates a tag in Timesheet that can be applied to time entries. Returns the new tag with its ID.
Action
Create TaskCreates a time entry (task) on a Timesheet project, with start and end times and optional tags, rate and mileage. Returns the new entry with its ID and duration.
Action
Create TeamCreates a team inside a Timesheet organization. Returns the new team with its ID.
Action
Create TodoCreates a to-do on a Timesheet project, with an optional due date, assignees and time estimate. Returns the new to-do with its ID.
Action
Delete ExpenseDeletes an expense from Timesheet. Returns confirmation that the expense was removed.
Action
Delete NoteDeletes a note from Timesheet. Returns confirmation that the note was removed.
Action
Delete OrganizationDeletes an organization from Timesheet. Returns confirmation that the organization was removed.
Action
Delete ProjectDeletes a project from Timesheet. Returns confirmation that the project was removed.
Action
Delete RateDeletes a pay rate from Timesheet. Returns confirmation that the rate was removed.
Action
Delete ReminderDeletes a reminder from Timesheet. Returns confirmation that the reminder was removed.
Action
Delete TagDeletes a tag from Timesheet. Returns confirmation that the tag was removed.
Action
Delete TaskDeletes a time entry from Timesheet. Returns confirmation that the entry was removed.
Action
Delete TeamDeletes a team from Timesheet. Returns confirmation that the team was removed.
Action
Delete TodoDeletes a to-do from Timesheet. Returns confirmation that the to-do was removed.
Action
Find AbsenceSearches absences in a Timesheet organization by member, contract, type, status or date range, and returns the first match plus the full list of matches.
Action
Find ExpenseSearches Timesheet expenses by text, time entry, organization or date range, and returns the first match plus the full list of matches.
Action
Find NoteSearches Timesheet notes by text, time entry, organization or date range, and returns the first match plus the full list of matches.
Action
Find OrganizationLooks up a Timesheet organization by name and returns its ID and details. Timesheet has no organization search endpoint, so this reads your organizations and matches the name, ignoring upper/lower case.
Action
Find ProjectSearches Timesheet projects by name, team or status, and returns the first match plus the full list of matches.
Action
Find RateSearches Timesheet pay rates by name, team, project or status, and returns the first match plus the full list of matches.
Action
Find ReminderLooks up a Timesheet reminder by name and returns its ID and schedule. Timesheet has no reminder search endpoint, so this reads your reminders and matches the name, ignoring upper/lower case.
Action
Find TagSearches Timesheet tags by name, team, project or status, and returns the first match plus the full list of matches.
Action
Find TaskSearches Timesheet time entries by text, project, to-do, team or date range, and returns the first match plus the full list of matches.
Action
Find TeamSearches Timesheet teams by name or organization, and returns the first match plus the full list of matches.
Action
Find TodoSearches Timesheet to-dos by title, project, status or assignee, and returns the first match plus the full list of matches.
Action
Get Current TimerReturns the state of your current Timesheet timer — whether it is running, paused or stopped, and the time entry it is tracking.
Action
Get ProjectReturns one Timesheet project by ID, including its client, settings and tracked totals.
Action
Get RateReturns one Timesheet pay rate by ID, including its multiplier and extra amount.
Action
Get TagReturns a single tag by its ID, including its name, colour, archived state, owning team and total tracked time.
Action
Get TaskReturns a single tracked time entry by its ID, including its description, start and end times, duration, billing flags, project, rate, member and tags.
Action
Get TeamReturns a single team by its ID, including its name, description, colour, owning organization, and project and member counts.
Action
Pause TimerPauses the running timer, starting a break. Returns the timer with its new paused state.
Action
Resume TimerResumes a paused timer, ending the current break. Returns the timer with its new running state.
Action
Send ReportGenerates a timesheet report for the chosen period and emails it to the given address.
Action
Start TimerStarts the timer on a project, creating a running time entry. Returns the timer and the entry it is tracking.
Action
Stop TimerStops the running timer and closes out the time entry it was tracking.
Action
Update ExpenseUpdates an existing expense's description, date, amount, refund status or attached receipt. Fields left blank keep their current values.
Action
Update NoteUpdates an existing note's text, date or attachment. Fields left blank keep their current values.
Action
Update OrganizationUpdates an organization's name, description, image, colour or AI chat setting. Fields left blank keep their current values.
Action
Update ProjectUpdates an existing project's name, client, office, colour, billing defaults, salary or archived state. Fields left blank keep their current values.
Action
Update RateUpdates an existing pay rate's name, multiplier, extra amount, enabled or archived state. Fields left blank keep their current values.
Action
Update ReminderUpdates an existing reminder's title, prompt, message template or schedule. Fields left blank keep their current values.
Action
Update TagUpdates an existing tag's name, colour or archived state. Fields left blank keep their current values.
Action
Update TaskUpdates an existing tracked time entry's project, description, times, billing flags, rate or tags. Fields left blank keep their current values.
Action
Update TeamUpdates an existing team's name, description, image, colour or salary visibility. Fields left blank keep their current values.
Action
Update TodoUpdates an existing to-do's title, details, status, due date, assignees or time estimate. Fields left blank keep their current values.
No trigger or action matches that. Ask your agent to add it: it reads the API documentation and builds what you describe.
Each app on its own
Reviews
What our customers say
More from GitLab
GitLab to HubSpotHubSpot is your all-in-one stop for all of your marketing software needs.
GitLab to SalesforceSalesforce is a leading enterprise customer relationship management (CRM) platform.
GitLab to SlackSlack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...
GitLab to Google SheetsGoogle Sheets
GitLab to GmailGmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...
GitLab to Google CalendarGoogle Calendar is a time management tool providing scheduling features, event reminders, and integration...
More into Timesheet
Teamleader Focus to TimesheetTeamleader Focus incorporates CRM, project management and invoicing into one simple and intelligent tool...
HubSpot to TimesheetHubSpot is your all-in-one stop for all of your marketing software needs.
Salesforce to TimesheetSalesforce is a leading enterprise customer relationship management (CRM) platform.
Slack to TimesheetSlack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...
Gmail to TimesheetGmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...
Google Calendar to TimesheetGoogle Calendar is a time management tool providing scheduling features, event reminders, and integration...
Questions
GitLab and Timesheet, answered
What can start an automation from GitLab?
Any of GitLab's 21 triggers in the catalog, including New Code Snippet Comment, New Commit, New Commit Comment and New Group Issue Event. Describe the moment in plain language and your agent picks the right one.
What can your agent do in Timesheet when something happens in GitLab?
Any of Timesheet's 53 actions, including Create Expense, Create Note, Create Organization and Create Project. Your agent maps the data both ways and tests every scenario before it ships.
Can it also run from Timesheet to GitLab?
Yes. When something happens in Timesheet, your agent can act in GitLab too. This page covers both directions: Timesheet's triggers and GitLab's actions are listed here as well.
Do I have to build a connector for GitLab or Timesheet?
No. Both are in the catalog with their triggers and actions. You describe the automation; your agent builds it, tests every scenario and keeps it running.
Can my AI client use GitLab and Timesheet without building an automation?
Yes. With your AI client connected to APIANT, ask it to do something in either app once and it runs that action on the spot. Ask for an automation and your agent builds it, tests every scenario and keeps it running. One connection covers both.
What happens when something fails?
Your agent works that out for you. It plans the failure paths along with the happy path, then tests every scenario before it ships.
Is there a free plan?
Yes. Every plan includes the agent, including free, and building from your own AI client spends no assistant credits.