curl --request GET \
--url https://api.everhour.com/projects/{project_id}/tasks/search \
--header 'X-Api-Key: <api-key>'import requests
url = "https://api.everhour.com/projects/{project_id}/tasks/search"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://api.everhour.com/projects/{project_id}/tasks/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.everhour.com/projects/{project_id}/tasks/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.everhour.com/projects/{project_id}/tasks/search"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.everhour.com/projects/{project_id}/tasks/search")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.everhour.com/projects/{project_id}/tasks/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"id": "ev:9876543210",
"name": "Task Name",
"projects": [
"ev:1234567890"
],
"type": "task",
"url": "https://github.com/acme/web/issues/8688",
"number": "ED-774",
"section": 1234,
"labels": [
"high",
"bug"
],
"position": 1,
"description": "<string>",
"dueAt": "2018-03-05 16:00:00",
"dueOn": "2024-10-31",
"status": "open",
"completed": false,
"completedAt": "2024-01-24 14:36:20",
"createdAt": "2023-04-07 13:11:20",
"createdBy": 1304,
"favorite": false,
"assignees": [
{
"userId": 1304,
"accountId": "gh:313991",
"accountName": "jbender"
}
],
"iteration": "In Progress",
"color": "#edacc7",
"comments": 1,
"time": {
"total": 7200,
"users": {
"1304": 3600,
"1543": 3600
},
"timerTime": 5400
},
"estimate": {
"total": 7200,
"type": "overall",
"users": {
"1304": 3600,
"1543": 3600
}
},
"attributes": {
"Client": "Everhour",
"Priority": "high"
},
"metrics": {
"efforts": 42,
"expenses": 199
},
"unbillable": false
}
]Search Project Tasks
Search tasks within a single project. Same query semantics as GET /tasks/search; limit must be between 1 and 100.
curl --request GET \
--url https://api.everhour.com/projects/{project_id}/tasks/search \
--header 'X-Api-Key: <api-key>'import requests
url = "https://api.everhour.com/projects/{project_id}/tasks/search"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://api.everhour.com/projects/{project_id}/tasks/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.everhour.com/projects/{project_id}/tasks/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.everhour.com/projects/{project_id}/tasks/search"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.everhour.com/projects/{project_id}/tasks/search")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.everhour.com/projects/{project_id}/tasks/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"id": "ev:9876543210",
"name": "Task Name",
"projects": [
"ev:1234567890"
],
"type": "task",
"url": "https://github.com/acme/web/issues/8688",
"number": "ED-774",
"section": 1234,
"labels": [
"high",
"bug"
],
"position": 1,
"description": "<string>",
"dueAt": "2018-03-05 16:00:00",
"dueOn": "2024-10-31",
"status": "open",
"completed": false,
"completedAt": "2024-01-24 14:36:20",
"createdAt": "2023-04-07 13:11:20",
"createdBy": 1304,
"favorite": false,
"assignees": [
{
"userId": 1304,
"accountId": "gh:313991",
"accountName": "jbender"
}
],
"iteration": "In Progress",
"color": "#edacc7",
"comments": 1,
"time": {
"total": 7200,
"users": {
"1304": 3600,
"1543": 3600
},
"timerTime": 5400
},
"estimate": {
"total": 7200,
"type": "overall",
"users": {
"1304": 3600,
"1543": 3600
}
},
"attributes": {
"Client": "Everhour",
"Priority": "high"
},
"metrics": {
"efforts": 42,
"expenses": 199
},
"unbillable": false
}
]Authorizations
Path Parameters
Project ID
"ev:1234567789001"
Query Parameters
Search query
"Managem"
Max number of search results
10
Should we search in closed/completed tasks?
false
Return unscheduled tasks (not in any section). Works without a query.
false
Response
OK
"ev:9876543210"
"Task Name"
List of projects ID
["ev:1234567890"]
Object kind reported by the source platform.
"task"
Link to the task in the source platform. Absent for native Everhour tasks.
"https://github.com/acme/web/issues/8688"
Issue number or key in the source platform. Absent for native Everhour tasks.
"ED-774"
Section ID
1234
["high", "bug"]
1
Format: Y-m-d H:i:s
"2018-03-05 16:00:00"
Due date without a time component. Format: Y-m-d
"2024-10-31"
open, completed, closed "open"
Mirrors status — true when the task is done in the source platform.
false
When the task was completed. Format: Y-m-d H:i:s
"2024-01-24 14:36:20"
Format: Y-m-d H:i:s
"2023-04-07 13:11:20"
ID of the user who created the task. Native Everhour tasks only.
1304
Whether you marked this task as a favorite.
false
Who the task is assigned to. null when the source platform reports no assignee data, and an empty array when the task is unassigned.
Show child attributes
Show child attributes
Sprint, board column, or section the task sits in, as reported by the source platform.
"In Progress"
Task color as a hex value. Native Everhour tasks only.
"#edacc7"
Number of comments on the task.
1
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Custom attributes from integration
Show child attributes
Show child attributes
{ "Client": "Everhour", "Priority": "high" }
Custom metrics from integration
Show child attributes
Show child attributes
{ "efforts": 42, "expenses": 199 }
true when the task is marked as non-billable.
false
