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

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

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

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

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

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

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

req, _ := http.NewRequest("POST", 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.post("https://api.pathors.com/v1/projects/{projectId}/test-suites")
.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")

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

request = Net::HTTP::Post.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

請求

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

路徑參數

projectId
string
required
專案 ID

標頭

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

請求主體

name
string
required
測試套件的名稱
testCaseIds
array
要納入套件中的測試案例 ID 陣列

回應

回傳建立的測試套件,狀態碼為 201

範例

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