Skip to main content
PUT
/
v1
/
projects
/
{projectId}
/
test-suites
/
{testSuiteId}
更新測試套件
curl --request PUT \
  --url https://api.pathors.com/v1/projects/{projectId}/test-suites/{testSuiteId} \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "testCaseIds": [
    {}
  ]
}
'
import requests

url = "https://api.pathors.com/v1/projects/{projectId}/test-suites/{testSuiteId}"

payload = {
"name": "<string>",
"testCaseIds": [{}]
}
headers = {
"Authorization": "<authorization>",
"Content-Type": "application/json"
}

response = requests.put(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'PUT',
headers: {Authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: '<string>', testCaseIds: [{}]})
};

fetch('https://api.pathors.com/v1/projects/{projectId}/test-suites/{testSuiteId}', 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.pathors.com/v1/projects/{projectId}/test-suites/{testSuiteId}",
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>',
'testCaseIds' => [
[

]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"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.pathors.com/v1/projects/{projectId}/test-suites/{testSuiteId}"

payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"testCaseIds\": [\n {}\n ]\n}")

req, _ := http.NewRequest("PUT", url, payload)

req.Header.Add("Authorization", "<authorization>")
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.pathors.com/v1/projects/{projectId}/test-suites/{testSuiteId}")
.header("Authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"testCaseIds\": [\n {}\n ]\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.pathors.com/v1/projects/{projectId}/test-suites/{testSuiteId}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"testCaseIds\": [\n {}\n ]\n}"

response = http.request(request)
puts response.read_body
{
  "data": {}
}

請求

PUT https://api.pathors.com/v1/projects/{projectId}/test-suites/{testSuiteId}

路徑參數

projectId
string
required
專案 ID
testSuiteId
string
required
測試套件 ID

標頭

Authorization
string
required
使用您的 Developer Key 進行 Bearer 令牌認證

請求主體

name
string
測試套件更新後的名稱
testCaseIds
array
更新後的測試案例 ID 陣列(會取代所有現有的關聯)

回應

data
object
更新後的測試套件物件。

範例

curl -X PUT https://api.pathors.com/v1/projects/{projectId}/test-suites/{testSuiteId} \
  -H "Authorization: Bearer dk_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Updated regression suite",
    "testCaseIds": ["test-case-uuid-1", "test-case-uuid-3"]
  }'
{
  "data": {
    "id": "test-suite-uuid",
    "projectId": "project-uuid",
    "name": "Updated regression suite",
    "testCases": [
      { "id": "test-case-uuid-1" },
      { "id": "test-case-uuid-3" }
    ],
    "createdAt": "2026-03-23T00:00:00.000Z",
    "updatedAt": "2026-03-23T00:00:00.000Z"
  }
}