Install
openclaw skills install lightcloud-aiIntegrate with Qingyun/Lightcloud (轻云) API to manage form documents - fetch access tokens, retrieve, create, update, and delete form data. Use this skill whe...
openclaw skills install lightcloud-aiProvides seamless integration with Qingyun/Lightcloud (轻云) open API using curl/PowerShell commands that work cross-platform without requiring Python. Supports full CRUD operations on form documents.
# Download and install the skill
curl -L -o lightcloud-api.skill https://your-domain.com/skills/lightcloud-api.skill
# Or if you have the skill file locally
cp lightcloud-api.skill ~/.claude/skills/
wget -O lightcloud-api.skill https://your-domain.com/skills/lightcloud-api.skill
cp lightcloud-api.skill ~/.claude/skills/
lightcloud-api.skill file~/.claude/skills/%USERPROFILE%\.claude\skills\This skill is compatible with OpenClaw, the popular open-source Claude Code alternative.
# Navigate to OpenClaw skills directory
cd ~/.openclaw/skills/
# Download the skill
curl -L -O https://your-domain.com/skills/lightcloud-api.skill
# Or copy from local
cp /path/to/lightcloud-api.skill .
# Restart OpenClaw to load the skill
After installation, test with natural language:
"获取轻云的access token"
"从轻云获取表单数据"
Test the skill is working:
# In Claude Code or OpenClaw, simply say:
"帮我获取轻云的access token"
If the skill responds with API call instructions, it's working correctly.
To remove the skill:
rm ~/.claude/skills/lightcloud-api.skill
# Or on Windows:
del %USERPROFILE%\.claude\skills\lightcloud-api.skill
First, generate a timestamp (must be within 3 minutes):
timestamp=$(($(date +%s) * 1000))
Then call the API:
curl -X POST "https://www.yunzhijia.com/gateway/oauth2/token/getAccessToken" \
-H "Content-Type: application/json" \
-d '{
"appId": "YOUR_APP_ID",
"eid": "YOUR_EID",
"secret": "YOUR_SECRET",
"timestamp": '$timestamp',
"scope": "team"
}'
First, generate a timestamp:
$timestamp = [int64](Get-Date -UFormat %s) * 1000
Then call the API:
$headers = @{
"Content-Type" = "application/json"
}
$body = @{
appId = "YOUR_APP_ID"
eid = "YOUR_EID"
secret = "YOUR_SECRET"
timestamp = $timestamp
scope = "team"
} | ConvertTo-Json
Invoke-RestMethod -Uri "https://www.yunzhijia.com/gateway/oauth2/token/getAccessToken" `
-Method POST -Headers $headers -Body $body
Required parameters:
appId: Light application ID (轻应用id)eid: Team ID (团队id)secret: Application secret (轻应用secret)timestamp: Current Beijing time, Unix timestamp in milliseconds (13 digits), valid for 3 minutesscope: Authorization level (use "team")Response:
{
"data": {
"accessToken": "xxx",
"expireIn": 7200,
"refreshToken": "xxx"
},
"errorCode": 0,
"success": true
}
curl -X POST "https://www.yunzhijia.com/gateway/lightcloud/data/list?accessToken=YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"eid": "YOUR_EID",
"formCodeId": "YOUR_FORM_CODE_ID",
"formInstIds": ["FORM_ID_1", "FORM_ID_2"]
}'
$headers = @{
"Content-Type" = "application/json"
}
$body = @{
eid = "YOUR_EID"
formCodeId = "YOUR_FORM_CODE_ID"
formInstIds = @("FORM_ID_1", "FORM_ID_2")
} | ConvertTo-Json
Invoke-RestMethod -Uri "https://www.yunzhijia.com/gateway/lightcloud/data/list?accessToken=YOUR_ACCESS_TOKEN" `
-Method POST -Headers $headers -Body $body
Required parameters:
accessToken: Access token from step 1 (in URL query parameter)eid: Workspace eid (工作圈eid)formCodeId: Form code ID (表单codeId)formInstIds: Array of form instance IDs (单据id数组)Optional parameters:
oid: Query user openid (查询人openid)curl -X POST "https://www.yunzhijia.com/gateway/lightcloud/data/batchDelete?accessToken=YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"eid": "YOUR_EID",
"formCodeId": "YOUR_FORM_CODE_ID",
"formInstIds": ["FORM_ID_1", "FORM_ID_2"]
}'
$headers = @{
"Content-Type" = "application/json"
}
$body = @{
eid = "YOUR_EID"
formCodeId = "YOUR_FORM_CODE_ID"
formInstIds = @("FORM_ID_1", "FORM_ID_2")
} | ConvertTo-Json
Invoke-RestMethod -Uri "https://www.yunzhijia.com/gateway/lightcloud/data/batchDelete?accessToken=YOUR_ACCESS_TOKEN" `
-Method POST -Headers $headers -Body $body
Required parameters:
accessToken: Access token (in URL)eid: Workspace eid (工作圈eid)formCodeId: Form code ID (表单codeId)formInstIds: Array of form instance IDs to delete (单据id数组)Optional parameters:
oid: Deleter openid (删除人openid) - required for workflow documentscurl -X POST "https://www.yunzhijia.com/gateway/lightcloud/data/batchSave?accessToken=YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"eid": "YOUR_EID",
"formCodeId": "YOUR_FORM_CODE_ID",
"oid": "YOUR_OID",
"data": [
{
"formInstId": "FORM_INST_ID",
"widgetValue": {
"_S_TITLE": "Document Title",
"Te_0": "Text field value"
},
"details": {
"Dd_0": {
"widgetValue": [
{
"_id_": "1",
"Te_0": "Detail field value"
}
]
}
}
}
]
}'
$headers = @{
"Content-Type" = "application/json"
}
$body = @{
eid = "YOUR_EID"
formCodeId = "YOUR_FORM_CODE_ID"
oid = "YOUR_OID"
data = @(
@{
formInstId = "FORM_INST_ID"
widgetValue = @{
"_S_TITLE" = "Document Title"
"Te_0" = "Text field value"
}
details = @{
"Dd_0" = @{
widgetValue = @(
@{
"_id_" = "1"
"Te_0" = "Detail field value"
}
)
}
}
}
)
} | ConvertTo-Json -Depth 10
Invoke-RestMethod -Uri "https://www.yunzhijia.com/gateway/lightcloud/data/batchSave?accessToken=YOUR_ACCESS_TOKEN" `
-Method POST -Headers $headers -Body $body
Required parameters:
accessToken: Access token (in URL)eid: Workspace eid (工作圈eid)formCodeId: Form code ID (表单codeId)oid: Creator openid (新增人openid)data: Array of form instances (单据实例数组)Data structure:
formInstId: Form instance ID - required for updates, omit for new documentswidgetValue: Main form fields (主表单控件字段)
_S_TITLE: Document titledetails: Detail/form grid fields (明细控件字段)
widgetValue: Array of detail rows
_id_: Row ID (required)"获取轻云的access token" → Provide user with curl/PowerShell command with placeholders for credentials
"从轻云获取单据数据" → First help get access token, then provide form retrieval command
"帮我调用轻云API获取表单数据" → Two-step process: authenticate, then fetch forms using appropriate platform commands
"删除轻云单据" → Provide batch delete command with user's access token and form IDs
"创建新的轻云表单" → Help construct batchSave request with widget values
"更新轻云表单数据" → Use batchSave with formInstId to update existing documents
"批量操作轻云单据" → Determine operation type (fetch/delete/save) and execute appropriate API call
expireIn field (typically 7200 seconds)success field in responseFor quick execution, use these complete one-liners:
curl -X POST "https://www.yunzhijia.com/gateway/oauth2/token/getAccessToken" -H "Content-Type: application/json" -d '{"appId":"YOUR_APP_ID","eid":"YOUR_EID","secret":"YOUR_SECRET","timestamp":'$(($(date +%s) * 1000))',"scope":"team"}'
$body = @{appId="YOUR_APP_ID";eid="YOUR_EID";secret="YOUR_SECRET";timestamp=[int64](Get-Date -UFormat %s)*1000;scope="team"} | ConvertTo-Json; Invoke-RestMethod -Uri "https://www.yunzhijia.com/gateway/oauth2/token/getAccessToken" -Method POST -Headers @{"Content-Type"="application/json"} -Body $body
curl -X POST "https://www.yunzhijia.com/gateway/lightcloud/data/batchDelete?accessToken=YOUR_TOKEN" -H "Content-Type: application/json" -d '{"eid":"YOUR_EID","formCodeId":"YOUR_FORM_ID","formInstIds":["ID1","ID2"]}'
$body = @{eid="YOUR_EID";formCodeId="YOUR_FORM_ID";formInstIds=@("ID1","ID2")} | ConvertTo-Json; Invoke-RestMethod -Uri "https://www.yunzhijia.com/gateway/lightcloud/data/batchDelete?accessToken=YOUR_TOKEN" -Method POST -Headers @{"Content-Type"="application/json"} -Body $body
For detailed API documentation including:
See references/api_reference.md
✅ Fully Compatible
~/.claude/skills/✅ Fully Compatible
~/.openclaw/skills/✅ Standards Compliant
Skill not loading?
# Check skill file exists
ls -la ~/.claude/skills/lightcloud-api.skill
# Verify file integrity
file ~/.claude/skills/lightcloud-api.skill
# Should show: Zip archive data
# Reinstall if needed
rm ~/.claude/skills/lightcloud-api.skill
# Then reinstall using method above
OpenClaw not recognizing skill?
# Ensure OpenClaw skills directory exists
mkdir -p ~/.openclaw/skills
# Copy skill to OpenClaw directory
cp ~/.claude/skills/lightcloud-api.skill ~/.openclaw/skills/
# Restart OpenClaw
Token expired?
Timestamp errors?
Platform detection wrong?
MIT License - Free to use, modify, and distribute