mindtwo/laravel-clickup-api

一个用于Laravel的PHP Composer包,旨在无缝集成Laravel应用程序与ClickUp系统,以实现流畅的项目管理和任务跟踪。

1.0 2024-04-05 07:52 UTC

This package is auto-updated.

Last update: 2024-09-08 07:26:27 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

此Laravel包提供了一种便捷高效的方式将您的Laravel应用程序与ClickUp(一个流行的项目管理工具)集成。设计用于易于使用,它提供了一种无缝连接,使您的Laravel应用程序能够与ClickUp的API进行交互,以实现任务管理、项目跟踪等。无论您是想自动化项目更新、同步任务还是增强团队协作,这个包都能简化流程,使您能够直接从Laravel应用程序中轻松地组织和管理项目。

请注意:此包目前仅支持ClickUp的一小部分端点,特别是与任务、附件和自定义字段相关的端点。我们正在积极扩展我们对ClickUp API的支持范围,包括更多的端点和功能。如果您需要集成我们的包尚未涵盖的ClickUp方面,我们感谢您的耐心,并欢迎贡献或建议以增强我们的产品。

安装

您可以通过composer安装此包

composer require mindtwo/laravel-clickup-api

您可以使用以下命令发布配置文件

php artisan vendor:publish --tag="laravel-clickup-api-config"

这是已发布的 配置文件 的内容。

环境配置

为确保此Laravel包与ClickUp的正常运行,您必须在应用程序的环境配置中设置 CLICKUP_API_KEY 常量,以提供您的ClickUp API密钥。以下是查找您的ClickUp API密钥的方法

  1. 登录您的ClickUp帐户,并单击左下角的个人头像以导航到您的个人资料设置。
  2. 从侧边栏菜单中选择“应用程序”。
  3. 滚动到“API”部分,找到“生成”按钮以创建新的API密钥。如果您已经生成了一个,它将在此处显示。
  4. 复制API密钥,并将其添加到您的Laravel .env 文件中,如下所示
    CLICKUP_API_KEY=your_clickup_api_key_here
    

请确保将 your_clickup_api_key_here 替换为您从ClickUp获得的实际API密钥。此步骤对于认证您的Laravel应用程序对ClickUp API的请求至关重要。

使用方法

任务端点使用

Laravel ClickUp API包中的 Task 类提供了一个简单的接口,用于与ClickUp的任务相关API端点进行交互。此类允许您直接从您的Laravel应用程序中列出、查看、创建、更新和删除ClickUp中的任务。以下是使用该类的快速概述

  • 列出任务:通过提供列表ID检索特定列表中的所有任务。
  • 显示任务详情:使用任务ID获取特定任务的详细信息。
  • 创建任务:通过提供列表ID和任务详情数组在列表中创建新任务。
  • 更新任务:通过提供任务ID和要更新的详情更新现有任务。
  • 删除任务:使用任务ID删除任务。

如何使用

  1. 创建任务:要创建列表中的新任务,您可以使用 create 方法。传递任务应创建的列表ID以及指定任务详情的数据数组。

    $taskDetails = [
        'name' => 'New Task', // Mandatory
        'description' => 'Task description', // Optional
        // Add other task details as needed
    ];
    
    $task = app(Mindtwo\LaravelClickUpApi\Endpoints\Task::class)->create($listId, $taskDetails);
  2. 获取列表中的任务:要获取列表中的任务,请使用带有列表ID和可选查询参数数组的index方法来过滤任务。

    $tasks = app(Mindtwo\LaravelClickUpApi\Endpoints\Task::class)->index($listId, []);
  3. 显示任务详情:要获取关于任务的详细信息,请使用带有任务ID的show方法。

    $task = app(Mindtwo\LaravelClickUpApi\Endpoints\Task::class)->show($taskId);
  4. 更新任务:要更新现有任务,请使用带有任务ID和数据数组的update方法,其中包含您希望更新的详细信息。

    $updatedDetails = [
        'name' => 'Updated Task Name',
        // Other task details you want to update
    ];
    
    $updatedTask = app(Mindtwo\LaravelClickUpApi\Endpoints\Task::class)->update($taskId, $updatedDetails);
  5. 删除任务:要删除任务,请使用带有任务ID的delete方法。

    $response = app(Mindtwo\LaravelClickUpApi\Endpoints\Task::class)->delete($taskId);

以下示例演示了您可以通过Laravel应用程序在ClickUp中执行的基本任务操作,为将任务管理功能集成到工作流程中提供了一种强大的方式。

附件端点使用

此Laravel包中的Attachment类简化了在ClickUp任务中创建附件的过程。通过使用create方法,用户可以轻松上传文件并将其与特定任务的ID相关联。此功能增强了任务管理流程,使任务结构更加详细和资源丰富。

要使用此端点,首先确保您有一个要附加文件的任务ID($taskId),并根据ClickUp API附件规范准备数据($data)。$data应包含符合ClickUp对附件上传预期的文件信息结构。

以下是如何使用Attachment端点的基本示例

<?php

// Assuming $taskId holds the ID of the task you want to attach a file to
// and $data contains the file and other required information as an array
$taskId = 'your_task_id_here';
$data = [
    [
        'name' => 'file',
        'contents' => fopen('/path/to/your/file', 'r'),
        'filename' => 'filename.ext',
    ],
    // Add other data fields as required by the ClickUp API for an attachment
];

// Creating an attachment to a task
app(Mindtwo\LaravelClickUpApi\Endpoints\Attachment::class)->create($taskId, $data);

此简单界面抽象了处理多部分文件上传和ClickUp API的复杂性,让您可以专注于构建应用程序。请记住将'your_task_id_here'替换为您要针对的实际任务ID,并根据您的需求调整$data数组,包括正确的文件路径和其他必要信息。

自定义字段端点使用

我们Laravel ClickUp API包中的CustomField类是一个专门的端点,用于与ClickUp中的自定义字段交互。自定义字段对于定制ClickUp列表以符合项目特定要求至关重要,允许添加独特的数据字段到任务中。利用CustomField类,您可以通过提供特定列表的ID,轻松检索与特定列表关联的所有自定义字段。

以下是如何使用CustomField端点获取自定义字段的快速指南

// Import the CustomField class at the top of your PHP file
use Mindtwo\LaravelClickUpApi\Endpoints\CustomField;

// Assuming you have a list ID, you can retrieve its custom fields like so:
$listId = 'your_list_id_here'; // Replace with your actual list ID

// Fetch the custom fields for the specified list
$customFields = app(CustomField::class)->show($listId);

// $customFields now contains the response from ClickUp API

确保将'your_list_id_here'替换为您要检索自定义字段的实际列表ID。这种方法简单直观,允许您将ClickUp中的自定义字段数据直接集成到Laravel应用程序中,增强数据管理和项目定制能力。

ListCustomFieldsCommand

ListCustomFieldsCommand类是Laravel ClickUp API包提供的Laravel控制台命令,它允许用户列出ClickUp中指定列表的所有可用自定义字段。通过执行命令php artisan clickup:list-custom-fields,用户可以直接通过--list选项提供列表ID或映射键,或者将被提示输入它。此命令对于需要快速查看ClickUp列表中自定义字段配置的开发人员和管理员特别有用,包括字段ID、名称、类型、配置选项、创建日期、访客可见性以及字段是否必需等详细信息。该命令以有组织的表格格式输出这些信息,方便直接从终端阅读和分析。

测试

composer test

变更日志

请参阅CHANGELOG获取有关最近更改的更多信息。

贡献

请参阅CONTRIBUTING获取详细信息。

安全漏洞

请查阅我们的安全策略了解如何报告安全漏洞。

致谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件