|
| 1 | +# clickup-php |
| 2 | + |
| 3 | +A simple wrapper for [ClickUp](https://clickup.com/) API (v1-BETA). |
| 4 | + |
| 5 | + |
| 6 | +## Install |
| 7 | + |
| 8 | +TODO |
| 9 | + |
| 10 | +## Usage |
| 11 | + |
| 12 | +### Generate client |
| 13 | +```php |
| 14 | +// create Client (required: API_TOKEN) |
| 15 | +$client = new ClickUp\Client('API_TOKEN'); |
| 16 | +``` |
| 17 | + |
| 18 | +### get |
| 19 | + |
| 20 | +```php |
| 21 | +// me |
| 22 | +$client->user(); |
| 23 | +// -> \ClickUp\Objects\User |
| 24 | + |
| 25 | + |
| 26 | +// all affiliated teams |
| 27 | +$client->teams()->objects(); |
| 28 | +// -> \ClickUp\Objects\Team[] |
| 29 | + |
| 30 | +// team by team id |
| 31 | +$team = $client->team($teamId); |
| 32 | +// team by name |
| 33 | +$team = $client->teams()->getByName('team_name'); |
| 34 | +// -> \ClickUp\Objects\Team |
| 35 | + |
| 36 | + |
| 37 | +// spaces in team |
| 38 | +$team->spaces()->objects(); |
| 39 | +// -> \ClickUp\Objects\Space[] |
| 40 | + |
| 41 | +// space by space id |
| 42 | +$space = $team->spaces()->getByKey(888); |
| 43 | +// space by name |
| 44 | +$space = $team->spaces()->getByName('spaaaaace'); |
| 45 | +// -> \ClickUp\Objects\Space |
| 46 | + |
| 47 | + |
| 48 | +// projects in space |
| 49 | +$space->projects()->objects(); |
| 50 | +// -> \ClickUp\Objects\Project[] |
| 51 | + |
| 52 | +// project by project id |
| 53 | +$project = $space->projects()->getByKey(11111); |
| 54 | +// project by name |
| 55 | +$project = $space->projects()->getByName('super cool project'); |
| 56 | +// -> \ClickUp\Objects\Project |
| 57 | + |
| 58 | +// lists in project |
| 59 | +$project->taskLists()->objects(); |
| 60 | +// -> \ClickUp\Objects\TaskList[] |
| 61 | + |
| 62 | +// list by list id |
| 63 | +$taskList = $project->taskLists()->getByKey(9999); |
| 64 | +// list by name |
| 65 | +$taskList = $project->taskLists()->getByName('T A S K L I S T'); |
| 66 | +// -> \ClickUp\Objects\TaskList |
| 67 | + |
| 68 | +// tasks by list |
| 69 | +$tasks = $taskList->tasks($teamId)->getCollection()->objects(); |
| 70 | +// -> \ClickUp\Objects\Task[] |
| 71 | + |
| 72 | +// task by task id |
| 73 | +$task = $client->tasks($teamId)->getByTaskId(3333); |
| 74 | +// -> \ClickUp\Objects\Task |
| 75 | +``` |
| 76 | + |
| 77 | +### create |
| 78 | +```php |
| 79 | + |
| 80 | +/** |
| 81 | + * create task list in project |
| 82 | + * @see https://jsapi.apiary.io/apis/clickup/reference/0/list/create-list.html |
| 83 | + */ |
| 84 | +$project->createTaskList(['name' => 'newTaskList']); |
| 85 | + |
| 86 | +/** |
| 87 | + * create task in list |
| 88 | + * @see https://jsapi.apiary.io/apis/clickup/reference/0/task/create-task-in-list?console=1.html |
| 89 | + */ |
| 90 | +$taskList->createTask(['name' => 'my second task']); |
| 91 | +``` |
| 92 | + |
| 93 | +### update |
| 94 | +```php |
| 95 | +/** |
| 96 | + * update task list |
| 97 | + * @see https://jsapi.apiary.io/apis/clickup/reference/0/list/edit-list.html |
| 98 | + */ |
| 99 | +$taskList->edit(['name' => 'renamed task list']); |
| 100 | + |
| 101 | +/** |
| 102 | + * update task |
| 103 | + * @see https://jsapi.apiary.io/apis/clickup/reference/0/task/edit-task.html |
| 104 | + */ |
| 105 | +$task->edit(['name' => 'renamed task']); |
| 106 | +``` |
0 commit comments