Install
openclaw skills install builder-dataQuery builder reputation data via Talent Protocol API. Get Builder Rank, verify humans, resolve identities (Twitter/Farcaster/GitHub/wallet), search by locat...
openclaw skills install builder-dataQuery professional data from Talent Protocol - a platform that tracks builders
Use this skill to:
| Variable | Required | Description | Get it at |
|---|---|---|---|
TALENT_API_KEY | Yes | API key for Talent Protocol (read access to profile/identity data) | https://talent.app/~/settings/api |
GITHUB_TOKEN | No | Personal access token for higher GitHub rate limits (60/hr → 5,000/hr) | https://github.com/settings/tokens |
Base URL: https://api.talentprotocol.com
curl -H "X-API-KEY: $TALENT_API_KEY" "https://api.talentprotocol.com/..."
| Endpoint | Purpose |
|---|---|
/search/advanced/profiles | Search profiles by identity, tags, rank, verification |
/profile | Get profile by ID |
/accounts | Get connected wallets, GitHub, socials |
/socials | Get social profiles + bios |
/credentials | Get data points (earnings, followers, hackathons, etc.) |
/human_checkmark | Check if human-verified (optional, don't use by default) |
/scores | Get ranks (default) or scores (only when explicitly asked) |
Identity lookup:
query[identity]={handle}&query[identity_type]={twitter|github|farcaster|ens|wallet}
Filters (all optional, only use when relevant to the query):
query[tags][]=developer # filter by tag (developer, designer, etc.)
query[verified_nationality]=true # only verified nationality
query[human_checkmark]=true # only human-verified (reduces results significantly)
Sorting:
sort[score][order]=desc&sort[score][scorer]=Builder%20Score
Pagination: page=1&per_page=250 (max 250)
[ = %5B, ] = %5D, Space = %20
Default → Ranks (always use unless user asks for scores):
builder_score.rank_position - Primary rank metricscores[].rank_position where slug = "builder_score" - Latest rankOnly when user explicitly asks for scores:
builder_score.points - Score value
scores[].points - Individual score values
location - User-entered location (returned in response)
DO NOT USE query[standardized_location]=Country - doesn't work.
USE customQuery with regex:
curl -X POST -H "X-API-KEY: $TALENT_API_KEY" -H "Content-Type: application/json" \
"https://api.talentprotocol.com/search/advanced/profiles" \
-d '{
"customQuery": {
"regexp": {
"standardized_location": {
"value": ".*argentina.*",
"case_insensitive": true
}
}
},
"sort": { "score": { "order": "desc", "scorer": "Builder Score" } },
"perPage": 50
}'
See use-cases.md for more examples.
query[standardized_location] param broken - use customQuery regexGet projects/repos via GitHub after resolving username from /accounts:
# 1. Get GitHub username
/accounts?id={profile_id} → { "source": "github", "username": "..." }
# 2. Query GitHub
GET https://api.github.com/users/{username} # Profile
GET https://api.github.com/users/{username}/repos?sort=stars&per_page=5 # Top repos
GET https://api.github.com/users/{username}/repos?sort=pushed&per_page=5 # Recent
GET https://api.github.com/users/{username}/events/public # Commits
GET https://api.github.com/search/issues?q=author:{username}+type:pr+state:open # Open PRs
GitHub Token (recommended): Without a token, GitHub limits to 60 requests/hr. With a personal access token, you get 5,000/hr.
-H "Authorization: token $GITHUB_TOKEN"