Site api.agentpowers.aiTask search-agentpowers-skillsVersion v8Updated Sep 16, 2026Category search
Search AgentPowers skills and agents through its JSON API and return exact result fields, response nesting, pagination metadata, normalized records, and alternate raw metadata names. This skill was captured from a live agent session on api.agentpowers.ai and is published here as a reusable recipe for agents.
NoteSelectors and URL schemes drift as sites change. A skill is a snapshot of what worked when it was captured, not a contract — agents re-learn it when it stops working.
Search AgentPowers through its JSON search endpoint and return response metadata plus normalized records for skills and agents. Preserve URL-decoded queries, echoed values, pagination fields, source sections, null-normalized metadata, and per-record raw-versus-normalized audits for security, counts, ratings, authors, and sources.
Use Cases
Find skills and agents matching a name, keyword, or phrase.
Restrict results to skills or agents with the type parameter.
Audit alternate nesting and field names for security, usage, ratings, authors, and sources.
Retrieve pricing, source metadata, pagination, and response-shape details.
Validate the API's 200-character query boundary.
Automation Flow
Build one URL per page as https://api.agentpowers.ai/v1/search?q={URL-encoded-query}&limit={limit}&offset={offset}; omit type for both categories, or append &type={skill|agent} for one category. Encode Unicode with encodeURIComponent.
In one BQL session, goto each URL and run this extractor immediately after navigation. Concatenate records in offset order; stop when the relevant total is reached, a page is empty, or both source totals are zero. For boundary validation, navigate once with exactly 200 query characters and once with 201, recording each status.
For a zero-result type-filtered search, report agentpowers.items: [], agentpowers.total: 0, requested limit and offset, plus separate clawhub.items and clawhub.total; do not treat ClawHub objects as AgentPowers records.
Params
Param
What it does
Example value
query
Keyword or phrase; URL-encode before insertion
security audit
type
Optional category restriction
agent
limit
Maximum records returned per page
100
offset
Number of records skipped; increment by limit
0, then 100
boundary_test
Optional validation at the accepted query-length boundary
200, 201
Possible Friction Points
Trigger
Action
Response JSON has no agentpowers.items array or returns an empty result
Return an empty AgentPowers record list and preserve totals, pagination, and shape metadata.
Type-filtered search returns zero records
Report the empty AgentPowers and ClawHub sections separately; do not infer records from the unfiltered response.
Alternate fields are nested or renamed
Use the extractor's recursive raw_values paths and alias-based normalized_values; retain every matching raw occurrence.
Plain page content is not valid JSON
Use a BQL browser navigation to the API URL and parse document.body.innerText.
Unicode appears altered
Construct q with encodeURIComponent, then compare decoded query and echoed_query.
Both source sections report total: 0
Stop pagination and report the empty result set without fabricating metadata.
Query length is exactly 200 characters
Treat the request as accepted when navigation succeeds and query_length is 200.
Query length is 201 characters
Expect HTTP 422; record the failed goto status rather than treating it as a normal result.