naftiko: 1.0.0-alpha2 info: label: WebApps API Client — SiteCertificates description: 'WebApps API Client — SiteCertificates. 10 operations. Lead operation: Get all certificates in a resource group under a site.. Self-contained Naftiko capability covering one Microsoft Azure Functions business surface.' tags: - Microsoft Azure Functions - SiteCertificates created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MICROSOFT_AZURE_FUNCTIONS_API_KEY: MICROSOFT_AZURE_FUNCTIONS_API_KEY capability: consumes: - type: http namespace: azure-functions-management-sitecertificates baseUri: https://management.azure.com description: WebApps API Client — SiteCertificates business capability. Self-contained, no shared references. resources: - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/certificates operations: - name: sitecertificateslist method: GET description: Get all certificates in a resource group under a site. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/certificates/{certificateName} operations: - name: sitecertificatesget method: GET description: Get a certificate belonging to a given site. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: certificateName in: path type: string description: Name of the certificate. required: true - name: sitecertificatescreateorupdate method: PUT description: Create or update a certificate under a given site. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: certificateName in: path type: string description: Name of the certificate. required: true - name: certificateEnvelope in: body type: string description: Details of certificate, if it exists already. required: true - name: sitecertificatesupdate method: PATCH description: Create or update a certificate under a given site. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: certificateName in: path type: string description: Name of the certificate. required: true - name: certificateEnvelope in: body type: string description: Details of certificate, if it exists already. required: true - name: sitecertificatesdelete method: DELETE description: Delete a certificate from the site. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: certificateName in: path type: string description: Name of the certificate. required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/certificates operations: - name: sitecertificateslistslot method: GET description: Get all certificates in a resource group for a given site and a deployment slot. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: slot in: path type: string description: Name of the deployment slot. If a slot is not specified, the API will create a binding for the production slot. required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/certificates/{certificateName} operations: - name: sitecertificatesgetslot method: GET description: Get a certificate for a given site and deployment slot. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: slot in: path type: string description: Name of the deployment slot. If a slot is not specified, the API will create a binding for the production slot. required: true - name: certificateName in: path type: string description: Name of the certificate. required: true - name: sitecertificatescreateorupdateslot method: PUT description: Create or update a certificate in a given site and deployment slot. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: slot in: path type: string description: Name of the deployment slot. If a slot is not specified, the API will create a binding for the production slot. required: true - name: certificateName in: path type: string description: Name of the certificate. required: true - name: certificateEnvelope in: body type: string description: Details of certificate, if it exists already. required: true - name: sitecertificatesupdateslot method: PATCH description: Create or update a certificate for a site and deployment slot. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: slot in: path type: string description: Name of the deployment slot. If a slot is not specified, the API will create a binding for the production slot. required: true - name: certificateName in: path type: string description: Name of the certificate. required: true - name: certificateEnvelope in: body type: string description: Details of certificate, if it exists already. required: true - name: sitecertificatesdeleteslot method: DELETE description: Delete a certificate for a given site and deployment slot. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: Name of the site. required: true - name: slot in: path type: string description: Name of the deployment slot. If a slot is not specified, the API will create a binding for the production slot. required: true - name: certificateName in: path type: string description: Name of the certificate. required: true exposes: - type: rest namespace: azure-functions-management-sitecertificates-rest port: 8080 description: REST adapter for WebApps API Client — SiteCertificates. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-web/sites/{name}/certificates name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: GET name: sitecertificateslist description: Get all certificates in a resource group under a site. call: azure-functions-management-sitecertificates.sitecertificateslist with: name: rest.name outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-web/sites/{name}/certificates/{certificatename} name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: GET name: sitecertificatesget description: Get a certificate belonging to a given site. call: azure-functions-management-sitecertificates.sitecertificatesget with: name: rest.name certificateName: rest.certificateName outputParameters: - type: object mapping: $. - method: PUT name: sitecertificatescreateorupdate description: Create or update a certificate under a given site. call: azure-functions-management-sitecertificates.sitecertificatescreateorupdate with: name: rest.name certificateName: rest.certificateName certificateEnvelope: rest.certificateEnvelope outputParameters: - type: object mapping: $. - method: PATCH name: sitecertificatesupdate description: Create or update a certificate under a given site. call: azure-functions-management-sitecertificates.sitecertificatesupdate with: name: rest.name certificateName: rest.certificateName certificateEnvelope: rest.certificateEnvelope outputParameters: - type: object mapping: $. - method: DELETE name: sitecertificatesdelete description: Delete a certificate from the site. call: azure-functions-management-sitecertificates.sitecertificatesdelete with: name: rest.name certificateName: rest.certificateName outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-web/sites/{name}/slots/{slot}/certificates name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: GET name: sitecertificateslistslot description: Get all certificates in a resource group for a given site and a deployment slot. call: azure-functions-management-sitecertificates.sitecertificateslistslot with: name: rest.name slot: rest.slot outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-web/sites/{name}/slots/{slot}/certificates/{certificatename} name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: GET name: sitecertificatesgetslot description: Get a certificate for a given site and deployment slot. call: azure-functions-management-sitecertificates.sitecertificatesgetslot with: name: rest.name slot: rest.slot certificateName: rest.certificateName outputParameters: - type: object mapping: $. - method: PUT name: sitecertificatescreateorupdateslot description: Create or update a certificate in a given site and deployment slot. call: azure-functions-management-sitecertificates.sitecertificatescreateorupdateslot with: name: rest.name slot: rest.slot certificateName: rest.certificateName certificateEnvelope: rest.certificateEnvelope outputParameters: - type: object mapping: $. - method: PATCH name: sitecertificatesupdateslot description: Create or update a certificate for a site and deployment slot. call: azure-functions-management-sitecertificates.sitecertificatesupdateslot with: name: rest.name slot: rest.slot certificateName: rest.certificateName certificateEnvelope: rest.certificateEnvelope outputParameters: - type: object mapping: $. - method: DELETE name: sitecertificatesdeleteslot description: Delete a certificate for a given site and deployment slot. call: azure-functions-management-sitecertificates.sitecertificatesdeleteslot with: name: rest.name slot: rest.slot certificateName: rest.certificateName outputParameters: - type: object mapping: $. - type: mcp namespace: azure-functions-management-sitecertificates-mcp port: 9090 transport: http description: MCP adapter for WebApps API Client — SiteCertificates. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-all-certificates-resource-group description: Get all certificates in a resource group under a site. hints: readOnly: true destructive: false idempotent: true call: azure-functions-management-sitecertificates.sitecertificateslist with: name: tools.name outputParameters: - type: object mapping: $. - name: get-certificate-belonging-given-site description: Get a certificate belonging to a given site. hints: readOnly: true destructive: false idempotent: true call: azure-functions-management-sitecertificates.sitecertificatesget with: name: tools.name certificateName: tools.certificateName outputParameters: - type: object mapping: $. - name: create-update-certificate-under-given description: Create or update a certificate under a given site. hints: readOnly: false destructive: false idempotent: true call: azure-functions-management-sitecertificates.sitecertificatescreateorupdate with: name: tools.name certificateName: tools.certificateName certificateEnvelope: tools.certificateEnvelope outputParameters: - type: object mapping: $. - name: create-update-certificate-under-given-2 description: Create or update a certificate under a given site. hints: readOnly: false destructive: false idempotent: true call: azure-functions-management-sitecertificates.sitecertificatesupdate with: name: tools.name certificateName: tools.certificateName certificateEnvelope: tools.certificateEnvelope outputParameters: - type: object mapping: $. - name: delete-certificate-site description: Delete a certificate from the site. hints: readOnly: false destructive: true idempotent: true call: azure-functions-management-sitecertificates.sitecertificatesdelete with: name: tools.name certificateName: tools.certificateName outputParameters: - type: object mapping: $. - name: get-all-certificates-resource-group-2 description: Get all certificates in a resource group for a given site and a deployment slot. hints: readOnly: true destructive: false idempotent: true call: azure-functions-management-sitecertificates.sitecertificateslistslot with: name: tools.name slot: tools.slot outputParameters: - type: object mapping: $. - name: get-certificate-given-site-and description: Get a certificate for a given site and deployment slot. hints: readOnly: true destructive: false idempotent: true call: azure-functions-management-sitecertificates.sitecertificatesgetslot with: name: tools.name slot: tools.slot certificateName: tools.certificateName outputParameters: - type: object mapping: $. - name: create-update-certificate-given-site description: Create or update a certificate in a given site and deployment slot. hints: readOnly: false destructive: false idempotent: true call: azure-functions-management-sitecertificates.sitecertificatescreateorupdateslot with: name: tools.name slot: tools.slot certificateName: tools.certificateName certificateEnvelope: tools.certificateEnvelope outputParameters: - type: object mapping: $. - name: create-update-certificate-site-and description: Create or update a certificate for a site and deployment slot. hints: readOnly: false destructive: false idempotent: true call: azure-functions-management-sitecertificates.sitecertificatesupdateslot with: name: tools.name slot: tools.slot certificateName: tools.certificateName certificateEnvelope: tools.certificateEnvelope outputParameters: - type: object mapping: $. - name: delete-certificate-given-site-and description: Delete a certificate for a given site and deployment slot. hints: readOnly: false destructive: true idempotent: true call: azure-functions-management-sitecertificates.sitecertificatesdeleteslot with: name: tools.name slot: tools.slot certificateName: tools.certificateName outputParameters: - type: object mapping: $.