Automated timesheet generation and timestamp tracking.
This project provides a simple and clean looking web interface to help you manage and better track your work time.
Also provides an IFTTT compatible API so that your timestamp markings can be fully automated.
It is also fully configurable to suit your needs, that includes the upload of a custom Spreadsheet to be used as template, that will be automatically filled and sent to the configured email addresses by the end of the month.
Start the docker container with the commands below:
docker volume create timesheets-storage
docker run -d --name timesheets --restart always \
-p 80:80 -v timesheets-storage:/var/www/html/storage \
edmur/timesheets
Now navigate to http://yourhost:port/ and login.
The default user e-mail is [email protected] and password is changethis.
Make sure to configure the settings in "Settings" section and change email and password on "My Account" section.
(Mandatory)
MAIL_HOST=smtp.mailserver.com
MAIL_PORT=465
[email protected]
MAIL_FROM_NAME='Timesheet Bot'
[email protected]
MAIL_PASSWORD=myemailpassword
MAIL_ENCRYPTION=ssl/tls/empty
(Optional)
IFTTT_EVENT=my_ifttt_webhook_event
IFTTT_KEY=my-ifttt-webhook-key-here
TZ=America/Sao_Paulo
In addition to using the web interface, you can also use the API to control timestamps.
First, go to "My Account" section, and under API, click Show Key on Your API Key.
The API was designed to be triggered by IFTTT Webhook service.
It can guess the Content-Type encoding. Works well with JSON and x-www-form-urlencoded.
POST Timestamp INCreates a new Entry Timestamp.
{{URL}}/api/timestamp/in
| Field | Type | Description |
|---|---|---|
| api_key | String | Your API Key. |
| ts | String | The timestamp in IFTTT "moment" format. Smart guess otherwise. |
| Status Code | Message | Reason |
|---|---|---|
| 200 | Timestamp inserted successfully | |
| 400 | Missing %prop% on request body | Malformed Request, fix the issues and retry. |
POST Timestamp OUTCreates a new Exit Timestamp.
{{URL}}/api/timestamp/in
| Field | Type | Description |
|---|---|---|
| api_key | String | Your API Key. |
| ts | String | The timestamp in IFTTT "moment" format. Smart guess otherwise. |
| Status Code | Message | Reason |
|---|---|---|
| 200 | Timestamp inserted successfully | |
| 400 | Missing %prop% on request body | Malformed Request, fix the issues and retry. |
PUT Timestamp EDITEdits an existing Timestamp.
{{URL}}/api/timestamp/id/{id}
| Field | Type | Description |
|---|---|---|
| api_key | String | Your API Key. |
| ts | String | The new value of the timestamp being overriden. |
| Status Code | Message | Reason |
|---|---|---|
| 200 | ok | |
| 400 | Missing %prop% on request body | Malformed Request, fix the issues and retry. |
DELETE Timestamp DELETEEdits an existing Timestamp.
{{URL}}/api/timestamp/id/{id}
| Field | Type | Description |
|---|---|---|
| api_key | String | Your API Key. |
| Status Code | Message | Reason |
|---|---|---|
| 200 | ok | |
| 400 | Missing %prop% on request body | Malformed Request, fix the issues and retry. |
Adicionar observação diária
Adicionar possibilidade de gerar nova API Key
Content type
Image
Digest
Size
242.6 MB
Last updated
about 6 years ago
docker pull edmur/timesheets