curl
curl --request POST \
--url https://example.algolia.net/agent-studio/1/providers \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'x-algolia-api-key: ALGOLIA_API_KEY' \
--header 'x-algolia-application-id: ALGOLIA_APPLICATION_ID' \
--data '
{
"name": "lorem",
"providerName": "openai",
"input": {
"apiKey": "lorem",
"baseUrl": "lorem"
}
}
'// Initialize the client
var client = new AgentStudioClient(
new AgentStudioConfig("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
);
// Call the API
var response = await client.CreateProviderAsync(
new ProviderAuthenticationCreate
{
Name = "My OpenAI Provider",
ProviderName = Enum.Parse<ProviderName>("Openai"),
Input = new ProviderInput(new OpenAIProviderInput { ApiKey = "sk-test-key-1234" }),
}
);
// print the response
Console.WriteLine(response);// Initialize the client
final client = AgentStudioClient(
appId: 'ALGOLIA_APPLICATION_ID', apiKey: 'ALGOLIA_API_KEY');
// Call the API
final response = await client.createProvider(
providerAuthenticationCreate: ProviderAuthenticationCreate(
name: "My OpenAI Provider",
providerName: ProviderName.fromJson("openai"),
input: OpenAIProviderInput(
apiKey: "sk-test-key-1234",
),
),
);
// print the response
print(response);// Initialize the client
client, err := agentStudio.NewClient("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
if err != nil {
// The client can fail to initialize if you pass an invalid parameter.
panic(err)
}
// Call the API
response, err := client.CreateProvider(client.NewApiCreateProviderRequest(
agentStudio.NewEmptyProviderAuthenticationCreate().
SetName("My OpenAI Provider").
SetProviderName(agentStudio.ProviderName("openai")).
SetInput(agentStudio.OpenAIProviderInputAsProviderInput(
agentStudio.NewEmptyOpenAIProviderInput().SetApiKey("sk-test-key-1234"))),
))
if err != nil {
// handle the eventual error
panic(err)
}
// print the response
print(response)// Initialize the client
AgentStudioClient client = new AgentStudioClient("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY");
// Call the API
ProviderAuthenticationResponse response = client.createProvider(
new ProviderAuthenticationCreate()
.setName("My OpenAI Provider")
.setProviderName(ProviderName.OPENAI)
.setInput(new OpenAIProviderInput().setApiKey("sk-test-key-1234"))
);
// print the response
System.out.println(response);// Initialize the client
const client = agentStudioClient('ALGOLIA_APPLICATION_ID', 'ALGOLIA_API_KEY');
// Call the API
const response = await client.createProvider({
name: 'My OpenAI Provider',
providerName: 'openai',
input: { apiKey: 'sk-test-key-1234' },
});
// print the response
console.log(response);// Initialize the client
val client = AgentStudioClient(appId = "ALGOLIA_APPLICATION_ID", apiKey = "ALGOLIA_API_KEY")
// Call the API
var response =
client.createProvider(
providerAuthenticationCreate =
ProviderAuthenticationCreate(
name = "My OpenAI Provider",
providerName = ProviderName.entries.first { it.value == "openai" },
input = OpenAIProviderInput(apiKey = "sk-test-key-1234"),
)
)
// print the response
println(response)// Initialize the client
$client = AgentStudioClient::create('ALGOLIA_APPLICATION_ID', 'ALGOLIA_API_KEY');
// Call the API
$response = $client->createProvider(
['name' => 'My OpenAI Provider',
'providerName' => 'openai',
'input' => ['apiKey' => 'sk-test-key-1234',
],
],
);
// print the response
var_dump($response);# Initialize the client
# In an asynchronous context, you can use AgentStudioClient instead, which exposes the exact same methods.
client = AgentStudioClientSync("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
# Call the API
response = client.create_provider(
provider_authentication_create={
"name": "My OpenAI Provider",
"providerName": "openai",
"input": {
"apiKey": "sk-test-key-1234",
},
},
)
# print the response
print(response)# Initialize the client
client = Algolia::AgentStudioClient.create("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
# Call the API
response = client.create_provider(
Algolia::AgentStudio::ProviderAuthenticationCreate.new(
name: "My OpenAI Provider",
provider_name: "openai",
input: Algolia::AgentStudio::OpenAIProviderInput.new(api_key: "sk-test-key-1234")
)
)
# print the response
puts(response)// Initialize the client
val client = AgentStudioClient(appId = "ALGOLIA_APPLICATION_ID", apiKey = "ALGOLIA_API_KEY")
// Call the API
val response = Await.result(
client.createProvider(
providerAuthenticationCreate = ProviderAuthenticationCreate(
name = "My OpenAI Provider",
providerName = ProviderName.withName("openai"),
input = OpenAIProviderInput(
apiKey = "sk-test-key-1234"
)
)
),
Duration(100, "sec")
)
// print the response
println(response)// Initialize the client
let client = try AgentStudioClient(appID: "ALGOLIA_APPLICATION_ID", apiKey: "ALGOLIA_API_KEY")
// Call the API
let response = try await client.createProvider(providerAuthenticationCreate: ProviderAuthenticationCreate(
name: "My OpenAI Provider",
providerName: ProviderName.openai,
input: ProviderInput.openAIProviderInput(OpenAIProviderInput(apiKey: "sk-test-key-1234"))
))
// print the response
print(response){
"createdAt": "<string>",
"id": "<string>",
"input": {
"apiKey": "<string>",
"baseUrl": "<string>"
},
"name": "<string>",
"providerName": "<string>",
"updatedAt": "<string>",
"lastUsedAt": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"ctx": {},
"input": "<unknown>"
}
]
}Providers
Create Provider
Create Provider.
POST
/
1
/
providers
curl
curl --request POST \
--url https://example.algolia.net/agent-studio/1/providers \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'x-algolia-api-key: ALGOLIA_API_KEY' \
--header 'x-algolia-application-id: ALGOLIA_APPLICATION_ID' \
--data '
{
"name": "lorem",
"providerName": "openai",
"input": {
"apiKey": "lorem",
"baseUrl": "lorem"
}
}
'// Initialize the client
var client = new AgentStudioClient(
new AgentStudioConfig("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
);
// Call the API
var response = await client.CreateProviderAsync(
new ProviderAuthenticationCreate
{
Name = "My OpenAI Provider",
ProviderName = Enum.Parse<ProviderName>("Openai"),
Input = new ProviderInput(new OpenAIProviderInput { ApiKey = "sk-test-key-1234" }),
}
);
// print the response
Console.WriteLine(response);// Initialize the client
final client = AgentStudioClient(
appId: 'ALGOLIA_APPLICATION_ID', apiKey: 'ALGOLIA_API_KEY');
// Call the API
final response = await client.createProvider(
providerAuthenticationCreate: ProviderAuthenticationCreate(
name: "My OpenAI Provider",
providerName: ProviderName.fromJson("openai"),
input: OpenAIProviderInput(
apiKey: "sk-test-key-1234",
),
),
);
// print the response
print(response);// Initialize the client
client, err := agentStudio.NewClient("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
if err != nil {
// The client can fail to initialize if you pass an invalid parameter.
panic(err)
}
// Call the API
response, err := client.CreateProvider(client.NewApiCreateProviderRequest(
agentStudio.NewEmptyProviderAuthenticationCreate().
SetName("My OpenAI Provider").
SetProviderName(agentStudio.ProviderName("openai")).
SetInput(agentStudio.OpenAIProviderInputAsProviderInput(
agentStudio.NewEmptyOpenAIProviderInput().SetApiKey("sk-test-key-1234"))),
))
if err != nil {
// handle the eventual error
panic(err)
}
// print the response
print(response)// Initialize the client
AgentStudioClient client = new AgentStudioClient("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY");
// Call the API
ProviderAuthenticationResponse response = client.createProvider(
new ProviderAuthenticationCreate()
.setName("My OpenAI Provider")
.setProviderName(ProviderName.OPENAI)
.setInput(new OpenAIProviderInput().setApiKey("sk-test-key-1234"))
);
// print the response
System.out.println(response);// Initialize the client
const client = agentStudioClient('ALGOLIA_APPLICATION_ID', 'ALGOLIA_API_KEY');
// Call the API
const response = await client.createProvider({
name: 'My OpenAI Provider',
providerName: 'openai',
input: { apiKey: 'sk-test-key-1234' },
});
// print the response
console.log(response);// Initialize the client
val client = AgentStudioClient(appId = "ALGOLIA_APPLICATION_ID", apiKey = "ALGOLIA_API_KEY")
// Call the API
var response =
client.createProvider(
providerAuthenticationCreate =
ProviderAuthenticationCreate(
name = "My OpenAI Provider",
providerName = ProviderName.entries.first { it.value == "openai" },
input = OpenAIProviderInput(apiKey = "sk-test-key-1234"),
)
)
// print the response
println(response)// Initialize the client
$client = AgentStudioClient::create('ALGOLIA_APPLICATION_ID', 'ALGOLIA_API_KEY');
// Call the API
$response = $client->createProvider(
['name' => 'My OpenAI Provider',
'providerName' => 'openai',
'input' => ['apiKey' => 'sk-test-key-1234',
],
],
);
// print the response
var_dump($response);# Initialize the client
# In an asynchronous context, you can use AgentStudioClient instead, which exposes the exact same methods.
client = AgentStudioClientSync("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
# Call the API
response = client.create_provider(
provider_authentication_create={
"name": "My OpenAI Provider",
"providerName": "openai",
"input": {
"apiKey": "sk-test-key-1234",
},
},
)
# print the response
print(response)# Initialize the client
client = Algolia::AgentStudioClient.create("ALGOLIA_APPLICATION_ID", "ALGOLIA_API_KEY")
# Call the API
response = client.create_provider(
Algolia::AgentStudio::ProviderAuthenticationCreate.new(
name: "My OpenAI Provider",
provider_name: "openai",
input: Algolia::AgentStudio::OpenAIProviderInput.new(api_key: "sk-test-key-1234")
)
)
# print the response
puts(response)// Initialize the client
val client = AgentStudioClient(appId = "ALGOLIA_APPLICATION_ID", apiKey = "ALGOLIA_API_KEY")
// Call the API
val response = Await.result(
client.createProvider(
providerAuthenticationCreate = ProviderAuthenticationCreate(
name = "My OpenAI Provider",
providerName = ProviderName.withName("openai"),
input = OpenAIProviderInput(
apiKey = "sk-test-key-1234"
)
)
),
Duration(100, "sec")
)
// print the response
println(response)// Initialize the client
let client = try AgentStudioClient(appID: "ALGOLIA_APPLICATION_ID", apiKey: "ALGOLIA_API_KEY")
// Call the API
let response = try await client.createProvider(providerAuthenticationCreate: ProviderAuthenticationCreate(
name: "My OpenAI Provider",
providerName: ProviderName.openai,
input: ProviderInput.openAIProviderInput(OpenAIProviderInput(apiKey: "sk-test-key-1234"))
))
// print the response
print(response){
"createdAt": "<string>",
"id": "<string>",
"input": {
"apiKey": "<string>",
"baseUrl": "<string>"
},
"name": "<string>",
"providerName": "<string>",
"updatedAt": "<string>",
"lastUsedAt": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"ctx": {},
"input": "<unknown>"
}
]
}This is a beta feature according to Algolia’s Terms of Service (“Beta Services”).
editSettingsAuthorizations
Your Algolia application ID.
Your Algolia API key with the necessary permissions to make the request. Permissions are controlled through access control lists (ACL) and access restrictions. The required ACL to make a request is listed in each endpoint's reference.
Body
application/json
OpenAI-specific provider input.
- openAIProviderInput
- azureOpenAIProviderInput
- openAICompatibleProviderInput
- baseProviderInput
- anthropicProviderInput
Show child attributes
Show child attributes
Required string length:
1 - 128Available options:
openai, azure_openai, google_genai, deepseek, openai_compatible, anthropic Response
Successful Response.
OpenAI-specific provider input.
- openAIProviderInput
- azureOpenAIProviderInput
- openAICompatibleProviderInput
- baseProviderInput
- anthropicProviderInput
Show child attributes
Show child attributes
Last modified on June 15, 2026
Was this page helpful?
⌘I