Share via


Product - List By Service

Lists a collection of products in the specified service instance.

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products?api-version=2024-05-01
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products?$filter={$filter}&$top={$top}&$skip={$skip}&expandGroups={expandGroups}&tags={tags}&api-version=2024-05-01

URI Parameters

Name In Required Type Description
resourceGroupName
path True

string

minLength: 1
maxLength: 90

The name of the resource group. The name is case insensitive.

serviceName
path True

string

minLength: 1
maxLength: 50
pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

The name of the API Management service.

subscriptionId
path True

string (uuid)

The ID of the target subscription. The value must be an UUID.

api-version
query True

string

minLength: 1

The API version to use for this operation.

$filter
query

string

| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| groups | expand | | |

$skip
query

integer (int32)

minimum: 0

Number of records to skip.

$top
query

integer (int32)

minimum: 1

Number of records to return.

expandGroups
query

boolean

When set to true, the response contains an array of groups that have visibility to the product. The default is false.

tags
query

string

Products which are part of a specific tag.

Responses

Name Type Description
200 OK

ProductCollection

A Collection of the Product entities for the specified API Management service instance.

Other Status Codes

ErrorResponse

Error response describing why the operation failed.

Security

azure_auth

Azure Active Directory OAuth2 Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

ApiManagementListProducts

Sample request

GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products?api-version=2024-05-01

Sample response

{
  "value": [
    {
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/kjoshiarmtemplateCert1",
      "type": "Microsoft.ApiManagement/service/products",
      "name": "kjoshiarmtemplateCert1",
      "properties": {
        "displayName": "Dev",
        "description": "Development Product",
        "subscriptionRequired": false,
        "state": "published"
      }
    },
    {
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/starter",
      "type": "Microsoft.ApiManagement/service/products",
      "name": "starter",
      "properties": {
        "displayName": "Starter",
        "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.",
        "terms": "",
        "subscriptionRequired": true,
        "approvalRequired": false,
        "subscriptionsLimit": 1,
        "state": "published"
      }
    },
    {
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/unlimited",
      "type": "Microsoft.ApiManagement/service/products",
      "name": "unlimited",
      "properties": {
        "displayName": "Unlimited",
        "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.",
        "subscriptionRequired": true,
        "approvalRequired": true,
        "subscriptionsLimit": 1,
        "state": "published"
      }
    }
  ],
  "count": 3,
  "nextLink": ""
}

Definitions

Name Description
ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ErrorResponse

Error response

ProductCollection

Paged Products list representation.

ProductContract

Product details.

ProductState

whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished.

ErrorAdditionalInfo

The resource management error additional info.

Name Type Description
info

object

The additional info.

type

string

The additional info type.

ErrorDetail

The error detail.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

The error additional info.

code

string

The error code.

details

ErrorDetail[]

The error details.

message

string

The error message.

target

string

The error target.

ErrorResponse

Error response

Name Type Description
error

ErrorDetail

The error object.

ProductCollection

Paged Products list representation.

Name Type Description
count

integer (int64)

Total record count number across all pages.

nextLink

string

Next page link if any.

value

ProductContract[]

Page values.

ProductContract

Product details.

Name Type Description
id

string

Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

The name of the resource

properties.approvalRequired

boolean

whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.

properties.description

string

minLength: 0
maxLength: 1000

Product description. May include HTML formatting tags.

properties.displayName

string

minLength: 1
maxLength: 300

Product name.

properties.state

ProductState

whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished.

properties.subscriptionRequired

boolean

Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true.

properties.subscriptionsLimit

integer (int32)

Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false.

properties.terms

string

Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

ProductState

whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished.

Value Description
notPublished
published