edsol/php-clickup-api-client

ClickUp V2 API客户端(非官方)

dev-main 2024-09-02 07:28 UTC

This package is auto-updated.

Last update: 2024-09-02 08:47:47 UTC


README

非官方 ClickUp API客户端
查看 ClickUp Api文档

License: AGPL v3

要求

您需要一个ClickUp令牌,使用 官方指南 创建一个

安装

composer require "edsol/clickup-php"

实现

团队

  • 阅读
  • 获取空间

空间

  • 阅读
  • 获取标签

文件夹

  • 创建
  • 阅读
  • 创建列表

任务

  • 创建
  • 阅读
  • 更新
  • 删除
  • 添加附件/们
  • 添加分配者/们
  • 获取成员

    评论

    • 阅读
    • 创建
    • 更新
    • 删除

Webhook

  • 列表
  • 创建
  • 更新
  • 删除

用法

初始化客户端

$clickup = new \ClickUpClient\Client('CLICK_UP_API_TOKEN');

团队

$clickup->team()->all();
$clickup->team()->spaces();
$clickup->team()->user('USER_ID');

空间

$clickup->space()->get("SPACE_ID");
$clickup->space('SPACE_ID')->tags();
$clickup->space('SPACE_ID')->folders();
$clickup->space('SPACE_ID')->folderlessLists();

文件夹

$clickup->folder("SPACE_ID")->lists();
$clickup->folder("FOLDER_ID")->get();
$clickup->folder()->get("FOLDER_ID");
$clickup->folder("SPACE_ID")->create("FOLDER_NAME");
$clickup->folder("SPACE_ID")->createList("LIST_NAME");

列表

$clickup->taskList("LIST_ID")->get();
$clickup->taskList("LIST_ID")->getTasks();
$clickup->taskList("LIST_ID")->comments();
$clickup->taskList("LIST_ID")->members();
$clickup->taskList("LIST_ID")->getCustomFields();

任务

$clickup->task("TASK_ID")->get();
$clickup->task("TASK_ID")->comments();
$clickup->task("TASK_ID")->members();

$clickup->task("TASK_ID")->add([
    "name": "Updated Task Name",
    "description": "Updated Task Content",
]);
$clickup->task("TASK_ID")->delete();
$clickup->task("TASK_ID")->update([
    "name": "Updated Task Name",
    "description": "Updated Task Content"
]);

$clickup->task("TASK_ID")->addAssignees([
    MEMBER_ID_1,
    MEMBER_ID_2,
]);
$clickup->task("TASK_ID")->addAssignee(MEMBER_ID);

$attachment = new \ClickUpClient\Objects\Attachment([
    'contents' => \GuzzleHttp\Psr7\Utils::tryFopen('FILE_PATH', 'r'),
    'filename' => 'filename.txt'
]);
$clickup->task("TASK_ID")->addAttachment($attachment);

$attachments = new \ClickUpClient\Objects\AttachmentCollection([
    [
        'contents' => \GuzzleHttp\Psr7\Utils::tryFopen('FILE_PATH', 'r'),
        'filename' => 'filename1.txt'
    ],
    [
        'contents' => \GuzzleHttp\Psr7\Utils::tryFopen('FILE_PATH', 'r'),
        'filename' => 'filename2.txt'
    ],
]);
$clickup->task("TASK_ID")->addAttachments($attachments);
$clickup->task("TASK_ID")->setCustomField("FIELD_ID","NEW_FIELD_VALUE");
$clickup->task("TASK_ID")->deleteCustomField("FIELD_ID");

评论

$clickup->comment('COMMENT_ID')->update([
    'comment_text' => "update comment text"
]);
$clickup->comment()->deleteComment('COMMENT_ID');

Webhook

$clickup->team('TEAM_ID')->webhooks();
$clickup->team('TEAM_ID')->createWebhook([
    'endopint' => 'ENDPOINT_URL',
    'events' => [
        "taskCreated",
        "taskUpdated",
        "taskDeleted",
    ],
]);
$clickup->webhook('WEBHOOK_ID')->updateWebhook([
    'endopint' => 'ENDPOINT_URL',
    'events' => [
        "taskCreated",
        "taskUpdated",
        "taskDeleted",
    ],
]);
$clickup->webhook('WEBHOOK_ID')->delete();