Create a team-level API key
curl --request PUT \
--url https://api.wirespeed.co/v1/team/api-keys \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"expirationDays": 123
}
'import requests
url = "https://api.wirespeed.co/v1/team/api-keys"
payload = {
"name": "<string>",
"expirationDays": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: '<string>', expirationDays: 123})
};
fetch('https://api.wirespeed.co/v1/team/api-keys', 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.wirespeed.co/v1/team/api-keys",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'expirationDays' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.wirespeed.co/v1/team/api-keys"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"expirationDays\": 123\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.wirespeed.co/v1/team/api-keys")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"expirationDays\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wirespeed.co/v1/team/api-keys")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"expirationDays\": 123\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"teamId": "<string>",
"userId": "<string>",
"expiration": "<string>",
"role": "ADMIN",
"name": "<string>",
"createdAt": "<string>",
"lastUsed": "<string>",
"token": "<string>"
}{
"message": "<string>",
"statusCode": 123
}Team
Create a team-level API key
PUT
/
v1
/
team
/
api-keys
Create a team-level API key
curl --request PUT \
--url https://api.wirespeed.co/v1/team/api-keys \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"expirationDays": 123
}
'import requests
url = "https://api.wirespeed.co/v1/team/api-keys"
payload = {
"name": "<string>",
"expirationDays": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: '<string>', expirationDays: 123})
};
fetch('https://api.wirespeed.co/v1/team/api-keys', 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.wirespeed.co/v1/team/api-keys",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'expirationDays' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.wirespeed.co/v1/team/api-keys"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"expirationDays\": 123\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.wirespeed.co/v1/team/api-keys")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"expirationDays\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wirespeed.co/v1/team/api-keys")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"expirationDays\": 123\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"teamId": "<string>",
"userId": "<string>",
"expiration": "<string>",
"role": "ADMIN",
"name": "<string>",
"createdAt": "<string>",
"lastUsed": "<string>",
"token": "<string>"
}{
"message": "<string>",
"statusCode": 123
}Authorizations
Team API key sent as a Bearer token. Create a key in Wirespeed under Settings → Team. See https://docs.wirespeed.co/api-reference/authentication.
Body
application/json
Response
Unique identifier for the API key
ID of the team this API key belongs to
ID of the user who created this API key
Expiration date and time for the API key
Role permissions assigned to this API key
Available options:
ADMIN, ANALYST, VIEWER Name assigned to the API key
Timestamp when the API key was created
Timestamp when the API key was last used
The generated team API key token (only returned once upon creation)

