{{/* 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 * `anchor_base`: an optional prefix for the HTML IDs generated by this template. 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 }} {{ $anchor := "" }} {{ if .anchor_base }} {{ $anchor = printf "%s_" .anchor_base }} {{ end }} {{ $anchor = printf "%s%s%s" $anchor (lower $method) (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 | page.RenderString (dict "display" "block") }} {{ $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 "anchor_base" $anchor ) }}
{{ partial "openapi/render-responses" (dict "responses" $operation_data.responses "anchor_base" $anchor ) }}