sure-api
Use the we-promise/sure REST API with X-Api-Key auth. Covers accounts, transactions, categories, tags, merchants, imports, holdings, trades, valuations, chats, official docs URLs, self-update workflow from upstream OpenAPI, and ClawHub publish readiness.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/ashanzzz/sure-apiSure API
Use this skill when the user asks to:
- operate Sure through its API
- inspect accounts, transactions, categories, tags, merchants, imports, holdings, trades, valuations, or chats
- create/update/delete supported Sure resources safely
- verify whether the upstream Sure API changed
- keep this skill in sync with the official Sure API docs
Official source-of-truth URLs
These are the URLs the agent should trust first when updating or validating this skill:
- Sure repo:
https://github.com/we-promise/sure - API docs directory:
https://github.com/we-promise/sure/tree/main/docs/api - OpenAPI spec page:
https://github.com/we-promise/sure/blob/main/docs/api/openapi.yaml - Raw OpenAPI download used by the update script:
https://raw.githubusercontent.com/we-promise/sure/main/docs/api/openapi.yaml
If behavior and local scripts disagree, re-check the upstream OpenAPI first.
Local config
Read secrets from secure env only:
SURE_BASE_URLSURE_API_KEY
Single source of truth: secure/api-fillin.env
Never paste the API key into chat or into non-secure files.
Auth
Default auth header:
X-Api-Key: <SURE_API_KEY>
Note: the current upstream OpenAPI snapshot also shows Authorization header notes on some valuation endpoints. Treat upstream OpenAPI as authoritative if those endpoints behave differently in practice.
Skill layout
skills/sure-api/
├── SKILL.md
├── references/
│ ├── openapi.yaml
│ └── api_endpoints_summary.md
└── scripts/
├── sure_api_request.sh
├── sure_api_smoke.sh
├── sure_api_cli.js
├── sure_openapi_update.sh
├── sure_openapi_summarize.js
└── sure_api_acceptance.sh
Capability model
This skill has two layers:
Layer 1: high-level wrapped commands
Use these first for common operations.
Implemented in scripts/sure_api_cli.js:
accounts:listcategories:listtags:listtags:createtags:updatetags:deletemerchants:listtransactions:listtransactions:gettransactions:createtransactions:updatetransactions:deleteimports:listholdings:listtrades:list
Layer 2: raw official endpoint access
For any official endpoint not yet wrapped by the high-level CLI, use:
bash skills/sure-api/scripts/sure_api_request.sh <METHOD> <PATH> [curl args...]
This means the skill can still operate against official endpoints such as:
- merchant detail
- holding detail
- import detail / create import
- trade create / retrieve / update / delete
- valuation create / retrieve / update
- chats list / create / retrieve / update / delete / send message / retry
- other official endpoints present in
references/openapi.yaml
Quick start
Smoke test
bash skills/sure-api/scripts/sure_api_smoke.sh
Common wrapped commands
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-ashanzzz-sure-api": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
Ashan Skill Creator
Skill by ashanzzz
vikunja-task-api
Install: clawhub install ashanzzz-vikunja-task-api Full Vikunja v2 API integration — projects, tasks, labels, teams, views, comments, attachments, bulk operations, and more.
Verified Research
Skill by ashanzzz
unraid-xml-generator
Generate Unraid DockerMan user template XML files from structured input. Use when: the user asks to "生成 Unraid XML 模板", "创建 Docker 模板", "为 XXX 写 Unraid 模板", or "生成 DockerMan XML" for any container. Key technique learned (2026-04-02): Unraid DockerMan templates support <ExtraParams>--entrypoint /bin/sh</ExtraParams> + <PostArgs> to bypass the container image's ENTRYPOINT. This allows overriding any image's startup command from the template. Config variables use: <Config Name="..." Target="ENV_VAR" Default="..." Type="..." Display="..." Required="..." Mask="..."> These become environment variables passed into the container. The skill generates a complete, valid XML and optionally deploys it to /boot/config/plugins/dockerMan/templates-user/my-<name>.xml (requires user confirmation before writing).
unraid-xml-generator
Generate Unraid DockerMan user template XML files from structured input. Use when: the user asks to "生成 Unraid XML 模板", "创建 Docker 模板", "为 XXX 写 Unraid 模板", or "生成 DockerMan XML" for any container. Key technique learned (2026-04-02): Unraid DockerMan templates support <ExtraParams>--entrypoint /bin/sh</ExtraParams> + <PostArgs> to bypass the container image's ENTRYPOINT. This allows overriding any image's startup command from the template. Config variables use: <Config Name="..." Target="ENV_VAR" Default="..." Type="..." Display="..." Required="..." Mask="..."> These become environment variables passed into the container. The skill generates a complete, valid XML and optionally deploys it to /boot/config/plugins/dockerMan/templates-user/my-<name>.xml (requires user confirmation before writing).