1 min read
Azure API Management GraphQL: Modern API Gateway
Azure API Management now supports GraphQL APIs, enabling unified API governance for both REST and GraphQL endpoints.
Adding GraphQL API
# Import GraphQL schema
az apim graphql-api import \
--resource-group myResourceGroup \
--service-name myAPIM \
--api-id products-graphql \
--path /graphql \
--specification-path schema.graphql
GraphQL Schema
type Query {
product(id: ID!): Product
products(category: String, limit: Int): [Product!]!
}
type Mutation {
createProduct(input: CreateProductInput!): Product!
updateProduct(id: ID!, input: UpdateProductInput!): Product
}
type Product {
id: ID!
name: String!
price: Float!
category: String!
inventory: Int!
}
input CreateProductInput {
name: String!
price: Float!
category: String!
}
Resolver Policies
<policies>
<inbound>
<set-graphql-resolver parent-type="Query" field="product">
<http-data-source>
<http-request>
<set-method>GET</set-method>
<set-url>@($"https://api.backend.com/products/{context.Arguments["id"]}")</set-url>
</http-request>
</http-data-source>
</set-graphql-resolver>
</inbound>
</policies>
Summary
APIM GraphQL support enables modern API patterns with enterprise governance, rate limiting, and authentication.
References: