curl --request POST \
--url https://api.nebius.cloud/monitoring/v1/recording-rules \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"metadata": {
"parentId": "<string>",
"id": "<string>",
"labels": {},
"name": "<string>",
"resourceVersion": "<string>"
},
"spec": {
"bucket": "<string>",
"expr": "<string>",
"record": "<string>",
"recordLabels": {}
}
}
'import requests
url = "https://api.nebius.cloud/monitoring/v1/recording-rules"
payload = {
"metadata": {
"parentId": "<string>",
"id": "<string>",
"labels": {},
"name": "<string>",
"resourceVersion": "<string>"
},
"spec": {
"bucket": "<string>",
"expr": "<string>",
"record": "<string>",
"recordLabels": {}
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
metadata: {
parentId: '<string>',
id: '<string>',
labels: {},
name: '<string>',
resourceVersion: '<string>'
},
spec: {bucket: '<string>', expr: '<string>', record: '<string>', recordLabels: {}}
})
};
fetch('https://api.nebius.cloud/monitoring/v1/recording-rules', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.nebius.cloud/monitoring/v1/recording-rules",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'metadata' => [
'parentId' => '<string>',
'id' => '<string>',
'labels' => [
],
'name' => '<string>',
'resourceVersion' => '<string>'
],
'spec' => [
'bucket' => '<string>',
'expr' => '<string>',
'record' => '<string>',
'recordLabels' => [
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.nebius.cloud/monitoring/v1/recording-rules"
payload := strings.NewReader("{\n \"metadata\": {\n \"parentId\": \"<string>\",\n \"id\": \"<string>\",\n \"labels\": {},\n \"name\": \"<string>\",\n \"resourceVersion\": \"<string>\"\n },\n \"spec\": {\n \"bucket\": \"<string>\",\n \"expr\": \"<string>\",\n \"record\": \"<string>\",\n \"recordLabels\": {}\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.nebius.cloud/monitoring/v1/recording-rules")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"metadata\": {\n \"parentId\": \"<string>\",\n \"id\": \"<string>\",\n \"labels\": {},\n \"name\": \"<string>\",\n \"resourceVersion\": \"<string>\"\n },\n \"spec\": {\n \"bucket\": \"<string>\",\n \"expr\": \"<string>\",\n \"record\": \"<string>\",\n \"recordLabels\": {}\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nebius.cloud/monitoring/v1/recording-rules")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"metadata\": {\n \"parentId\": \"<string>\",\n \"id\": \"<string>\",\n \"labels\": {},\n \"name\": \"<string>\",\n \"resourceVersion\": \"<string>\"\n },\n \"spec\": {\n \"bucket\": \"<string>\",\n \"expr\": \"<string>\",\n \"record\": \"<string>\",\n \"recordLabels\": {}\n }\n}"
response = http.request(request)
puts response.read_body{
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>",
"description": "<string>",
"finishedAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"progressData": {
"@type": "<string>"
},
"request": {
"@type": "<string>"
},
"requestHeaders": {},
"resource": {
"@type": "<string>"
},
"resourceId": "<string>",
"status": {
"code": 123,
"details": [
{
"@type": "<string>"
}
],
"message": "<string>"
}
}Create
Creates a recording rule.
curl --request POST \
--url https://api.nebius.cloud/monitoring/v1/recording-rules \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"metadata": {
"parentId": "<string>",
"id": "<string>",
"labels": {},
"name": "<string>",
"resourceVersion": "<string>"
},
"spec": {
"bucket": "<string>",
"expr": "<string>",
"record": "<string>",
"recordLabels": {}
}
}
'import requests
url = "https://api.nebius.cloud/monitoring/v1/recording-rules"
payload = {
"metadata": {
"parentId": "<string>",
"id": "<string>",
"labels": {},
"name": "<string>",
"resourceVersion": "<string>"
},
"spec": {
"bucket": "<string>",
"expr": "<string>",
"record": "<string>",
"recordLabels": {}
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
metadata: {
parentId: '<string>',
id: '<string>',
labels: {},
name: '<string>',
resourceVersion: '<string>'
},
spec: {bucket: '<string>', expr: '<string>', record: '<string>', recordLabels: {}}
})
};
fetch('https://api.nebius.cloud/monitoring/v1/recording-rules', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.nebius.cloud/monitoring/v1/recording-rules",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'metadata' => [
'parentId' => '<string>',
'id' => '<string>',
'labels' => [
],
'name' => '<string>',
'resourceVersion' => '<string>'
],
'spec' => [
'bucket' => '<string>',
'expr' => '<string>',
'record' => '<string>',
'recordLabels' => [
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.nebius.cloud/monitoring/v1/recording-rules"
payload := strings.NewReader("{\n \"metadata\": {\n \"parentId\": \"<string>\",\n \"id\": \"<string>\",\n \"labels\": {},\n \"name\": \"<string>\",\n \"resourceVersion\": \"<string>\"\n },\n \"spec\": {\n \"bucket\": \"<string>\",\n \"expr\": \"<string>\",\n \"record\": \"<string>\",\n \"recordLabels\": {}\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.nebius.cloud/monitoring/v1/recording-rules")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"metadata\": {\n \"parentId\": \"<string>\",\n \"id\": \"<string>\",\n \"labels\": {},\n \"name\": \"<string>\",\n \"resourceVersion\": \"<string>\"\n },\n \"spec\": {\n \"bucket\": \"<string>\",\n \"expr\": \"<string>\",\n \"record\": \"<string>\",\n \"recordLabels\": {}\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nebius.cloud/monitoring/v1/recording-rules")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"metadata\": {\n \"parentId\": \"<string>\",\n \"id\": \"<string>\",\n \"labels\": {},\n \"name\": \"<string>\",\n \"resourceVersion\": \"<string>\"\n },\n \"spec\": {\n \"bucket\": \"<string>\",\n \"expr\": \"<string>\",\n \"record\": \"<string>\",\n \"recordLabels\": {}\n }\n}"
response = http.request(request)
puts response.read_body{
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>",
"description": "<string>",
"finishedAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"progressData": {
"@type": "<string>"
},
"request": {
"@type": "<string>"
},
"requestHeaders": {},
"resource": {
"@type": "<string>"
},
"resourceId": "<string>",
"status": {
"code": 123,
"details": [
{
"@type": "<string>"
}
],
"message": "<string>"
}
}Authorizations
The Authorization header expects a Bearer token.
Body
Request to create a recording rule.
Response
A successful response.
Creation timestamp.
ID of the user or service account who initiated the operation.
Human readable description of the operation. 0-256 characters long.
The time when the operation finished.
ID of the operation.
Additional information about the progress of an operation, e.g., a progress percentage. MAY be absent while the operation is running, MUST be absent after the operation has completed.
Format of message inside [progress_data] is service-dependent and MUST be documented by the service, IF it is used.
Show child attributes
Show child attributes
The request that generated this operation.
Show child attributes
Show child attributes
The request headers that are essential for the request that generated the operation.
For instance, x-resetmask. Without these headers the request might have been processed
differently if repeated.
All the header names must be converted to lower case.
Validator is based on:
https://httpwg.org/specs/rfc9110.html#considerations.for.new.field.names
Show child attributes
Show child attributes
Snapshot of the resource at the moment this operation started.
- [resource.spec] and [resource.metadata] reflect the desired resource state at the moment this operation started. E.g., in an Update operation it will be the updated resource spec and metadata, in a Create operation it will be the spec and metadata of the resource being created, and so on.
- [resource.status] reflects the status of the resource at the moment this operation started.
This is a snapshot, call the
<Resource>Service/Getto get current status of the resource.
The [resource] field MUST never be updated after this operation has started.
In a Delete operation, an operation affecting multiple resources or an operation that doesn't affect any API resources at all (e.g. a routine maintenance operation visible to the user), the [resource] inside MUST be a [google.protobuf.Empty].
Show child attributes
Show child attributes
ID of the resource that this operation creates, updates, deletes or otherwise changes.
If the operation affects multiple resources or does not affect any API resources at all (e.g. a routine maintenance operation visible to the user), the [resource_id] must be empty.
The status of this operation. Set when this operation is completed. See https://github.com/grpc/grpc/blob/master/src/proto/grpc/status/status.proto.
[status.code] is https://github.com/googleapis/googleapis/blob/master/google/rpc/code.proto:
- If [status.code] == OK, the operation has completed successfully.
- If [status.code] != OK, the operation has failed or has been cancelled.
- [status.message] will contain a user-readable and actionable error message.
- [status.details] will contain additional diagnostic information in the form of [ServiceError] from ../error/v1alpha1/error.proto
- [status.code] must belong to an Operation-compatible subset of GRPC codes: OK, CANCELLED, PERMISSION_DENIED, RESOURCE_EXHAUSTED, FAILED_PRECONDITION, ABORTED, INTERNAL
Show child attributes
Show child attributes
Was this page helpful?