put__repo_{repoId}_ai_apikey
⚠️ TEST ENVIRONMENT ONLY
PUT /repo/{repoId}/ai/apikey/{apikeyId}
Update Repository AI API Key
Update the properties of an existing AI API key. Currently, this endpoint allows updating the name of the API key for better organization and identification.
Important Notes:
Only non-deleted keys can be updated
Users must have access to the repository to update its API keys
All fields in the request body are optional - only provide fields you want to update
The actual key and secret values cannot be modified (rotate by creating a new key instead)
System events are logged for audit purposes
Security:
Access is validated against repository permissions
Update operations trigger system events for audit trails
Keys remain encrypted in storage
Use Cases:
Rename keys for better organization
Update key descriptions as usage changes
Maintain clear labeling of production vs. development keys
TypeScript Client Library
public updateRepoAiApiKey = async (
repoId: string,
apikeyId: string,
data: UpdateRepoAiApiKeyRequest
): Promise<UpdateRepoAiApiKeyResponse> => {
return this.makeRequest<UpdateRepoAiApiKeyResponse>(`repo/${repoId}/ai/apikey/${apikeyId}`, 'PUT', data);
};Code Samples
# You can also use wget
curl -X PUT https://backend.flashback.tech/repo/{repoId}/ai/apikey/{apikeyId} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'PUT https://backend.flashback.tech/repo/{repoId}/ai/apikey/{apikeyId} HTTP/1.1
Host: backend.flashback.tech
Content-Type: application/json
Accept: application/jsonconst inputBody = '{
"name": "Updated Production AI Key"
}';
const headers = {
'Content-Type':'application/json',
'Accept':'application/json',
'Authorization':'Bearer {access-token}'
};
fetch('https://backend.flashback.tech/repo/{repoId}/ai/apikey/{apikeyId}',
{
method: 'PUT',
body: inputBody,
headers: headers
})
.then(function(res) {
return res.json();
}).then(function(body) {
console.log(body);
});require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer {access-token}'
}
result = RestClient.put 'https://backend.flashback.tech/repo/{repoId}/ai/apikey/{apikeyId}',
params: {
}, headers: headers
p JSON.parse(result)import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'Bearer {access-token}'
}
r = requests.put('https://backend.flashback.tech/repo/{repoId}/ai/apikey/{apikeyId}', headers = headers)
print(r.json())<?php
require 'vendor/autoload.php';
$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer {access-token}',
);URL obj = new URL("https://backend.flashback.tech/repo/{repoId}/ai/apikey/{apikeyId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());package main
import (
"bytes"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"Authorization": []string{"Bearer {access-token}"},
}
data := bytes.NewBuffer([]byte{jsonReq})
req, err := http.NewRequest("PUT", "https://backend.flashback.tech/repo/{repoId}/ai/apikey/{apikeyId}", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}Body parameter
{
"name": "Updated Production AI Key"
}Parameters
repoId
path
string
true
Unique identifier of the repository
apikeyId
path
string
true
Unique identifier of the API key
body
body
object
true
Updated API key properties
» name
body
string
false
Human-readable name for the API key
Example responses
200 Response
{
"success": true,
"message": "AI API key updated successfully"
}Responses
Response Schema
Status Code 200
» success
boolean
false
none
Operation success status
» message
string
false
none
Success message
Status Code 403
» success
boolean
false
none
none
» message
string
false
none
Error message
Status Code 404
» success
boolean
false
none
none
» message
string
false
none
Error message
Status Code 500
» success
boolean
false
none
none
» message
string
false
none
Error message
To perform this operation, you must be authenticated by means of one of the following methods: BearerAuth
Last updated
Was this helpful?