{{/* Render a single HTTP API operation: that is, a method+endpoint combination, given: * `method`: the method, e.g. GET, PUT * `endpoint`: the endpoint * `operation_data`: the OpenAPI data for the operation * `path`: the path where this definition was found, to enable us to resolve "$ref" This template renders the operation as a `
` containing: * an `

` heading containing the method and endpoint * a `
` element containing the details, including: * operation description * basic info about the operation * request details * response details */}} {{ $method := .method }} {{ $endpoint := .endpoint }} {{ $operation_data := .operation_data }} {{ $path := .path }} {{ $anchor := anchorize $endpoint }}

{{ $method }} {{ $endpoint }}


{{ if $operation_data.deprecated }} {{ partial "alert" (dict "type" "warning" "omit_title" "true" "content" "This API is deprecated and will be removed from a future release.") }} {{ end }} {{ if (index $operation_data "x-addedInMatrixVersion") }} {{ partial "added-in" (dict "v" (index $operation_data "x-addedInMatrixVersion")) }} {{ end }} {{ if (index $operation_data "x-changedInMatrixVersion") }} {{ partial "changed-in" (dict "changes_dict" (index $operation_data "x-changedInMatrixVersion")) }} {{ end -}}

{{ $operation_data.description | markdownify }}

{{ $rate_limited := index $operation_data.responses "429" }} {{/* Authentication is defined with the `security` key. We assume that the key is not set if no authentication is necessary. If the key is set, authentication is required unless it contains an item that is an empty object. */}} {{ $requires_authentication := "Yes" }} {{ if $operation_data.security }} {{ range $operation_data.security }} {{ if eq (len (index $operation_data.security 0)) 0 }} {{ $requires_authentication = "Optional" }} {{ end }} {{ end }} {{ else }} {{ $requires_authentication = "No" }} {{ end }}
Rate-limited:{{ if $rate_limited }}Yes{{ else }}No{{ end }}
Requires authentication:{{ $requires_authentication }}

{{ partial "openapi/render-request" (dict "parameters" $operation_data.parameters "request_body" $operation_data.requestBody "path" $path "anchor_base" $anchor ) }}
{{ partial "openapi/render-responses" (dict "responses" $operation_data.responses "path" $path "anchor_base" $anchor ) }}