Introduction

This is the Time Tracker App API Documentation

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

This API is not authenticated.

Activity

Get All

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/activities
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

paginate
boolean

Field to paginate. Defaults to true.

Example:
1
page
integer

Field to paginate. Defaults to null.

Example:
1
perPage
integer

Field to paginate. Defaults to null.

Example:
1
filterBy
string

Field to filterBy. Defaults to null.

Example:
name
filterValue
string

Field to filterValue. Defaults to null.

Example:
Car
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/activities?paginate=1&page=1&perPage=1&filterBy=name&filterValue=Car" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "list": [
            {
                "id": 3,
                "name": "Doe",
                "created_at": "2024-03-04T08:46:33.000000Z",
                "updated_at": "2024-03-04T08:46:33.000000Z"
            },
            {
                "id": 2,
                "name": "Jane",
                "created_at": "2024-03-04T08:46:33.000000Z",
                "updated_at": "2024-03-04T08:46:33.000000Z"
            },
            {
                "id": 1,
                "name": "John",
                "created_at": "2024-03-04T08:46:33.000000Z",
                "updated_at": "2024-03-04T08:46:33.000000Z"
            }
        ],
        "pagination": {
            "total": 3,
            "per_page": 10,
            "current": 1,
            "first": 1,
            "last": 1,
            "previous": null,
            "next": null,
            "pages": [
                1
            ],
            "from": 1,
            "to": 3
        }
    }
}

Create

POST
https://time-tracker-backend.pinnguaq.com
/api/admin/activities
requires authentication

Store new division

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://time-tracker-backend.pinnguaq.com/api/admin/activities" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": [
        \"e\"
    ]
}"
Example response:
{
    "success": true,
    "status_code": 201,
    "message": [
        "Record created successfully."
    ],
    "data": [
        {
            "name": "John",
            "updated_at": "2024-03-04T08:46:33.000000Z",
            "created_at": "2024-03-04T08:46:33.000000Z",
            "id": 1
        },
        {
            "name": "Jane",
            "updated_at": "2024-03-04T08:46:33.000000Z",
            "created_at": "2024-03-04T08:46:33.000000Z",
            "id": 2
        },
        {
            "name": "Doe",
            "updated_at": "2024-03-04T08:46:33.000000Z",
            "created_at": "2024-03-04T08:46:33.000000Z",
            "id": 3
        }
    ]
}

Show

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/activities/{id}
requires authentication

Show existing by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the activity.

Example:
1
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/activities/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "id": 2,
        "name": "Jane",
        "capabilities": [
            {
                "id": 1,
                "name": "John",
                "created_at": "2024-03-04T08:46:13.000000Z",
                "updated_at": "2024-03-04T08:46:13.000000Z"
            }
        ],
        "created_at": "2024-03-04T08:46:33.000000Z",
        "updated_at": "2024-03-04T08:46:33.000000Z"
    }
}

Update

PUT
PATCH
https://time-tracker-backend.pinnguaq.com
/api/admin/activities/{id}
requires authentication

update by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the activity.

Example:
1

Body Parameters

Example request:
curl --request PUT \
    "https://time-tracker-backend.pinnguaq.com/api/admin/activities/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"fxnggrfxnlwwq\"
}"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record updated successfully."
    ],
    "data": true
}

Delete

DELETE
https://time-tracker-backend.pinnguaq.com
/api/admin/activities/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the activity.

Example:
1
Example request:
curl --request DELETE \
    "https://time-tracker-backend.pinnguaq.com/api/admin/activities/1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]

Auth

APIs for managing Auth

Login

POST
https://time-tracker-backend.pinnguaq.com
/api/admin/login

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://time-tracker-backend.pinnguaq.com/api/admin/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"firebase_token\": \"dolorem\"
}"

Logout

POST
https://time-tracker-backend.pinnguaq.com
/api/admin/logout
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request POST \
    "https://time-tracker-backend.pinnguaq.com/api/admin/logout" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Get Profile

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/profile
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/profile" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
Headers
                                                            cache-control
                                                            : no-cache, private
                                                                                                                    content-type
                                                            : application/json
                                                                                                                    access-control-allow-origin
                                                            : *
                                                         
{
    "success": false,
    "status": 401,
    "message": [
        "You are not authenticated. Please login."
    ],
    "data": []
}

Update Profile

PUT
PATCH
https://time-tracker-backend.pinnguaq.com
/api/admin/profile/update
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request PUT \
    "https://time-tracker-backend.pinnguaq.com/api/admin/profile/update" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"first_name\": \"ebebcfagucfvzgiw\",
    \"last_name\": \"kvatexbnnjmn\",
    \"phone\": \"qchvccoudeswvlmne\",
    \"password\": \"|D+\\\"pJqT=dNx,)K%@AfK\"
}"

Capability

Get All

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/capabilities
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

paginate
boolean

Field to paginate. Defaults to true.

Example:
1
page
integer

Field to paginate. Defaults to null.

Example:
1
perPage
integer

Field to paginate. Defaults to null.

Example:
1
filterBy
string

Field to filterBy. Defaults to null.

Example:
name
filterValue
string

Field to filterValue. Defaults to null.

Example:
Car
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/capabilities?paginate=1&page=1&perPage=1&filterBy=name&filterValue=Car" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "list": [
            {
                "id": 3,
                "name": "Doe",
                "created_at": "2024-03-04T08:46:13.000000Z",
                "updated_at": "2024-03-04T08:46:13.000000Z"
            },
            {
                "id": 2,
                "name": "Jane",
                "created_at": "2024-03-04T08:46:13.000000Z",
                "updated_at": "2024-03-04T08:46:13.000000Z"
            },
            {
                "id": 1,
                "name": "John",
                "created_at": "2024-03-04T08:46:13.000000Z",
                "updated_at": "2024-03-04T08:46:13.000000Z"
            }
        ],
        "pagination": {
            "total": 3,
            "per_page": 10,
            "current": 1,
            "first": 1,
            "last": 1,
            "previous": null,
            "next": null,
            "pages": [
                1
            ],
            "from": 1,
            "to": 3
        }
    }
}

Create

POST
https://time-tracker-backend.pinnguaq.com
/api/admin/capabilities
requires authentication

Store new capability

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://time-tracker-backend.pinnguaq.com/api/admin/capabilities" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": [
        \"f\"
    ]
}"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "id": 2,
        "name": "Jane",
        "divisions": [
            {
                "id": 1,
                "name": "John",
                "created_at": "2024-02-28T15:43:48.000000Z",
                "updated_at": "2024-02-28T15:43:48.000000Z"
            }
        ],
        "created_at": "2024-03-04T08:46:13.000000Z",
        "updated_at": "2024-03-04T08:46:13.000000Z"
    }
}

Show

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/capabilities/{id}
requires authentication

Show existing by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the capability.

Example:
5
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/capabilities/5" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "id": 1,
        "project_no": "1",
        "name": "John",
        "created_at": "2024-02-26T12:36:12.000000Z",
        "updated_at": "2024-02-26T12:36:12.000000Z",
        "deleted_at": null
    }
}

Update

PUT
PATCH
https://time-tracker-backend.pinnguaq.com
/api/admin/capabilities/{id}
requires authentication

update by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the capability.

Example:
5

Body Parameters

Example request:
curl --request PUT \
    "https://time-tracker-backend.pinnguaq.com/api/admin/capabilities/5" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"yxaumdrvfxazwjdj\"
}"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record updated successfully."
    ],
    "data": true
}

Delete

DELETE
https://time-tracker-backend.pinnguaq.com
/api/admin/capabilities/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the capability.

Example:
5
Example request:
curl --request DELETE \
    "https://time-tracker-backend.pinnguaq.com/api/admin/capabilities/5" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]

Division

Get All

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/divisions
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

paginate
boolean

Field to paginate. Defaults to true.

Example:
1
page
integer

Field to paginate. Defaults to null.

Example:
1
perPage
integer

Field to paginate. Defaults to null.

Example:
1
filterBy
string

Field to filterBy. Defaults to null.

Example:
name
filterValue
string

Field to filterValue. Defaults to null.

Example:
Car
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/divisions?paginate=1&page=1&perPage=1&filterBy=name&filterValue=Car" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": [
        {
            "id": 3,
            "name": "Doe",
            "created_at": "2024-02-28T15:43:48.000000Z",
            "updated_at": "2024-02-28T15:43:48.000000Z"
        },
        {
            "id": 2,
            "name": "Jane",
            "created_at": "2024-02-28T15:43:48.000000Z",
            "updated_at": "2024-02-28T15:43:48.000000Z"
        },
        {
            "id": 1,
            "name": "John",
            "created_at": "2024-02-28T15:43:48.000000Z",
            "updated_at": "2024-02-28T15:43:48.000000Z"
        }
    ]
}

Create

POST
https://time-tracker-backend.pinnguaq.com
/api/admin/divisions
requires authentication

Store new division

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://time-tracker-backend.pinnguaq.com/api/admin/divisions" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": [
        \"nfoplllka\"
    ]
}"
Example response:
{
    "success": true,
    "status_code": 201,
    "message": [
        "Record created successfully."
    ],
    "data": [
        {
            "name": "John",
            "updated_at": "2024-03-05T16:00:43.000000Z",
            "created_at": "2024-03-05T16:00:43.000000Z",
            "id": 4
        },
        {
            "name": "Jane",
            "updated_at": "2024-03-05T16:00:43.000000Z",
            "created_at": "2024-03-05T16:00:43.000000Z",
            "id": 5
        },
        {
            "name": "Doe",
            "updated_at": "2024-03-05T16:00:43.000000Z",
            "created_at": "2024-03-05T16:00:43.000000Z",
            "id": 6
        }
    ]
}

Show

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/divisions/{id}
requires authentication

Show existing by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the division.

Example:
65
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/divisions/65" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "id": 1,
        "name": "John",
        "created_at": "2024-02-28T15:43:48.000000Z",
        "updated_at": "2024-02-28T15:43:48.000000Z"
    }
}

Update

PUT
PATCH
https://time-tracker-backend.pinnguaq.com
/api/admin/divisions/{id}
requires authentication

update by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the division.

Example:
65

Body Parameters

Example request:
curl --request PUT \
    "https://time-tracker-backend.pinnguaq.com/api/admin/divisions/65" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"acasbyzap\"
}"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record updated successfully."
    ],
    "data": true
}

Delete

DELETE
https://time-tracker-backend.pinnguaq.com
/api/admin/divisions/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the division.

Example:
65
Example request:
curl --request DELETE \
    "https://time-tracker-backend.pinnguaq.com/api/admin/divisions/65" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]

Endpoints

POST api/admin/{entity}/multiple-delete

POST
https://time-tracker-backend.pinnguaq.com
/api/admin/{entity}/multiple-delete

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

entity
string
required
Example:
9b97b9c9-b8fb-41df-98f0-8424b51eaab9

Body Parameters

Example request:
curl --request POST \
    "https://time-tracker-backend.pinnguaq.com/api/admin/9b97b9c9-b8fb-41df-98f0-8424b51eaab9/multiple-delete" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \

Project

Get All

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/projects
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

paginate
boolean

Field to paginate. Defaults to true.

Example:
1
page
integer

Field to paginate. Defaults to null.

Example:
1
perPage
integer

Field to paginate. Defaults to null.

Example:
1
filterBy
string

Field to filterBy. Defaults to null.

Example:
name
filterValue
string

Field to filterValue. Defaults to null.

Example:
Car
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/projects?paginate=1&page=1&perPage=1&filterBy=name&filterValue=Car" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "list": [
            {
                "id": 3,
                "project_no": "34545",
                "name": "Doe",
                "created_at": "2024-03-04T08:49:22.000000Z",
                "updated_at": "2024-03-04T08:49:22.000000Z"
            },
            {
                "id": 2,
                "project_no": "23555",
                "name": "Jane",
                "created_at": "2024-03-04T08:49:22.000000Z",
                "updated_at": "2024-03-04T08:49:22.000000Z"
            },
            {
                "id": 1,
                "project_no": "14345",
                "name": "John",
                "created_at": "2024-03-04T08:49:22.000000Z",
                "updated_at": "2024-03-04T08:49:22.000000Z"
            }
        ],
        "pagination": {
            "total": 3,
            "per_page": 10,
            "current": 1,
            "first": 1,
            "last": 1,
            "previous": null,
            "next": null,
            "pages": [
                1
            ],
            "from": 1,
            "to": 3
        }
    }
}

Create

POST
https://time-tracker-backend.pinnguaq.com
/api/admin/projects
requires authentication

Store new project

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request POST \
    "https://time-tracker-backend.pinnguaq.com/api/admin/projects" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 201,
    "message": [
        "Record created successfully."
    ],
    "data": [
        {
            "project_no": "15466",
            "name": "John",
            "updated_at": "2024-03-04T08:49:22.000000Z",
            "created_at": "2024-03-04T08:49:22.000000Z",
            "id": 1
        },
        {
            "project_no": "24565",
            "name": "Jane",
            "updated_at": "2024-03-04T08:49:22.000000Z",
            "created_at": "2024-03-04T08:49:22.000000Z",
            "id": 2
        },
        {
            "project_no": "36556",
            "name": "Doe",
            "updated_at": "2024-03-04T08:49:22.000000Z",
            "created_at": "2024-03-04T08:49:22.000000Z",
            "id": 3
        }
    ]
}

Show

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/projects/{id}
requires authentication

Show existing by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the project.

Example:
16
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/projects/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "id": 1,
        "project_no": "1",
        "name": "John",
        "created_at": "2024-02-26T12:36:12.000000Z",
        "updated_at": "2024-02-26T12:36:12.000000Z",
        "deleted_at": null
    }
}

Update

PUT
PATCH
https://time-tracker-backend.pinnguaq.com
/api/admin/projects/{id}
requires authentication

update by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the project.

Example:
16

Body Parameters

Example request:
curl --request PUT \
    "https://time-tracker-backend.pinnguaq.com/api/admin/projects/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"project_no\": \"vsrbua\",
    \"name\": \"fyvjazeakof\"
}"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record updated successfully."
    ],
    "data": true
}

Delete

DELETE
https://time-tracker-backend.pinnguaq.com
/api/admin/projects/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the project.

Example:
16
Example request:
curl --request DELETE \
    "https://time-tracker-backend.pinnguaq.com/api/admin/projects/16" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]

TimeRecord

Get All

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/time-records
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

paginate
boolean

Field to paginate. Defaults to true.

Example:
1
page
integer

Field to paginate. Defaults to null.

Example:
1
perPage
integer

Field to paginate. Defaults to null.

Example:
1
filterBy
string

Field to filterBy. Defaults to null.

Example:
date
filterValue
string

Field to filterValue. Defaults to null.

Example:
2024-02-28
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/time-records?paginate=1&page=1&perPage=1&filterBy=date&filterValue=2024-02-28" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "list": [
            {
                "id": 6,
                "user_id": "9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
                "division_id": 1,
                "capability_id": 1,
                "activity_id": 1,
                "project_id": 1,
                "user": {
                    "id": "9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
                    "username": "pinnguaq-9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
                    "first_name": "Updated John2",
                    "last_name": "Updated Do2e",
                    "phone": "98765432120",
                    "email": "updated.j12ohn.doe@example.com",
                    "email_verified_at": null,
                    "role": "user",
                    "picture": "profile.png",
                    "created_at": "2024-03-04T08:47:58.000000Z",
                    "updated_at": "2024-03-04T08:47:58.000000Z",
                    "deleted_at": null
                },
                "capability": {
                    "id": 1,
                    "name": "John",
                    "created_at": "2024-03-04T08:46:13.000000Z",
                    "updated_at": "2024-03-04T08:46:13.000000Z"
                },
                "activity": {
                    "id": 1,
                    "name": "John",
                    "created_at": "2024-03-04T08:46:33.000000Z",
                    "updated_at": "2024-03-04T08:46:33.000000Z"
                },
                "project": {
                    "id": 1,
                    "project_no": "1",
                    "name": "John",
                    "created_at": "2024-03-04T08:49:22.000000Z",
                    "updated_at": "2024-03-04T08:49:22.000000Z"
                },
                "date": "2024-03-01",
                "note": "This is a sample note",
                "time_spent": "2 hours",
                "created_at": "2024-03-04T08:50:46.000000Z",
                "updated_at": "2024-03-04T08:50:46.000000Z"
            },
            {
                "id": 5,
                "user_id": "9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
                "division_id": 1,
                "capability_id": 1,
                "activity_id": 1,
                "project_id": 1,
                "user": {
                    "id": "9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
                    "username": "pinnguaq-9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
                    "first_name": "Updated John2",
                    "last_name": "Updated Do2e",
                    "phone": "98765432120",
                    "email": "updated.j12ohn.doe@example.com",
                    "email_verified_at": null,
                    "role": "user",
                    "picture": "profile.png",
                    "created_at": "2024-03-04T08:47:58.000000Z",
                    "updated_at": "2024-03-04T08:47:58.000000Z",
                    "deleted_at": null
                },
                "capability": {
                    "id": 1,
                    "name": "John",
                    "created_at": "2024-03-04T08:46:13.000000Z",
                    "updated_at": "2024-03-04T08:46:13.000000Z"
                },
                "activity": {
                    "id": 1,
                    "name": "John",
                    "created_at": "2024-03-04T08:46:33.000000Z",
                    "updated_at": "2024-03-04T08:46:33.000000Z"
                },
                "project": {
                    "id": 1,
                    "project_no": "1",
                    "name": "John",
                    "created_at": "2024-03-04T08:49:22.000000Z",
                    "updated_at": "2024-03-04T08:49:22.000000Z"
                },
                "date": "2024-03-01",
                "note": "This is a sample note",
                "time_spent": "2 hours",
                "created_at": "2024-03-04T08:49:43.000000Z",
                "updated_at": "2024-03-04T08:49:43.000000Z"
            },
            {
                "id": 4,
                "user_id": "9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
                "division_id": 1,
                "capability_id": 1,
                "activity_id": 1,
                "project_id": 1,
                "user": {
                    "id": "9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
                    "username": "pinnguaq-9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
                    "first_name": "Updated John2",
                    "last_name": "Updated Do2e",
                    "phone": "98765432120",
                    "email": "updated.j12ohn.doe@example.com",
                    "email_verified_at": null,
                    "role": "user",
                    "picture": "profile.png",
                    "created_at": "2024-03-04T08:47:58.000000Z",
                    "updated_at": "2024-03-04T08:47:58.000000Z",
                    "deleted_at": null
                },
                "capability": {
                    "id": 1,
                    "name": "John",
                    "created_at": "2024-03-04T08:46:13.000000Z",
                    "updated_at": "2024-03-04T08:46:13.000000Z"
                },
                "activity": {
                    "id": 1,
                    "name": "John",
                    "created_at": "2024-03-04T08:46:33.000000Z",
                    "updated_at": "2024-03-04T08:46:33.000000Z"
                },
                "project": {
                    "id": 1,
                    "project_no": "1",
                    "name": "John",
                    "created_at": "2024-03-04T08:49:22.000000Z",
                    "updated_at": "2024-03-04T08:49:22.000000Z"
                },
                "date": "2024-03-02",
                "note": "This is a sample note",
                "time_spent": "2 hours",
                "created_at": "2024-03-04T08:49:38.000000Z",
                "updated_at": "2024-03-04T08:49:38.000000Z"
            }
        ],
        "pagination": {
            "total": 3,
            "per_page": 10,
            "current": 1,
            "first": 1,
            "last": 1,
            "previous": null,
            "next": null,
            "pages": [
                1
            ],
            "from": 1,
            "to": 3
        }
    }
}

Create

POST
https://time-tracker-backend.pinnguaq.com
/api/admin/time-records
requires authentication

Store new divsion

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://time-tracker-backend.pinnguaq.com/api/admin/time-records" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"division_id\": 5,
    \"capability_id\": 14,
    \"activity_id\": 4,
    \"project_id\": 17,
    \"activity_info\": \"eum\",
    \"date\": \"2025-04-08T14:56:11\",
    \"note\": \"cumque\",
    \"time_spent\": \"libero\",
    \"user_id\": \"eum\"
}"
Example response:
{
    "success": true,
    "status_code": 201,
    "message": [
        "Record created successfully."
    ],
    "data": {
        "id": 6,
        "user_id": "9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
        "division_id": 1,
        "capability_id": 1,
        "activity_id": 1,
        "project_id": 1,
        "date": "2024-03-01",
        "note": "This is a sample note",
        "time_spent": "2 hours",
        "created_at": "2024-03-04T08:50:46.000000Z",
        "updated_at": "2024-03-04T08:50:46.000000Z",
        "deleted_at": null
    }
}

Show

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/time-records/{id}
requires authentication

Show existing by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the time record.

Example:
34
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/time-records/34" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "id": 4,
        "user_id": "9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
        "division_id": 1,
        "capability_id": 1,
        "activity_id": 1,
        "project_id": 1,
        "user": {
            "id": "9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
            "username": "pinnguaq-9b7b60d5-20bd-40cd-ac33-f8bf84749c02",
            "first_name": "Updated John2",
            "last_name": "Updated Do2e",
            "phone": "98765432120",
            "email": "updated.j12ohn.doe@example.com",
            "email_verified_at": null,
            "role": "user",
            "picture": "profile.png",
            "created_at": "2024-03-04T08:47:58.000000Z",
            "updated_at": "2024-03-04T08:47:58.000000Z",
            "deleted_at": null
        },
        "capability": {
            "id": 1,
            "name": "John",
            "created_at": "2024-03-04T08:46:13.000000Z",
            "updated_at": "2024-03-04T08:46:13.000000Z"
        },
        "activity": {
            "id": 1,
            "name": "John",
            "created_at": "2024-03-04T08:46:33.000000Z",
            "updated_at": "2024-03-04T08:46:33.000000Z"
        },
        "project": {
            "id": 1,
            "project_no": "1",
            "name": "John",
            "created_at": "2024-03-04T08:49:22.000000Z",
            "updated_at": "2024-03-04T08:49:22.000000Z"
        },
        "date": "2024-03-02",
        "note": "This is a sample note",
        "time_spent": "2 hours",
        "created_at": "2024-03-04T08:49:38.000000Z",
        "updated_at": "2024-03-04T08:49:38.000000Z"
    }
}

Update

PUT
PATCH
https://time-tracker-backend.pinnguaq.com
/api/admin/time-records/{id}
requires authentication

update by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the time record.

Example:
34

Body Parameters

Example request:
curl --request PUT \
    "https://time-tracker-backend.pinnguaq.com/api/admin/time-records/34" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"division_id\": 20,
    \"capability_id\": 11,
    \"activity_id\": 17,
    \"project_id\": 20,
    \"activity_info\": \"ullam\",
    \"date\": \"2025-04-08T14:56:11\",
    \"note\": \"qui\",
    \"time_spent\": \"nesciunt\",
    \"user_id\": \"est\"
}"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record updated successfully."
    ],
    "data": true
}

Delete

DELETE
https://time-tracker-backend.pinnguaq.com
/api/admin/time-records/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
integer
required

The ID of the time record.

Example:
34
Example request:
curl --request DELETE \
    "https://time-tracker-backend.pinnguaq.com/api/admin/time-records/34" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]

Users

Get All

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/users
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

paginate
boolean

Field to paginate. Defaults to true.

Example:
1
page
integer

Field to paginate. Defaults to null.

Example:
1
perPage
integer

Field to paginate. Defaults to null.

Example:
1
filterBy
string

Field to filterBy. Defaults to null.

Example:
name
filterValue
string

Field to filterValue. Defaults to null.

Example:
Car
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/users?paginate=1&page=1&perPage=1&filterBy=name&filterValue=Car" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "list": [
            {
                "id": "9b978e30-40bf-42d6-97b0-5c205879a375",
                "username": "user",
                "first_name": "Jane",
                "last_name": "Doe",
                "phone": "1234567890",
                "email": "user@example.com",
                "email_verified_at": "2024-03-18T08:57:58.000000Z",
                "profile": "user.jpg",
                "is_active": "1",
                "created_at": "2024-03-18T08:57:58.000000Z",
                "updated_at": "2024-03-18T08:57:58.000000Z",
                "deleted_at": null
            },
            {
                "id": "9b978e2f-b0ad-4bca-8d15-0fb0e3c0af11",
                "username": "user1",
                "first_name": "John",
                "last_name": "Doe",
                "phone": null,
                "email": "user1@example.com",
                "email_verified_at": null,
                "profile": "admin.jpg",
                "is_active": "1",
                "created_at": "2024-03-18T08:57:58.000000Z",
                "updated_at": "2024-03-18T08:57:58.000000Z",
                "deleted_at": null
            }
        ],
        "pagination": {
            "total": 2,
            "per_page": 10,
            "current": 1,
            "first": 1,
            "last": 1,
            "previous": null,
            "next": null,
            "pages": [
                1
            ],
            "from": 1,
            "to": 2
        }
    }
}

Create

POST
https://time-tracker-backend.pinnguaq.com
/api/admin/users
requires authentication

Store new divsion

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request POST \
    "https://time-tracker-backend.pinnguaq.com/api/admin/users" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 201,
    "message": [
        "Record created successfully."
    ],
    "data": [
        {
            "first_name": "Updated John",
            "last_name": "Updated Doe",
            "phone": "9876543210",
            "email": "updated.john.doe@example.com",
            "picture": "profile.png",
            "id": "9b97b9dd-2cd5-4a7c-84b9-9b5ef2600040",
            "username": "user-9b97b9dd-2cd5-4a7c-84b9-9b5ef2600040",
            "updated_at": "2024-03-18T11:00:06.000000Z",
            "created_at": "2024-03-18T11:00:06.000000Z"
        }
    ]
}

Show

GET
https://time-tracker-backend.pinnguaq.com
/api/admin/users/{id}
requires authentication

Show existing by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the user.

Example:
9b97b9dd-2cd5-4a7c-84b9-9b5ef2600040
Example request:
curl --request GET \
    --get "https://time-tracker-backend.pinnguaq.com/api/admin/users/9b97b9dd-2cd5-4a7c-84b9-9b5ef2600040" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record fetched successfully."
    ],
    "data": {
        "id": "9b978e30-40bf-42d6-97b0-5c205879a375",
        "username": "user",
        "first_name": "Jane",
        "last_name": "Doe",
        "phone": "1234567890",
        "email": "user@example.com",
        "email_verified_at": "2024-03-18T08:57:58.000000Z",
        "profile": "user.jpg",
        "is_active": "1",
        "created_at": "2024-03-18T08:57:58.000000Z",
        "updated_at": "2024-03-18T08:57:58.000000Z",
        "deleted_at": null,
        "divisions": [
            {
                "id": 1,
                "name": "John",
                "created_at": "2024-02-28T15:43:48.000000Z",
                "updated_at": "2024-02-28T15:43:48.000000Z",
                "deleted_at": null,
                "pivot": {
                    "user_id": "9b978e30-40bf-42d6-97b0-5c205879a375",
                    "division_id": 1
                }
            },
            {
                "id": 3,
                "name": "Doe",
                "created_at": "2024-02-28T15:43:48.000000Z",
                "updated_at": "2024-02-28T15:43:48.000000Z",
                "deleted_at": null,
                "pivot": {
                    "user_id": "9b978e30-40bf-42d6-97b0-5c205879a375",
                    "division_id": 3
                }
            }
        ]
    }
}

Update

PUT
PATCH
https://time-tracker-backend.pinnguaq.com
/api/admin/users/{id}
requires authentication

update by id

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the user.

Example:
9b97b9dd-2cd5-4a7c-84b9-9b5ef2600040

Body Parameters

Example request:
curl --request PUT \
    "https://time-tracker-backend.pinnguaq.com/api/admin/users/9b97b9dd-2cd5-4a7c-84b9-9b5ef2600040" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"first_name\": \"atoccamibabjehji\",
    \"last_name\": \"vku\",
    \"username\": \"raxsrzuthwqzthomvd\",
    \"phone\": \"lfgzvsvqwzcgirdtapcwz\",
    \"email\": \"bins.clare@example.org\",
    \"password\": \"FYq@3$$yC\"
}"
Example response:
{
    "success": true,
    "status_code": 200,
    "message": [
        "Record updated successfully."
    ],
    "data": true
}

Delete

DELETE
https://time-tracker-backend.pinnguaq.com
/api/admin/users/{id}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the user.

Example:
9b97b9dd-2cd5-4a7c-84b9-9b5ef2600040
Example request:
curl --request DELETE \
    "https://time-tracker-backend.pinnguaq.com/api/admin/users/9b97b9dd-2cd5-4a7c-84b9-9b5ef2600040" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]