curl --request GET \
--url https://api.everhour.com/team/time/export \
--header 'X-Api-Key: <api-key>'import requests
url = "https://api.everhour.com/team/time/export"
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/team/time/export', 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/team/time/export",
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/team/time/export"
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/team/time/export")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.everhour.com/team/time/export")
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[
{
"time": 7200,
"date": "2018-03-20",
"user": {
"id": 1304,
"name": "Chris Wonder"
},
"project": {
"id": "ev:9876543210",
"name": "Project Name",
"workspace": "Project Workspace Name"
},
"task": {
"id": "ev:1234567890",
"name": "Task Name",
"status": "open",
"type": "task",
"iteration": "Iteration/column/section name",
"number": 123,
"dueAt": "2018-01-20"
}
}
]Time Report (deprecated)
Legacy export of team time records, returned as JSON. Kept for backward compatibility; new integrations should use GET /team/time or the dashboard reports.
curl --request GET \
--url https://api.everhour.com/team/time/export \
--header 'X-Api-Key: <api-key>'import requests
url = "https://api.everhour.com/team/time/export"
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/team/time/export', 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/team/time/export",
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/team/time/export"
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/team/time/export")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.everhour.com/team/time/export")
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[
{
"time": 7200,
"date": "2018-03-20",
"user": {
"id": 1304,
"name": "Chris Wonder"
},
"project": {
"id": "ev:9876543210",
"name": "Project Name",
"workspace": "Project Workspace Name"
},
"task": {
"id": "ev:1234567890",
"name": "Task Name",
"status": "open",
"type": "task",
"iteration": "Iteration/column/section name",
"number": 123,
"dueAt": "2018-01-20"
}
}
]Authorizations
Query Parameters
Date from you what to fetch reported time (format YYYY-MM-DD)
"2018-01-01"
Date to you what to fetch reported time (format YYYY-MM-DD)
"2018-01-31"
Comma-separated columns. Allowed: date, user, task, project, month, projects.
"date,user,task"
Filter by project (encoded ID).
Filter by client ID.
Filter by user ID.
Include time records that have no task.
false
Response
OK
Report time in seconds
7200
Will appear only if 'date' passed to fields parameter
"2018-03-20"
Will appear only if 'user' passed to fields parameter
Show child attributes
Show child attributes
Will appear only if 'project' passed to fields parameter
Show child attributes
Show child attributes
Will appear only if 'task' passed to fields parameter
Show child attributes
Show child attributes
