Hubstaff
Hubstaff is a time tracking and workforce analytics platform for remote, hybrid, and field teams. The Hubstaff API v2 provides read and write access to tracked time (10-minute activity blocks and daily aggregates), time entries, timesheets and approvals, time off, attendance schedules and shifts, organizations, members, teams, projects, tasks, clients, invoices, team payments, screenshots, app and URL usage, and webhooks - authenticated with OAuth 2.0 / OpenID Connect or personal access tokens.
APIs
Hubstaff Activities and Time Tracking API
Tracked time as 10-minute activity blocks with keyboard and mouse activity percentages, pre-aggregated daily activities, and the most recent activity per member - filterable by ...
Hubstaff Timesheets and Time Entries API
Create time entries for users, list organization timesheets (aggregate approval records), move timesheets through the open, submitted, approved, and denied statuses, and audit m...
Hubstaff Organizations and Teams API
Manage organizations, seats, members and their pay and bill rates, teams and team membership, and invites - the workforce structure that all tracked time hangs off of.
Hubstaff Projects and Tasks API
Create and manage projects (including budgets and project members) and tasks (to-dos) at the project and organization level. Tasks synced from third-party integrations are read-...
Hubstaff Users API
Retrieve the authenticated user (/users/me) and individual user profiles by ID.
Hubstaff Time Off and Attendance API
Time off requests with approval workflow and balance previews, time off policies and balances, attendance schedules (expected shifts, including repeating schedules), actual cloc...
Hubstaff Clients, Invoices, and Payments API
Manage the clients projects are billed to, list client invoices, and list team payments (payroll) generated from tracked time.
Hubstaff Screenshots and App Tracking API
Retrieve screenshots captured while tracking time, application and URL usage (raw and daily aggregates), and read or update the organization's app and URL tracking settings.
Hubstaff Webhooks API
Subscribe to real-time HTTP event notifications at the organization, project, or user level - timer.start, timer.stop, project.create, task.create, task.assign, schedule and shi...
Collections
Hubstaff API
OPENPricing Plans
Rate Limits
FinOps
Hubstaff Finops
FINOPSResources
Sources
opencollection: 1.0.0
info:
name: Hubstaff API
version: '2.0'
request:
auth:
type: bearer
token: '{{accessToken}}'
items:
- info:
name: Organizations
type: folder
items:
- info:
name: List organizations
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations
docs: Returns a collection of organizations the authenticated user is an active member of.
- info:
name: Create organization
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/organizations
body:
type: json
data: '{}'
docs: 'Creates a new organization.
Returns the created organization.'
- info:
name: Get organization
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id
params:
- name: organization_id
value: ''
type: path
description: Organization ID
docs: Returns the organization with the given ID.
- info:
name: Get organization seats
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/seats
params:
- name: organization_id
value: ''
type: path
description: ''
docs: "Returns billing seat counters for the specified organization.\n\n- Paid seats are the total number of seats you\
\ are currently paying for.\n- Occupied is the total number of seats that are currently filled.\n- Open seats will be\
\ filled automatically when new members are added.\n Any open seats will be removed automatically when a new billing\
\ cycle starts,\n bringing down the number of paid seats to match the number of seats occupied."
- info:
name: Members
type: folder
items:
- info:
name: List organization members
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/members
params:
- name: organization_id
value: ''
type: path
description: ''
docs: "Returns a collection of members for the given organization.\n\nResults can be filtered by search, user IDs, membership\
\ role, and date range.\n\n*trackable* - Whether the user can track time. This is one of 3 values\n- *false* -- meaning\
\ tracking has been explicitly disabled for this user regardless of their role\n- *true* -- meaning they are allowed\
\ to track time\n- *viewer* -- meaning they are allowed to track time, however as they are only a project viewer (or\
\ no\n memberships) they implicitly can n"
- info:
name: Create organization member
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/organizations/:organization_id/members
params:
- name: organization_id
value: ''
type: path
description: ''
body:
type: json
data: '{}'
docs: 'Creates a new user and adds them to the organization as a member.
Returns the created member.
Available roles:
- organization_manager - Organization manager
- project_manager - Project manager
- project_user - Project user
- project_viewer - Project viewer
Available pay periods:
- none - Disables automatic payments
- weekly - Pay users weekly
- twice_per_month - Pay users twice a month
- biweekly - Pay users bi-weekly
- monthly - Pay users monthly'
- info:
name: Update organization members
type: http
http:
method: PUT
url: https://api.hubstaff.com/v2/organizations/:organization_id/update_members
params:
- name: organization_id
value: ''
type: path
description: Organization ID
body:
type: json
data: '{}'
docs: 'Updates organization members.
Returns {success: true} on success.
Only pass in the members you want to change.
Available roles:
- user - Member role determined by project membership
- manager - Organization manager
- owner - Organization owner
- remove - Removes user from organization (and all projects/teams)
Limits: Specify full limits config. Missing limits will be removed. Empty "limits" removes all limits.
Projects: Specify project memberships to change. Available project roles: viewer,'
- info:
name: List team members
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/teams/:team_id/members
params:
- name: team_id
value: ''
type: path
description: Team ID
docs: 'Returns a collection of members for the given team.
Membership roles:
- manager - Can track time, view all data, change settings, and manage membership
- user - Can track time and view only their own data
- viewer - Can view reports but cannot make changes'
- info:
name: List project members
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/projects/:project_id/members
params:
- name: project_id
value: ''
type: path
description: ''
docs: 'Returns a collection of members for the given project.
Results can be filtered by search, user IDs, membership role, and date range.
*membership_role* - The permission role the member has in this project
- *manager* - An manager can track time, see data for any member within the project, can change settings, and manage
membership within the project
- *user* - A user can track time against the project and see only their own data within the project
- *viewer* - A viewer can access reports based '
- info:
name: Invites
type: folder
items:
- info:
name: List organization invites
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/invites
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns a collection of invites for the given organization.
Results can be filtered by email and status.'
- info:
name: Create invite
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/organizations/:organization_id/invites
params:
- name: organization_id
value: ''
type: path
description: ''
body:
type: json
data: '{}'
docs: 'Creates a new invite.
Returns the created invite.
Note: If there is an account for the email in Hubstaff, the invite will be auto accepted.
Note: There is a rate limit on how many invites you may create.
Available roles:
- organization_manager - Invited as an organization manager
- project_manager - Invited as a project manager
- project_user - Invited as a project user
- project_viewer - Invited as a project viewer
If no project_ids are set, any project_* role will default to project_viewer'
- info:
name: Teams
type: folder
items:
- info:
name: List organization teams
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/teams
params:
- name: organization_id
value: ''
type: path
description: ''
docs: Returns a collection of teams for the given organization.
- info:
name: Create team
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/organizations/:organization_id/teams
params:
- name: organization_id
value: ''
type: path
description: ''
body:
type: json
data: '{}'
docs: 'Creates a new team.
Returns the created team.
Only name is required. Members can optionally be added with roles: viewer, user, or manager.
Note: When a member lead is set to true, the role is forced to manager.'
- info:
name: Get team
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/teams/:team_id
params:
- name: team_id
value: ''
type: path
description: Team ID
docs: Returns the team with the given ID.
- info:
name: Users
type: folder
items:
- info:
name: Get current user
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/users/me
docs: Returns the authenticated user.
- info:
name: Get user
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/users/:user_id
params:
- name: user_id
value: ''
type: path
description: User ID
docs: Returns the user with the given ID.
- info:
name: Activities
type: folder
items:
- info:
name: List organization activities
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/activities
params:
- name: organization_id
value: ''
type: path
description: ''
- name: time_slot[start]
value: ''
type: query
description: Start time (ISO 8601)
- name: time_slot[stop]
value: ''
type: query
description: Stop time (ISO 8601, Exclusive)
docs: 'Returns a collection of activities (10-minute time blocks) for the given organization.
Results can be filtered by user, task, project, and time range (time_slot[start], time_slot[stop]).
For aggregated daily data, use the daily_activities endpoint instead.
Note: Data may be delayed up to 20 minutes.
Note: Date range limit is 7 days. Earliest date is 6 months ago.'
- info:
name: List organization daily activities
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/activities/daily
params:
- name: organization_id
value: ''
type: path
description: ''
- name: date[start]
value: ''
type: query
description: Start date (ISO 8601)
- name: date[stop]
value: ''
type: query
description: Stop date (ISO 8601, Inclusive)
docs: 'Returns daily aggregated time tracking data for the given organization.
Results can be filtered by user_ids[], task_ids[], project_ids[], and date[start]/[stop]. Data is aggregated by organization
timezone date.
Note: Date range limit is 31 days. Earliest date is 3 years ago.'
- info:
name: List organization last activities
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/last_activities
params:
- name: organization_id
value: ''
type: path
description: ''
docs: Returns the most recent activity for each member in the organization.
- info:
name: List project activities
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/projects/:project_id/activities
params:
- name: project_id
value: ''
type: path
description: ''
- name: time_slot[start]
value: ''
type: query
description: Start time (ISO 8601)
- name: time_slot[stop]
value: ''
type: query
description: Stop time (ISO 8601, Exclusive)
docs: 'Returns a collection of activities (10-minute time blocks) for the given project.
Results can be filtered by user, task, project, and time range (time_slot[start], time_slot[stop]).
For aggregated daily data, use the daily_activities endpoint instead.
Note: Data may be delayed up to 20 minutes.
Note: Date range limit is 7 days. Earliest date is 6 months ago.'
- info:
name: List project daily activities
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/projects/:project_id/activities/daily
params:
- name: project_id
value: ''
type: path
description: ''
- name: date[start]
value: ''
type: query
description: Start date (ISO 8601)
- name: date[stop]
value: ''
type: query
description: Stop date (ISO 8601, Inclusive)
docs: 'Returns daily aggregated time tracking data for the given project.
Results can be filtered by user_ids[], task_ids[], project_ids[], and date[start]/[stop]. Data is aggregated by organization
timezone date.
Note: Date range limit is 31 days. Earliest date is 3 years ago.'
- info:
name: Time Entries
type: folder
items:
- info:
name: Create time entry
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/users/:user_id/time_entries
params:
- name: user_id
value: ''
type: path
description: ''
body:
type: json
data: '{}'
docs: 'Creates a new time entry.
Returns {success: true} on success.
Note: Manual time entries that require approval cannot be added through the API.'
- info:
name: Timesheets
type: folder
items:
- info:
name: List organization timesheets
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/timesheets
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns a collection of timesheets (aggregate approval records) for the given organization.
Results can be filtered by date[start]/[stop], approved[start], and status.
Note: Timesheets are aggregate records used by the timesheet approval system, not individual time entries.'
- info:
name: Update timesheet status
type: http
http:
method: PUT
url: https://api.hubstaff.com/v2/timesheets/:timesheet_id
params:
- name: timesheet_id
value: ''
type: path
description: Timesheet ID
body:
type: json
data: '{}'
docs: 'Updates a timesheet status or updates the denial reason on an already denied timesheet.
Allowed statuses are open, submitted, approved, and denied. A denial_reason is required when transitioning a timesheet
to denied.
Approving a timesheet can require explicit confirmation when the period has pending manual time requests or pending
time off requests.
If pending manual time requests would be denied, the endpoint returns 422 with error_code 14905; repeat the request
with confirm_pending_manual_t'
- info:
name: Time Edit Logs
type: folder
items:
- info:
name: List organization time edit logs
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/time_edit_logs
params:
- name: organization_id
value: ''
type: path
description: ''
- name: created[start]
value: ''
type: query
description: Start time (ISO 8601)
- name: created[stop]
value: ''
type: query
description: Stop time (ISO 8601, exclusive)
docs: 'Returns a collection of time edit logs (manual time additions/edits/deletions) for the given organization.
Results can be filtered by created[start]/[stop], user_ids[], task_ids[], and project_ids[].
Note: Date range limit is 31 days. Earliest date is 3 years ago.'
- info:
name: Projects
type: folder
items:
- info:
name: List organization projects
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/projects
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns a collection of projects for the given organization.
Results can be filtered by status (active/archived/all) and project_ids[].'
- info:
name: Create project
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/organizations/:organization_id/projects
params:
- name: organization_id
value: ''
type: path
description: ''
body:
type: json
data: '{}'
docs: 'Creates a new project.
Returns the created project.
Only name is required. Members can optionally be added with roles: viewer, user, or manager.'
- info:
name: Get project
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/projects/:project_id
params:
- name: project_id
value: ''
type: path
description: Project ID
docs: Returns the project with the given ID.
- info:
name: Update project
type: http
http:
method: PUT
url: https://api.hubstaff.com/v2/projects/:project_id
params:
- name: project_id
value: ''
type: path
description: Project ID
body:
type: json
data: '{}'
docs: 'Updates a project.
Returns the updated project.
Only pass in the fields you want to change. To unset the budget, specify null. To update the budget, you must specify
the complete budget configuration.
When restoring an archived project, you can only change the status column.
Rate handling for pay_rate and bill_rate:
- To remove a rate, pass null (e.g., pay_rate: null)
- Custom user rates take precedence over default project rates
- To apply default project rate to a user, remove their custom'
- info:
name: Tasks
type: folder
items:
- info:
name: List organization tasks
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/tasks
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns a collection of tasks (to-dos) for the given organization.
Results can be filtered by status[] (active/completed/deleted), user_ids[], project_ids[], and global_todo_ids[].'
- info:
name: List project tasks
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/projects/:project_id/tasks
params:
- name: project_id
value: ''
type: path
description: ''
docs: 'Returns a collection of tasks (to-dos) for the given project.
Results can be filtered by status[] (active/completed/deleted), user_ids[], project_ids[], and global_todo_ids[].'
- info:
name: Create task
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/projects/:project_id/tasks
params:
- name: project_id
value: ''
type: path
description: ''
body:
type: json
data: '{}'
docs: 'Creates a new task for this project.
Returns the created task.
Note: If this project is integrated with a 3rd party tool, you must create the task in that tool instead.'
- info:
name: Get task
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/tasks/:task_id
params:
- name: task_id
value: ''
type: path
description: Task ID
docs: Returns the task with the given ID.
- info:
name: Update task
type: http
http:
method: PUT
url: https://api.hubstaff.com/v2/tasks/:task_id
params:
- name: task_id
value: ''
type: path
description: Task ID
body:
type: json
data: '{}'
docs: 'Updates a task.
Returns the updated task.
Only pass in the fields you want to change. Requires passing lock_version from the task fetch.
Note: Only simple todos can be updated. 3rd party tasks must be updated in their system.'
- info:
name: Delete task
type: http
http:
method: DELETE
url: https://api.hubstaff.com/v2/tasks/:task_id
params:
- name: task_id
value: ''
type: path
description: Task ID
docs: 'Deletes a task.
Note: Only simple todos can be deleted. 3rd party tasks must be deleted in their system.'
- info:
name: Clients
type: folder
items:
- info:
name: List organization clients
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/clients
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns a collection of clients for the given organization.
Results can be filtered by status.'
- info:
name: Create client
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/organizations/:organization_id/clients
params:
- name: organization_id
value: ''
type: path
description: ''
body:
type: json
data: '{}'
docs: 'Creates a new client.
Returns the created client.'
- info:
name: Get client
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/clients/:client_id
params:
- name: client_id
value: ''
type: path
description: Client ID
docs: Returns the client with the given ID.
- info:
name: Update client
type: http
http:
method: PUT
url: https://api.hubstaff.com/v2/clients/:client_id
params:
- name: client_id
value: ''
type: path
description: Client ID
body:
type: json
data: '{}'
docs: 'Updates a client.
Returns the updated client.
Only pass in the fields you want to change. To unset the budget, specify null as the value. To update the budget, you
must specify the complete budget configuration. To clear invoice_notes or net_terms (to use organization defaults),
specify null as the value.'
- info:
name: Client Invoices
type: folder
items:
- info:
name: List organization client invoices
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/client_invoices
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns invoices sent to clients for the given organization.
Results can be filtered by client_ids[], issue_date[start]/[stop], and status. Use include_line_items=true to include
invoice line items.'
- info:
name: Team Payments
type: folder
items:
- info:
name: List organization team payments
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/team_payments
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns a collection of team payments (payroll disbursements) for the given organization.
Results can be filtered by created[start]/[stop], user_ids[], and project_ids[].
Note: If date filters are not provided, defaults to the last 3 years. Earliest date is 3 years ago.'
- info:
name: Time Off
type: folder
items:
- info:
name: List organization time off requests
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/time_off_requests
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns a collection of time off requests for the given organization.
Results can be filtered by created[start]/[stop], starts_at[start]/[stop], approved_at[start]/[stop], and user_ids[].
Use include[] to sideload related users and time_off_policies.'
- info:
name: Create time off request
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/organizations/:organization_id/time_off_requests
params:
- name: organization_id
value: ''
type: path
description: ''
body:
type: json
data: '{}'
docs: 'Creates a new time off request.
Returns the created time off request with a balance_preview showing the policy balance impact.
time_off_request_days must include one entry for every date from starts_at to stops_at. Each entry requires a date and
amount_used in seconds (typically 28800 for an 8-hour day). Set amount_used to 0 for excluded weekend or holiday days.
Set require_no_shift_overlap to true to reject the request if it overlaps with scheduled attendance shifts.
remove_shifts deletes o'
- info:
name: Get time off request
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/time_off_requests/:time_off_request_id
params:
- name: time_off_request_id
value: ''
type: path
description: Time off request ID
docs: 'Returns the time off request with the given ID.
Includes time_off_request_days with per-day breakdown of dates, amounts, and holiday/paid status.
Also includes balance_preview showing the policy balance impact.'
- info:
name: Update time off request
type: http
http:
method: PUT
url: https://api.hubstaff.com/v2/time_off_requests/:time_off_request_id
params:
- name: time_off_request_id
value: ''
type: path
description: Time off request ID
body:
type: json
data: '{}'
docs: 'Updates a time off request''s details (dates, message, days, policy).
This is a full replacement — all fields must be provided, including time_off_request_days with one entry per date (amount_used
in seconds, typically 28800 for an 8-hour day).
Approved, paid, or partially paid requests cannot be edited.
If the request was denied, updating it automatically resubmits it (status → submitted).
If the policy does not require approval, the request is auto-approved on update.
Set require_no_shift_'
- info:
name: Delete time off request
type: http
http:
method: DELETE
url: https://api.hubstaff.com/v2/time_off_requests/:time_off_request_id
params:
- name: time_off_request_id
value: ''
type: path
description: Time off request ID
docs: 'Deletes the time off request.
Approved or paid time off requests cannot be deleted.'
- info:
name: List organization time off policies
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/time_off_policies
params:
- name: organization_id
value: ''
type: path
description: ''
docs: Returns a collection of time off policies for the given organization.
- info:
name: List organization time off balances
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/time_off_balances
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns time off balances for the given organization.
Each entry represents one user''s balance for one time off policy in the requested year.
Use `year` to query balances for a specific year (defaults to current year in the organization''s timezone).
Use `include[]` to sideload related users and time_off_policies.'
- info:
name: Attendance
type: folder
items:
- info:
name: List organization attendance schedules
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/attendance_schedules
params:
- name: organization_id
value: ''
type: path
description: ''
- name: date[start]
value: ''
type: query
description: Start date (ISO 8601)
- name: date[stop]
value: ''
type: query
description: Stop date (ISO 8601, Inclusive)
docs: 'Returns a collection of attendance schedules (expected work shifts) for the given organization.
Use date[start] and date[stop] to filter schedules that cover the specified date range. Repeating schedules are included
if any occurrence falls within the range.'
- info:
name: Create attendance schedule
type: http
http:
method: POST
url: https://api.hubstaff.com/v2/organizations/:organization_id/attendance_schedules
params:
- name: organization_id
value: ''
type: path
description: ''
body:
type: json
data: '{}'
docs: 'Creates an expected work shift for a user.
Returns the created attendance schedule.
For repeating schedules, specify repeat_schedule (weekly/bi_weekly) and weekdays. Use repeat_until to set an end date.
Use excluded_dates to skip specific dates.'
- info:
name: List organization attendance shifts
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/attendance_shifts
params:
- name: organization_id
value: ''
type: path
description: ''
- name: date[start]
value: ''
type: query
description: Start date (ISO 8601)
- name: date[stop]
value: ''
type: query
description: Stop date (ISO 8601, Inclusive)
docs: 'Returns actual work shifts (clock-in/clock-out records) for the given organization.
Use date[start] and date[stop] to filter shifts that fall within the specified date range.
Note: The maximum allowed difference between date[start] and date[stop] is 31 days.
Data is only available within organization’s retention period.
If date[start] falls outside this window, the request will fail.'
- info:
name: List organization holidays
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/holidays
params:
- name: organization_id
value: ''
type: path
description: ''
docs: 'Returns a collection of holidays for the given organization.
Results can be filtered by created[start]/[stop] and date[start]/[stop].'
- info:
name: Screenshots
type: folder
items:
- info:
name: List organization screenshots
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/screenshots
params:
- name: organization_id
value: ''
type: path
description: ''
- name: time_slot[start]
value: ''
type: query
description: Start time (ISO 8601)
- name: time_slot[stop]
value: ''
type: query
description: Stop time (ISO 8601, Exclusive)
docs: 'Returns a collection of screenshots for the given organization.
Results can be filtered by user_ids[], project_ids[], and time_slot[start]/[stop].
Note: Date range limit is 7 days. Earliest date is 6 months ago.'
- info:
name: Get screenshot
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/screenshots/:screenshot_id
params:
- name: organization_id
value: ''
type: path
description: ''
- name: screenshot_id
value: ''
type: path
description: Screenshot ID
docs: Returns the screenshot with the given ID.
- info:
name: App & URL Tracking
type: folder
items:
- info:
name: List organization tool usages
type: http
http:
method: GET
url: https://api.hubstaff.com/v2/organizations/:organization_id/tool_usages
params:
- name: organization_id
value: ''
type: path
description: ''
- name: time_slot[start]
value: ''
type: query
description: Start time (ISO 8601)
- name: time_slot[stop]
value: ''
type: query
description: Stop time (ISO 8601, Exclusive)
docs: 'Returns a collection of tool usages (productivity tool usage) for the given organization.
Results can be filtered by time_slot[start]/[stop], user_ids[], task_ids[], project_ids[], and tool_type.
The preferred endpo
# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/hubstaff/refs/heads/main/apis.yml