Provide suggestions for connections using the Catalog API
- Dominant language
- Go
- Stars
- 569
- Forks
- 364
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 136
Description
Use the Catalog API to help with selectable/autocomplete of connections
```
Using Asset Catalog V2 APIs
This document serves as a guide for using the V2 APIs via REST. It exposes the following APIs:
Get Model Details
List Models
Get Tool Details
List Tools
Get Publisher Details
List Publisher Details
Models
Getting model details
GET https://api.catalog.azureml.ms/asset-gallery/v1.0/{registryName}/models/{modelName}/version/{version}
Authorization
Anonymous access
AAD token
GitHub token
Example
curl -X GET --location "https://api.catalog.azureml.ms/asset-gallery/v1.0/azureml/models/Phi-3-mini-128k-instruct/version/12"
Authorization
Anonymous access
AAD token
GitHub token
Listing Models
POST https://api.catalog.azureml.ms/asset-gallery/v1.0/models
Example
curl -X POST --location "https://api.catalog.azureml.ms/asset-gallery/v1.0/models" --header "Content-Type: application/json" --data '{"filters": [{"field": "publisher", "operator": "eq", "values": ["AI21 Labs", "Mistral ai", "core42"]}], "order": [{"field": "name", "direction": "asc"}], "pageSize": 2}'
Example Using Continuation Token
When listing models, you may receive a continuationToken in the response. This token should be used in subsequent requests to fetch the next set of results.
curl -X POST --location "https://api.catalog.azureml.ms/asset-gallery/v1.0/models" --header "Content-Type: application/json" --data '{"filters": [{"field": "publisher", "operator": "eq", "values": ["AI21 Labs", "Mistral ai", "core42"]}], "order": [{"field": "name", "direction": "asc"}], "pageSize": 2, "continuationToken": "your-token-here"}'
Supported Filterable Fields
name
version
labels
freePlayground
popularity
createdTime
displayName
summary
license
publisher
inferenceTasks
finetuningTasks
modelLimits/textLimits/maxOutputTokens
modelLimits/textLimits/inputContextWindow
modelLimits/supportedInputModalities
modelLimits/supportedOutputModalities
modelLimits/supportedLanguages
playgroundLimits/rateLimitTier
modelCapabilities
AzureOffers
Supported Orderable Fields
name
version
popularity
createdTime
displayName
publisher
Getting publisher details
GET https://api.catalog.azureml.ms/asset-gallery/v1.0/publishers/{publisherName}
Authorization
Anonymous access
AAD token
GitHub token
Example
curl -X GET --location "https://api.catalog.azureml.ms/asset-gallery/v1.0/publishers/contoso"
Listing publisher details
POST https://api.catalog.azureml.ms/asset-gallery/v1.0/publishers/list
Authorization
Anonymous access
AAD token
GitHub token
Example
curl -X POST --location "https://api.catalog.azureml.ms/asset-gallery/v1.0/publishers/list" --header "Content-Type: application/json" --data '{"continuationToken": ""}'
Tools
Getting tool details
GET https://api.catalog.azureml.ms/asset-gallery/v1.0/{apiCenterName}/tools/{toolName}
Authorization
Anonymous access
AAD token
GitHub token
Example
curl -X GET --location "https://api.catalog.azureml.ms/asset-gallery/v1.0/azureml/tools/my-tool-name"
Listing Tools
POST https://api.catalog.azureml.ms/asset-gallery/v1.0/tools
Authorization
Anonymous access
AAD token
GitHub token
Filtering by Tool Type
To list connector tools, add the following filter to the request body:
{"field": "entityContainerId", "operator": "eq", "values": ["connectors-registry-prod-bl"]}
To list MCP tools, add the following filter to the request body:
{"field": "entityContainerId", "operator": "eq", "values": ["registry-prod-bl"]}
Example
curl -X POST --location "https://api.catalog.azureml.ms/asset-gallery/v1.0/tools" --header "Content-Type: application/json" --data '{ "freeTextSearch": "*", "filters": [ {"field": "type", "operator": "eq", "values": ["tools"]}, {"field": "kind", "operator": "eq", "values": ["Versioned"]}, {"field": "labels", "operator": "eq", "values": ["latest"]} ], "order": [ {"field": "usage/popularity", "direction": "desc"} ], "includeTotalResultCount": true, "facets": [ {"name": "properties/xMsSecuritySchemes"}, {"name": "properties/entityArmId"} ] }'
Example Using Continuation Token
When listing tools, you may receive a continuationToken in the response. This token should be used in subsequent requests to fetch the next set of results.
curl -X POST --location "https://api.catalog.azureml.ms/asset-gallery/v1.0/tools" --header "Content-Type: application/json" --data '{ "freeTextSearch": "*", "filters": [ {"field": "type", "operator": "eq", "values": ["tools"]}, {"field": "kind", "operator": "eq", "values": ["Versioned"]}, {"field": "labels", "operator": "eq", "values": ["latest"]} ], "order": [ {"field": "usage/popularity", "direction": "desc"} ], "includeTotalResultCount": true, "continuationToken": "your-token-here" }'
```
Contributor guide
Assessment
This issue has not been assessed yet.