‭报告API

Last updated: October 14, 2025

SkillUp的报告API允许您以编程方式提取技能信号、徽章和认证数据。这些API使您能够将学习洞察与人力资源系统集成,构建定制化报告,并将学习成果与业务影响联系起来。

注意:只有管理员才能生成访问这些API的凭据。

可用端点

端点

描述

凭据API

返回SkillUp中所有可用徽章和认证的列表。

用户API

返回用户数据,包括学习进度、徽章和已获得的认证。

配置报告API‬

SkillUp API使用OAuth 2.0客户端凭据流程进行安全访问。只有授权系统才能请求和检索报告信息。

要配置报告API:

‭步骤1:生成OAuth凭据‬

ReportingAPIs (2).gif
  1. ‭登录 SkillUp 使用管理员账户。

  2. 点击右上角的个人资料图标,然后选择 设置

  3. 点击 注册新应用

  4. 输入您的应用程序名称。

  5. 点击 注册应用

  6. 客户端ID客户端密钥 复制到剪贴板,或点击 下载JSON 以将凭据保存为文件。

    重要提示: 客户端密钥仅在生成过程中显示一次。您必须在关闭对话框之前安全存储它,因为您无法再次检索它。

您的应用程序现已成功注册,您可以开始进行API请求。

‭第 2 步:请求访问令牌‬

‭作为安全措施,您必须首先通过向 /v1/oauth2/token端点发出POST请求来获取访问令牌。

授权头必须包含用Base64格式编码的您的客户端凭据。

  1. 使用冒号(:)组合您的客户端ID和客户端密钥。
    示例:client_id:client_secret

  2. 使用Base64对字符串进行编码。

  3. 在编码后的字符串前添加前缀Basic,以创建授权头。
    示例:Basic <base64_encoded_string>

注意: 访问令牌(JWT)在10分钟内有效。到期后,重复这些步骤以请求新的令牌。

示例

如果 client_id = "abc123" 且 client_secret = "def456"
组合:“abc123:def456”

Base64编码:“YWJjMTIzOmRlZjQ1Ng==”

最终头部:“Basic YWJjMTIzOmRlZjQ1Ng==”

请求

curl -X POST https://www.hackerrank.com/skillup/api/v1/oauth2/token \
-H "Authorization: Basic <base64_encoded_credentials>" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials"

请求头

请求头

必需

Authorization

Basic <base64_encoded_credentials>

Content-Type

application/x-www-form-urlencoded

请求参数

参数

必需

grant_type

client_credentials

响应

{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"expires_in": 600
}

字段

类型

描述

access_token

字符串

API认证的访问令牌

expires_in

整数

令牌有效期(秒)(600秒)

‭步骤3:访问SkillUp API‬

‭获得有效的访问令牌后,使用它调用SkillUp报告API。

在请求的Authorization头中包含令牌。

示例请求

curl -X GET https://www.hackerrank.com/skillup/api/v2/credentials \
-H "Authorization: Bearer <access_token>"

错误处理

状态码

错误

描述

400

错误请求

参数缺失或无效

401

未授权

访问令牌无效或已过期

403

禁止访问

令牌缺少所需权限

429

请求过多

在短时间内发出过多请求

最佳实践

  • 安全存储凭据。切勿在客户端代码中暴露客户端凭据。

  • 令牌有效期为10分钟。缓存并重用访问令牌,而不是为每个请求生成新的令牌

  • 在当前令牌过期之前请求新的令牌。

速率限制

请求类型

限制

令牌请求

每秒1次请求

API请求

每秒1次请求

欲了解更多信息,请联系 skillup-support@hackerrank.com。‭