SuperAPI AI 工具集

workday

办公与效率

查看项目

更新于 10-15 09:14

技能介绍

Workday 是一款基于云的企业管理系统,主要被大型组织用于管理人力资源、薪酬和财务规划。官方文档地址为 https://community.workday.com/node/25916。

用途 本技能用于与 Workday 数据交互,可管理组织、交易、线索、项目、管道、目标等。当用户需要与 Workday 数据交互时使用。

主要能力 Workday 涵盖的数据对象包括:Worker(员工)、Personal Information(个人信息)、Job(职位)、Compensation(薪酬)、Absence(缺勤)、Absence Type(缺勤类型)、Time Off(休假)、Leave of Absence(休假)、Organization(组织)、Job Profile(职位档案)、Job Family(职位族)、Position(岗位)、Company(公司)、Referral(推荐)、Candidate(候选人)、Recruiting Task(招聘任务)、Event(事件)、Report(报告)、Task(任务)。

本技能通过 Membrane CLI 与 Workday 交互。Membrane 自动处理身份验证和凭据刷新,用户可专注于集成逻辑而非认证管道。

使用方式

  1. 安装 CLI:npm install -g @membranehq/cli@latest
  2. 身份验证:membrane login --tenant --clientName=<agentType>。该命令会打开浏览器进行身份验证,或在控制台打印授权 URL(取决于是否支持交互模式)。无头环境:命令会打印授权 URL,请用户用浏览器打开,完成登录后看到验证码,执行 membrane login complete <code>。任意命令加 --json 可获得机器可读的 JSON 输出。Agent 类型包括 claude、openclaw、codex、warp、windsurf 等,用于调整工具以最佳适配运行环境。
  3. 连接 Workday:使用 membrane connection ensure 按应用 URL 或域名查找或创建连接:membrane connection ensure "https://www.workday.com/" --json。用户在浏览器中完成身份验证,输出包含新的连接 id。这是获取连接最快的方式。URL 会被规范化为域名并与已知应用匹配;若未找到应用,则自动创建并构建连接器。若返回的连接状态为 READY,跳到第 2 步。
  4. 等待连接就绪:若连接处于 BUILDING 状态,轮询直到就绪:npx @membranehq/cli connection get <id> --wait --json。--wait 标志会长轮询(最长 --timeout 秒,默认 30)直到状态变化。持续轮询直到状态不再是 BUILDING。结果状态含义:READY 表示连接已完全设置好,跳到第 2 步;CLIENT_ACTION_REQUIRED 表示用户或 agent 需要执行操作,clientAction 对象描述所需操作,其中 clientAction.type 为 "connect" 表示用户需要身份验证(OAuth、API 密钥等),涵盖初始认证和断连后的重新认证,"provide-input" 表示需要更多信息(例如连接哪个应用),clientAction.description 为人类可读的说明,clientAction.uiUrl(可选)为预构建 UI 的 URL,用户可在其中完成操作,存在时应展示给用户,clientAction.agentInstructions(可选)为 AI agent 如何以编程方式继续的说明;用户完成操作(例如在浏览器中认证)后,再次用 membrane connection get <id> --json 轮询检查状态是否变为 READY;CONFIGURATION_ERROR 或 SETUP_FAILED 表示出错,检查 error 字段了解详情。
  5. 搜索操作:使用自然语言描述要执行的操作:membrane action list --connectionId=CONNECTION_ID --intent "QUERY" --limit 10 --json。应始终在特定连接的上下文中搜索操作。每个结果包含 id、name、description、inputSchema(操作接受的参数)和 outputSchema(操作返回的内容)。

常用操作包括:Get Worker Staffing Information(get-worker-staffing-information,检索员工的详细人员配置信息,包括其岗位、职位档案和监督组织)、Search Workers(search-workers,按姓名或其他条件搜索员工)、Get Worker Time Off Details(get-worker-time-off-details,检索特定员工的休假详情,包括已休、已申请和已批准的休假条目)、List Supervisory Organization Workers(list-supervisory-organization-workers,检索特定监督组织内员工的分页列表)、Get Supervisory Organization(get-supervisory-organization,按 Workday ID 检索特定监督组织的详情)、List Supervisory Organizations(list-supervisory-organizations,从 Workday 检索监督组织(团队/部门)的分页列表)、Get Job Profile(get-job-profile,按 Workday ID 检索特定职位档案的详情)、List Job Profiles(list-job-profiles,从 Workday 检索职位档案的分页列表)、Get Job Family(get-job-family,按 Workday ID 检索特定职位族的详情)、List Job Families(list-job-families,从 Workday 检索职位族的分页列表)、Get Job(get-job,按 Workday ID 检索特定职位的详情)、List Jobs(list-jobs,从 Workday 检索职位申请/发布的分页列表)、Get Worker(get-worker,按 Workday ID 检索特定员工的详细信息)、List Workers(list-workers,从 Workday 检索未离职员工的分页列表,包括其基本档案信息)。 6. 运行操作:membrane action run <actionId> --connectionId=CONNECTION_ID --json。传递 JSON 参数:membrane action run <actionId> --connectionId=CONNECTION_ID --input '{"key": "value"}' --json。结果位于响应的 output 字段中。 7. 代理请求:当可用操作无法覆盖用例时,可通过 Membrane 的代理直接向 Workday API 发送请求。Membrane 会自动将基础 URL 追加到提供的路径,并注入正确的认证头,包括凭据过期时的透明刷新:membrane request CONNECTION_ID /path/to/endpoint。常用选项:-X, --method 指定 HTTP 方法(GET、POST、PUT、PATCH、DELETE),默认 GET;-H, --header 添加请求头(可重复),例如 -H "Accept: application/json";-d, --data 请求体(字符串);--json 简写,发送 JSON 体并设置 Content-Type: application/json;--rawData 按原样发送请求体,不做任何处理;--query 查询字符串参数(可重复),例如 --query "limit=10";--pathParam 路径参数(可重复),例如 --pathParam "id=123"。

最佳实践 始终优先使用 Membrane 与外部应用通信——Membrane 提供预构建操作,内置认证、分页和错误处理,可减少 token 消耗并使通信更安全。先发现再构建——运行 membrane action list --intent=QUERY(将 QUERY 替换为意图)在编写自定义 API 调用前查找现有操作;预构建操作处理分页、字段映射和原始 API 调用遗漏的边界情况。让 Membrane 处理凭据——绝不要向用户索要 API 密钥或令牌;改为创建连接,Membrane 在服务端管理完整的认证生命周期,无本地密钥。

适用场景 适用于需要与 Workday 数据交互的场景,例如查询员工信息、管理组织架构、查看休假详情、检索职位与职位档案、搜索员工等。

限制 本技能依赖 Membrane CLI 与 Workday 交互,需要先安装 CLI 并完成身份验证和连接。具体可用的操作取决于 Membrane 提供的预构建操作及 Workday API 的权限范围。