Skip to main content
POST
/
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.create('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.create(
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.New(
context.TODO(),
"assistant_id",
telnyx.AIAssistantCanaryDeployNewParams{
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.CanaryDeployCreateParams;
import com.telnyx.sdk.models.ai.assistants.canarydeploys.CanaryDeployResponse;

public final class Main {
private Main() {}

public static void main(String[] args) {
TelnyxClient client = TelnyxOkHttpClient.fromEnv();

CanaryDeployCreateParams params = CanaryDeployCreateParams.builder()
.assistantId("assistant_id")
.canaryDeploy(CanaryDeploy.builder().build())
.build();
CanaryDeployResponse canaryDeployResponse = client.ai().assistants().canaryDeploys().create(params);
}
}
require "telnyx"

telnyx = Telnyx::Client.new(api_key: "My API Key")

canary_deploy_response = telnyx.ai.assistants.canary_deploys.create("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->create(
'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 create \
--api-key 'My API Key' \
--assistant-id assistant_id
curl --request POST \
--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

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

assistant_id
string
required

Unique identifier of the assistant.

Body

application/json

Create/update request body. Accepts:

  • rules — canonical ordered list of routing rules
rules
Rule · object[]

Response

Successful Response

Response shape.

Always carries rules (canonical).

assistant_id
string
required
rules
Rule · object[]
required
created_at
string<date-time>
required
updated_at
string<date-time>
required