Python
import os
from scale_gp import SGPClient
client = SGPClient(
api_key=os.environ.get("SGP_API_KEY"), # This is the default and can be omitted
)
upload_schedule = client.knowledge_bases.upload_schedules.create(
knowledge_base_id="knowledge_base_id",
chunking_strategy_config={
"strategy": "character"
},
interval=0,
knowledge_base_data_source_id="knowledge_base_data_source_id",
)
print(upload_schedule.id)package main
import (
"context"
"fmt"
"github.com/stainless-sdks/sgp-go"
"github.com/stainless-sdks/sgp-go/option"
)
func main() {
client := sgp.NewClient(
option.WithAPIKey("My API Key"),
)
uploadSchedule, err := client.KnowledgeBases.UploadSchedules.New(
context.TODO(),
"knowledge_base_id",
sgp.KnowledgeBaseUploadScheduleNewParams{
ChunkingStrategyConfig: sgp.F[sgp.KnowledgeBaseUploadScheduleNewParamsChunkingStrategyConfigUnion](sgp.CharacterChunkingStrategyConfigParam{
Strategy: sgp.F(sgp.CharacterChunkingStrategyConfigStrategyCharacter),
}),
Interval: sgp.F(0.000000),
KnowledgeBaseDataSourceID: sgp.F("knowledge_base_data_source_id"),
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", uploadSchedule.ID)
}
curl --request POST \
--url https://api.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules \
--header 'Content-Type: application/json' \
--data '
{
"knowledge_base_data_source_id": "<string>",
"chunking_strategy_config": {
"strategy": "character",
"separator": "\n\n",
"chunk_size": 1000,
"chunk_overlap": 200
},
"interval": 123,
"next_run_at": "2023-11-07T05:31:56Z",
"account_id": "<string>"
}
'const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
knowledge_base_data_source_id: '<string>',
chunking_strategy_config: {strategy: 'character', separator: '\n\n', chunk_size: 1000, chunk_overlap: 200},
interval: 123,
next_run_at: '2023-11-07T05:31:56Z',
account_id: '<string>'
})
};
fetch('https://api.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules', 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.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules",
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([
'knowledge_base_data_source_id' => '<string>',
'chunking_strategy_config' => [
'strategy' => 'character',
'separator' => '
',
'chunk_size' => 1000,
'chunk_overlap' => 200
],
'interval' => 123,
'next_run_at' => '2023-11-07T05:31:56Z',
'account_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules")
.header("Content-Type", "application/json")
.body("{\n \"knowledge_base_data_source_id\": \"<string>\",\n \"chunking_strategy_config\": {\n \"strategy\": \"character\",\n \"separator\": \"\\n\\n\",\n \"chunk_size\": 1000,\n \"chunk_overlap\": 200\n },\n \"interval\": 123,\n \"next_run_at\": \"2023-11-07T05:31:56Z\",\n \"account_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"knowledge_base_data_source_id\": \"<string>\",\n \"chunking_strategy_config\": {\n \"strategy\": \"character\",\n \"separator\": \"\\n\\n\",\n \"chunk_size\": 1000,\n \"chunk_overlap\": 200\n },\n \"interval\": 123,\n \"next_run_at\": \"2023-11-07T05:31:56Z\",\n \"account_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"knowledge_base_id": "<string>",
"knowledge_base_data_source_id": "<string>",
"chunking_strategy_config": {
"strategy": "character",
"separator": "\n\n",
"chunk_size": 1000,
"chunk_overlap": 200
},
"status": "HEALTHY",
"interval": 123,
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"created_by_user_id": "<string>",
"created_by_identity_type": "user",
"account_id": "<string>",
"status_reason": "<string>",
"next_run_at": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Knowledge Bases
Create Upload Schedule
Description
Creates a upload schedule
Details
This API can be used to create a upload schedule. To use this API, review the request schema and pass in all fields that are required to create a upload schedule.
POST
/
v4
/
knowledge-bases
/
{knowledge_base_id}
/
upload-schedules
Python
import os
from scale_gp import SGPClient
client = SGPClient(
api_key=os.environ.get("SGP_API_KEY"), # This is the default and can be omitted
)
upload_schedule = client.knowledge_bases.upload_schedules.create(
knowledge_base_id="knowledge_base_id",
chunking_strategy_config={
"strategy": "character"
},
interval=0,
knowledge_base_data_source_id="knowledge_base_data_source_id",
)
print(upload_schedule.id)package main
import (
"context"
"fmt"
"github.com/stainless-sdks/sgp-go"
"github.com/stainless-sdks/sgp-go/option"
)
func main() {
client := sgp.NewClient(
option.WithAPIKey("My API Key"),
)
uploadSchedule, err := client.KnowledgeBases.UploadSchedules.New(
context.TODO(),
"knowledge_base_id",
sgp.KnowledgeBaseUploadScheduleNewParams{
ChunkingStrategyConfig: sgp.F[sgp.KnowledgeBaseUploadScheduleNewParamsChunkingStrategyConfigUnion](sgp.CharacterChunkingStrategyConfigParam{
Strategy: sgp.F(sgp.CharacterChunkingStrategyConfigStrategyCharacter),
}),
Interval: sgp.F(0.000000),
KnowledgeBaseDataSourceID: sgp.F("knowledge_base_data_source_id"),
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", uploadSchedule.ID)
}
curl --request POST \
--url https://api.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules \
--header 'Content-Type: application/json' \
--data '
{
"knowledge_base_data_source_id": "<string>",
"chunking_strategy_config": {
"strategy": "character",
"separator": "\n\n",
"chunk_size": 1000,
"chunk_overlap": 200
},
"interval": 123,
"next_run_at": "2023-11-07T05:31:56Z",
"account_id": "<string>"
}
'const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
knowledge_base_data_source_id: '<string>',
chunking_strategy_config: {strategy: 'character', separator: '\n\n', chunk_size: 1000, chunk_overlap: 200},
interval: 123,
next_run_at: '2023-11-07T05:31:56Z',
account_id: '<string>'
})
};
fetch('https://api.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules', 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.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules",
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([
'knowledge_base_data_source_id' => '<string>',
'chunking_strategy_config' => [
'strategy' => 'character',
'separator' => '
',
'chunk_size' => 1000,
'chunk_overlap' => 200
],
'interval' => 123,
'next_run_at' => '2023-11-07T05:31:56Z',
'account_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules")
.header("Content-Type", "application/json")
.body("{\n \"knowledge_base_data_source_id\": \"<string>\",\n \"chunking_strategy_config\": {\n \"strategy\": \"character\",\n \"separator\": \"\\n\\n\",\n \"chunk_size\": 1000,\n \"chunk_overlap\": 200\n },\n \"interval\": 123,\n \"next_run_at\": \"2023-11-07T05:31:56Z\",\n \"account_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.egp.scale.com/v4/knowledge-bases/{knowledge_base_id}/upload-schedules")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"knowledge_base_data_source_id\": \"<string>\",\n \"chunking_strategy_config\": {\n \"strategy\": \"character\",\n \"separator\": \"\\n\\n\",\n \"chunk_size\": 1000,\n \"chunk_overlap\": 200\n },\n \"interval\": 123,\n \"next_run_at\": \"2023-11-07T05:31:56Z\",\n \"account_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"knowledge_base_id": "<string>",
"knowledge_base_data_source_id": "<string>",
"chunking_strategy_config": {
"strategy": "character",
"separator": "\n\n",
"chunk_size": 1000,
"chunk_overlap": 200
},
"status": "HEALTHY",
"interval": 123,
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"created_by_user_id": "<string>",
"created_by_identity_type": "user",
"account_id": "<string>",
"status_reason": "<string>",
"next_run_at": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Path Parameters
Body
application/json
- CharacterChunkingStrategyConfig
- TokenChunkingStrategyConfig
- CustomChunkingStrategyConfig
- PreChunkedStrategyConfig
- EnhancedChunkingStrategyConfig
Show child attributes
Show child attributes
The ID of the account that owns the given entity.
Response
Successful Response
- CharacterChunkingStrategyConfig
- TokenChunkingStrategyConfig
- CustomChunkingStrategyConfig
- PreChunkedStrategyConfig
- EnhancedChunkingStrategyConfig
Show child attributes
Show child attributes
Available options:
HEALTHY, UNHEALTHY, ERROR, PAUSED The unique identifier of the entity.
The date and time when the entity was created in ISO format.
The date and time when the entity was last updated in ISO format.
The user who originally created the entity.
The type of identity that created the entity.
Available options:
user, service_account The ID of the account that owns the given entity.
⌘I

