Skip to main content

Overview

The Find Project endpoint allows you to search for a specific project by name within a workspace. This endpoint returns detailed project information including client details, workspace information, and project statistics like task count and time entry count.
This endpoint performs a case-insensitive partial match search on the project name and includes comprehensive project metadata for use in Zapier workflows.

Authentication

All requests require a valid API key in the Authorization header:
Authorization: Bearer YOUR_API_KEY

Find Project

curl -X POST 'https://app.timetracker.in/api/integrations/zapier/triggers/projects/find' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -d '{
    "workspace_id": "w1b2c3d4-e5f6-7890-abcd-ef0987654321",
    "name": "Website Redesign"
  }'

Request Body

workspace_id
string
required
The unique identifier of the workspace to search within. Must be a valid UUID format.Example: "w1b2c3d4-e5f6-7890-abcd-ef0987654321"
name
string
required
The project name to search for. Performs case-insensitive partial matching.Example: "Website Redesign" or "website" (will match “Website Redesign”)

Response

Success Response

Returns an array containing the matching project object with comprehensive details, or an empty array if no match is found:
[
  {
    "id": "p1a2b3c4-d5e6-7890-abcd-ef1234567890",
    "name": "Website Redesign",
    "description": "Complete redesign of company website",
    "status": "active",
    "is_private": false,
    "default_billable_rate": 75.0,
    "default_billable": true,
    "estimated_hours": 120.0,
    "estimated_budget": 9000.0,
    "workspace_id": "w1b2c3d4-e5f6-7890-abcd-ef0987654321",
    "workspace_name": "Main Workspace",
    "client_id": "c1a2b3c4-d5e6-7890-abcd-ef1234567890",
    "client_name": "Acme Corp",
    "task_count": 15,
    "time_entry_count": 45,
    "member_count": 3,
    "created_at": "2024-01-15T10:30:00Z",
    "updated_at": "2024-01-15T10:30:00Z"
  }
]
id
string
Unique project identifier (UUID format)
name
string
Project name
description
string
Detailed project description
status
string
Current project status
  • active - Project is currently in progress
  • completed - Project has been finished
is_private
boolean
Whether the project is private (restricted access) or public
default_billable_rate
number
Default hourly rate for this project (overrides workspace default)
default_billable
boolean
Whether time entries are billable by default for this project
estimated_hours
number
Estimated total hours to complete the project
estimated_budget
number
Estimated budget for the project
workspace_id
string
Unique identifier of the workspace containing this project
workspace_name
string
Human-readable name of the workspace
client_id
string
Unique identifier of the associated client (null if no client assigned)
client_name
string
Name of the associated client (null if no client assigned)
task_count
integer
Total number of tasks within this project
time_entry_count
integer
Total number of time entries logged for this project
member_count
integer
Number of team members assigned to this project
created_at
string
ISO 8601 timestamp when project was created
updated_at
string
ISO 8601 timestamp when project was last modified

No Results Response

When no matching project is found, returns an empty array:
[]

Error Responses

{
  "error": "Invalid request parameters"
}
Cause: Missing required fields or invalid UUID format
Solution: Ensure both workspace_id and name are provided with valid formats
{
  "error": "Unauthorized"
}
Cause: Invalid or missing API key
Solution: Verify your API key is correct and properly formatted
{
  "error": "Internal server error"
}
Cause: Server-side error during search
Solution: Retry the request or contact support if the issue persists

Search Behavior

Partial Matching

The search performs case-insensitive partial matching on the project name:
  • Input: "website"Matches: “Website Redesign”, “Mobile Website”, “Website Maintenance”
  • Input: "redesign"Matches: “Website Redesign”, “App Redesign”, “Brand Redesign”

Workspace Scoping

Workspace Isolation: The search is limited to projects within the specified workspace. Projects from other workspaces are not accessible, even if they match the name criteria.

Result Ordering

Results are ordered by creation date (newest first), so the most recently created matching project appears first.

Zapier Integration Usage

Common Use Cases

Use Case: Allow users to select an existing project when creating tasks or logging time entries in Zapier workflows.Implementation: Use this endpoint to populate dropdown lists or validate project selections.
Use Case: Monitor project progress and status changes for automated notifications or reporting.Implementation: Use the status, task_count, and time_entry_count fields to track project health.
Use Case: Retrieve project details along with client information for billing or reporting workflows.Implementation: Use the client_id and client_name fields to associate projects with clients.
Use Case: Monitor project budgets and time estimates for automated alerts or reporting.Implementation: Use estimated_hours, estimated_budget, and time_entry_count for progress tracking.

Zapier Field Mapping

When setting up Zapier actions, you can map these project fields:
  • Project IDid (for referencing in other API calls)
  • Project Namename (for display purposes)
  • Project Statusstatus (for conditional logic)
  • Client Informationclient_id, client_name (for client association)
  • Budget Dataestimated_budget, default_billable_rate (for financial workflows)
  • Progress Metricstask_count, time_entry_count, member_count (for reporting)

Project Statistics

The endpoint provides valuable project statistics that can be used for:

Progress Tracking

  • Task Count: Monitor how many tasks are assigned to the project
  • Time Entry Count: Track how much work has been logged
  • Member Count: See how many team members are involved

Budget Management

  • Estimated Hours: Compare against actual time logged
  • Estimated Budget: Monitor against actual costs
  • Billable Rate: Use for automated billing calculations

Status Monitoring

  • Project Status: Track active, completed, or on-hold projects
  • Privacy Settings: Handle public vs. private project access
  • Billable Settings: Determine if time should be billed by default

Best Practices

Search Optimization:
  • Use specific name fragments for better results
  • Consider project naming conventions in your workspace
  • Handle empty results gracefully in your workflows
  • Cache project data when possible to reduce API calls
Pro Tip: Use the project statistics (task_count, time_entry_count) to create automated project health dashboards or alerts when projects exceed estimated hours or budget.
Data Freshness: Project statistics are calculated in real-time. For high-frequency monitoring, consider caching results to avoid excessive API calls.

Rate Limits

This endpoint follows standard API rate limiting:
  • Rate Limit: 100 requests per minute per API key
  • Burst Limit: 10 requests per second
  • Reset Period: Rolling 60-second window
Rate Limit Headers: Response headers include current usage information:
  • X-RateLimit-Limit: Maximum requests per window
  • X-RateLimit-Remaining: Remaining requests in current window
  • X-RateLimit-Reset: Timestamp when the limit resets