List curators

Cursor-paginated list of curator identities from Morpho's curator registry, morpho-org/morpho-blue-api-metadata/data/curators-listing.json, the same source as GET /v0/curators/{curator-selector}/details. Use it to discover curators before you know a curator address; each item groups the curator's registered addresses across chains.


GET
/v0/curators

Global registry metadata, not on-chain facts. curator_id, name, image_url and verified are editorial values Morpho maintains in the registry. They are an explicit exception to Core's facts-only rule, like the details route. verified is Morpho's registry flag, not an on-chain property, and a registry address is not proof that it holds a curator role on any vault.

Membership. A curator is listed when it has at least one registered address on a chain in chain_ids (default: every chain Core exposes). Unverified curators are included unless verified=true. addresses always lists the curator's addresses on every exposed chain, so filtering by chain does not split an identity.

Not here. Socials are on the details route. AUM, rankings and other provider-dependent data are not part of this route.

Pagination. Items are sorted by curator_id. Pass cursor back verbatim on the next call; a null cursor means the last page. The cursor is bound to the filter set that produced it, so changing filters is a 400. Pages are offsets into the live registry, so a registry change between calls can shift items across pages.

Freshness. The registry syncs about every five minutes, lookups are cached for up to five minutes, and responses may be CDN-cached for up to five minutes.

Query Parameters

verified?string

Only curators whose registry verified flag matches. Omit to list verified and unverified curators.

Value in

  • "true"
  • "false"
chain_ids?array<>

Only curators with at least one registered address on these chains. Defaults to every chain Core exposes.

Itemsitems <= 100
limit?integer

Maximum number of curators to return.

Range1 <= value <= 1000
Default100
cursor?string

Opaque cursor from a previous page response. Bound to the filter set that produced it.

Length1 <= length <= 4096

Response Body

application/json

curl -X GET "https://example.com/v0/curators"
{  "cursor": null,  "data": [    {      "addresses": [        {          "chain_id": 1,          "curator_address": "0x827e86072B06674a077f592A531dcE4590aDeCdB"        },        {          "chain_id": 8453,          "curator_address": "0x0A0e559bc3b0950a7e448F0d4894db195b9cf8DD"        }      ],      "curator_id": "steakhouse-financial",      "image_url": "https://cdn.morpho.org/v2/assets/images/steakhouse.svg",      "name": "Steakhouse Financial",      "verified": true    }  ]}
Empty