Azure / Azure/azure-dev

Provide suggestions for connections using the Catalog API

Open
#8,183 0 comments 0 reactions 0 assignees View on GitHub
enhancement ext-agents
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.