import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
inference_api_key_created = client.cloud.inference.api_keys.create(
project_id=1,
name="my-api-key",
)
print(inference_api_key_created.created_at)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/cloud"
"github.com/G-Core/gcore-go/option"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
inferenceAPIKeyCreated, err := client.Cloud.Inference.APIKeys.New(context.TODO(), cloud.InferenceAPIKeyNewParams{
ProjectID: gcore.Int(1),
Name: "my-api-key",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", inferenceAPIKeyCreated.CreatedAt)
}
curl --request POST \
--url https://api.gcore.com/cloud/v3/inference/{project_id}/api_keys \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "my-api-key",
"description": "This key is used for accessing the inference service.",
"expires_at": "2024-10-01T12:00:00Z"
}
'const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'my-api-key',
description: 'This key is used for accessing the inference service.',
expires_at: '2024-10-01T12:00:00Z'
})
};
fetch('https://api.gcore.com/cloud/v3/inference/{project_id}/api_keys', 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.gcore.com/cloud/v3/inference/{project_id}/api_keys",
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([
'name' => 'my-api-key',
'description' => 'This key is used for accessing the inference service.',
'expires_at' => '2024-10-01T12:00:00Z'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.post("https://api.gcore.com/cloud/v3/inference/{project_id}/api_keys")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"my-api-key\",\n \"description\": \"This key is used for accessing the inference service.\",\n \"expires_at\": \"2024-10-01T12:00:00Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cloud/v3/inference/{project_id}/api_keys")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"my-api-key\",\n \"description\": \"This key is used for accessing the inference service.\",\n \"expires_at\": \"2024-10-01T12:00:00Z\"\n}"
response = http.request(request)
puts response.read_body{
"created_at": "2023-10-01T12:00:00Z",
"deployment_names": [
"inference-1",
"inference-2"
],
"description": "This key is used for accessing the inference service.",
"expires_at": "2024-10-01T12:00:00Z",
"name": "my-api-key",
"secret": "qLyjWDarjtT1zdp7dc"
}Create inference API key
This endpoint creates a new API key for everywhere inference. It returs api key’s actual secret only once after creation.
import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
inference_api_key_created = client.cloud.inference.api_keys.create(
project_id=1,
name="my-api-key",
)
print(inference_api_key_created.created_at)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/cloud"
"github.com/G-Core/gcore-go/option"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
inferenceAPIKeyCreated, err := client.Cloud.Inference.APIKeys.New(context.TODO(), cloud.InferenceAPIKeyNewParams{
ProjectID: gcore.Int(1),
Name: "my-api-key",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", inferenceAPIKeyCreated.CreatedAt)
}
curl --request POST \
--url https://api.gcore.com/cloud/v3/inference/{project_id}/api_keys \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "my-api-key",
"description": "This key is used for accessing the inference service.",
"expires_at": "2024-10-01T12:00:00Z"
}
'const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'my-api-key',
description: 'This key is used for accessing the inference service.',
expires_at: '2024-10-01T12:00:00Z'
})
};
fetch('https://api.gcore.com/cloud/v3/inference/{project_id}/api_keys', 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.gcore.com/cloud/v3/inference/{project_id}/api_keys",
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([
'name' => 'my-api-key',
'description' => 'This key is used for accessing the inference service.',
'expires_at' => '2024-10-01T12:00:00Z'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.post("https://api.gcore.com/cloud/v3/inference/{project_id}/api_keys")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"my-api-key\",\n \"description\": \"This key is used for accessing the inference service.\",\n \"expires_at\": \"2024-10-01T12:00:00Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cloud/v3/inference/{project_id}/api_keys")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"my-api-key\",\n \"description\": \"This key is used for accessing the inference service.\",\n \"expires_at\": \"2024-10-01T12:00:00Z\"\n}"
response = http.request(request)
puts response.read_body{
"created_at": "2023-10-01T12:00:00Z",
"deployment_names": [
"inference-1",
"inference-2"
],
"description": "This key is used for accessing the inference service.",
"expires_at": "2024-10-01T12:00:00Z",
"name": "my-api-key",
"secret": "qLyjWDarjtT1zdp7dc"
}Authorizations
API key for authentication. Make sure to include the word apikey, followed by a single space and then your token.
Example: apikey 1234_abcdef
Path Parameters
Project ID
1
Body
Name of the API Key.
4 - 63^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$"my-api-key"
Description of the API Key.
300"This key is used for accessing the inference service."
Expiration date of the API Key in ISO 8601 format.
"2024-10-01T12:00:00Z"
Response
OK
Timestamp when the API Key was created.
"2023-10-01T12:00:00Z"
List of inference deployment names to which this API Key has been attached.
["inference-1", "inference-2"]
Description of the API Key.
"This key is used for accessing the inference service."
Timestamp when the API Key will expire.
"2024-10-01T12:00:00Z"
API Key name.
"my-api-key"
The actual API Key secret.
"qLyjWDarjtT1zdp7dc"
Was this page helpful?