Update Canary Deploy
Endpoint to update a canary deploy configuration for an assistant.
Updates the existing canary deploy configuration with new version IDs and percentages. All old versions and percentages are replaces by new ones from this request.
PUT
/
ai
/
assistants
/
{assistant_id}
/
canary-deploys
JavaScript
import Telnyx from 'telnyx';
const client = new Telnyx({
apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});
const canaryDeployResponse = await client.ai.assistants.canaryDeploys.update('assistant_id');
console.log(canaryDeployResponse.assistant_id);import os
from telnyx import Telnyx
client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted
)
canary_deploy_response = client.ai.assistants.canary_deploys.update(
assistant_id="assistant_id",
)
print(canary_deploy_response.assistant_id)package main
import (
"context"
"fmt"
"github.com/team-telnyx/telnyx-go"
"github.com/team-telnyx/telnyx-go/option"
)
func main() {
client := telnyx.NewClient(
option.WithAPIKey("My API Key"),
)
canaryDeployResponse, err := client.AI.Assistants.CanaryDeploys.Update(
context.TODO(),
"assistant_id",
telnyx.AIAssistantCanaryDeployUpdateParams{
CanaryDeploy: telnyx.CanaryDeployParam{},
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", canaryDeployResponse.AssistantID)
}package com.telnyx.sdk.example;
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
import com.telnyx.sdk.models.ai.assistants.canarydeploys.CanaryDeploy;
import com.telnyx.sdk.models.ai.assistants.canarydeploys.CanaryDeployResponse;
import com.telnyx.sdk.models.ai.assistants.canarydeploys.CanaryDeployUpdateParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
TelnyxClient client = TelnyxOkHttpClient.fromEnv();
CanaryDeployUpdateParams params = CanaryDeployUpdateParams.builder()
.assistantId("assistant_id")
.canaryDeploy(CanaryDeploy.builder().build())
.build();
CanaryDeployResponse canaryDeployResponse = client.ai().assistants().canaryDeploys().update(params);
}
}require "telnyx"
telnyx = Telnyx::Client.new(api_key: "My API Key")
canary_deploy_response = telnyx.ai.assistants.canary_deploys.update("assistant_id")
puts(canary_deploy_response)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Telnyx\Client;
use Telnyx\Core\Exceptions\APIException;
$client = new Client(apiKey: getenv('TELNYX_API_KEY') ?: 'My API Key');
try {
$canaryDeployResponse = $client->ai->assistants->canaryDeploys->update(
'assistant_id',
rules: [
[
'serve' => [
'rollout' => [['versionID' => 'version_id', 'weight' => 0]],
'versionID' => 'version_id',
],
'match' => [
[
'attribute' => 'attribute',
'operator' => 'in',
'values' => ['string'],
],
],
],
],
);
var_dump($canaryDeployResponse);
} catch (APIException $e) {
echo $e->getMessage();
}telnyx ai:assistants:canary-deploys update \
--api-key 'My API Key' \
--assistant-id assistant_idcurl --request PUT \
--url https://api.telnyx.com/v2/ai/assistants/{assistant_id}/canary-deploys \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"rules": [
{
"serve": {
"version_id": "<string>",
"rollout": [
{
"version_id": "<string>",
"weight": 50
}
]
},
"match": [
{
"attribute": "<string>",
"values": [
"<string>"
]
}
]
}
]
}
'{
"assistant_id": "<string>",
"rules": [
{
"serve": {
"version_id": "<string>",
"rollout": [
{
"version_id": "<string>",
"weight": 50
}
]
},
"match": [
{
"attribute": "<string>",
"values": [
"<string>"
]
}
]
}
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Unique identifier of the assistant.
Body
application/json
Create/update request body. Accepts:
rules— canonical ordered list of routing rules
Show child attributes
Show child attributes
Was this page helpful?
⌘I
JavaScript
import Telnyx from 'telnyx';
const client = new Telnyx({
apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});
const canaryDeployResponse = await client.ai.assistants.canaryDeploys.update('assistant_id');
console.log(canaryDeployResponse.assistant_id);import os
from telnyx import Telnyx
client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted
)
canary_deploy_response = client.ai.assistants.canary_deploys.update(
assistant_id="assistant_id",
)
print(canary_deploy_response.assistant_id)package main
import (
"context"
"fmt"
"github.com/team-telnyx/telnyx-go"
"github.com/team-telnyx/telnyx-go/option"
)
func main() {
client := telnyx.NewClient(
option.WithAPIKey("My API Key"),
)
canaryDeployResponse, err := client.AI.Assistants.CanaryDeploys.Update(
context.TODO(),
"assistant_id",
telnyx.AIAssistantCanaryDeployUpdateParams{
CanaryDeploy: telnyx.CanaryDeployParam{},
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", canaryDeployResponse.AssistantID)
}package com.telnyx.sdk.example;
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
import com.telnyx.sdk.models.ai.assistants.canarydeploys.CanaryDeploy;
import com.telnyx.sdk.models.ai.assistants.canarydeploys.CanaryDeployResponse;
import com.telnyx.sdk.models.ai.assistants.canarydeploys.CanaryDeployUpdateParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
TelnyxClient client = TelnyxOkHttpClient.fromEnv();
CanaryDeployUpdateParams params = CanaryDeployUpdateParams.builder()
.assistantId("assistant_id")
.canaryDeploy(CanaryDeploy.builder().build())
.build();
CanaryDeployResponse canaryDeployResponse = client.ai().assistants().canaryDeploys().update(params);
}
}require "telnyx"
telnyx = Telnyx::Client.new(api_key: "My API Key")
canary_deploy_response = telnyx.ai.assistants.canary_deploys.update("assistant_id")
puts(canary_deploy_response)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Telnyx\Client;
use Telnyx\Core\Exceptions\APIException;
$client = new Client(apiKey: getenv('TELNYX_API_KEY') ?: 'My API Key');
try {
$canaryDeployResponse = $client->ai->assistants->canaryDeploys->update(
'assistant_id',
rules: [
[
'serve' => [
'rollout' => [['versionID' => 'version_id', 'weight' => 0]],
'versionID' => 'version_id',
],
'match' => [
[
'attribute' => 'attribute',
'operator' => 'in',
'values' => ['string'],
],
],
],
],
);
var_dump($canaryDeployResponse);
} catch (APIException $e) {
echo $e->getMessage();
}telnyx ai:assistants:canary-deploys update \
--api-key 'My API Key' \
--assistant-id assistant_idcurl --request PUT \
--url https://api.telnyx.com/v2/ai/assistants/{assistant_id}/canary-deploys \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"rules": [
{
"serve": {
"version_id": "<string>",
"rollout": [
{
"version_id": "<string>",
"weight": 50
}
]
},
"match": [
{
"attribute": "<string>",
"values": [
"<string>"
]
}
]
}
]
}
'{
"assistant_id": "<string>",
"rules": [
{
"serve": {
"version_id": "<string>",
"rollout": [
{
"version_id": "<string>",
"weight": 50
}
]
},
"match": [
{
"attribute": "<string>",
"values": [
"<string>"
]
}
]
}
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}