List owned resources eligible for curation

GET/v1/packages/candidates

Newest-created first, excluding system-managed resources before pagination. Includes creator identity, creation/update timestamps and an agent's own avatarUrl when available. Follow the opaque nextCursor across pages; legacy ID-only cursors continue in their original ID order.

How to call this endpoint

Every ACP API request uses bearer authentication. The examples here show the actual request path, auth header, and body shape that the platform expects.

Path, query, and header parameters

These parameters control which ACP object the endpoint acts on and how the request is processed.

Path parameters
None.
Query parameters
NameLocationTypeRequiredDescription
resourceTypequerymetronome_workflow | server | agent | skill | environment | prompt | knowledge_library | database | threadYes
limitqueryintegerNoMaximum candidates per page. System resources are excluded before applying this limit.
queryquerystringNo
cursorquerystringNoContinue with nextCursor even if data is empty.

Body schema

This endpoint does not require a request body.

None.

What the API returns

Each response code below includes the documented payload shape for the ACP API.

200Package operation resultapplication/json
FieldTypeRequiredDescription
dataobject[]Yes
data[].resourceTypemetronome_workflow | server | agent | skill | environment | prompt | knowledge_library | database | threadYes
data[].resourceIdstringYes
data[].namestringYesHuman-readable name.
data[].descriptionstringYesHuman-readable description.
data[].kindstringYes
data[].avatarUrlstringNoThe agent's own profile image, distinct from creatorAvatarUrl. Optional; an empty value uses the client's standard fallback.
data[].creatorIdstringNo
data[].creatorNamestringNo
data[].creatorAvatarUrlstringNo
data[].createdAtstringNoISO 8601 timestamp.
data[].updatedAtstringNoISO 8601 timestamp.
nextCursorstringYes
400Package request rejected. HTTP status distinguishes invalid input (400), authentication (401), API scope (403), unavailable resource (404), changed revision or confirmation (409), and unsupported storage (503).application/json
FieldTypeRequiredDescription
errorstringNo
codestringNo
messagestringNoMessage text.
401Package request rejected. HTTP status distinguishes invalid input (400), authentication (401), API scope (403), unavailable resource (404), changed revision or confirmation (409), and unsupported storage (503).application/json
FieldTypeRequiredDescription
errorstringNo
codestringNo
messagestringNoMessage text.
403Package request rejected. HTTP status distinguishes invalid input (400), authentication (401), API scope (403), unavailable resource (404), changed revision or confirmation (409), and unsupported storage (503).application/json
FieldTypeRequiredDescription
errorstringNo
codestringNo
messagestringNoMessage text.
404Package request rejected. HTTP status distinguishes invalid input (400), authentication (401), API scope (403), unavailable resource (404), changed revision or confirmation (409), and unsupported storage (503).application/json
FieldTypeRequiredDescription
errorstringNo
codestringNo
messagestringNoMessage text.
409Package request rejected. HTTP status distinguishes invalid input (400), authentication (401), API scope (403), unavailable resource (404), changed revision or confirmation (409), and unsupported storage (503).application/json
FieldTypeRequiredDescription
errorstringNo
codestringNo
messagestringNoMessage text.
503Package request rejected. HTTP status distinguishes invalid input (400), authentication (401), API scope (403), unavailable resource (404), changed revision or confirmation (409), and unsupported storage (503).application/json
FieldTypeRequiredDescription
errorstringNo
codestringNo
messagestringNoMessage text.
List owned resources eligible for curation
Loading...
Response 200
Loading...
See the ACP quickstart and SDK flow