curl --request PATCH \
--url https://guidinghand.ai/v1/test_sets/{test_set_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"description": "<string>",
"repeat": 1,
"customer": {
"persona": "Retired teacher. Not technical. Short, polite answers.",
"facts": {
"Wi-Fi network": "HomeNet",
"Wi-Fi password": {
"secret": "blue-kite-42"
}
},
"clicks_admin_prompts": true,
"does_steps": true
},
"cases": [
{
"test_case_id": "<string>",
"repeat": 10
}
],
"metadata": {
"customer_id": "cus_42"
}
}
'const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
repeat: 1,
customer: {
persona: 'Retired teacher. Not technical. Short, polite answers.',
facts: {'Wi-Fi network': 'HomeNet', 'Wi-Fi password': {secret: 'blue-kite-42'}},
clicks_admin_prompts: true,
does_steps: true
},
cases: [{test_case_id: '<string>', repeat: 10}],
metadata: {customer_id: 'cus_42'}
})
};
fetch('https://guidinghand.ai/v1/test_sets/{test_set_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://guidinghand.ai/v1/test_sets/{test_set_id}"
payload = {
"name": "<string>",
"description": "<string>",
"repeat": 1,
"customer": {
"persona": "Retired teacher. Not technical. Short, polite answers.",
"facts": {
"Wi-Fi network": "HomeNet",
"Wi-Fi password": { "secret": "blue-kite-42" }
},
"clicks_admin_prompts": True,
"does_steps": True
},
"cases": [
{
"test_case_id": "<string>",
"repeat": 10
}
],
"metadata": { "customer_id": "cus_42" }
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"object": "test_set",
"test_set_id": "ts_3nV0qR7cWb1e",
"name": "Lenovo Win10 benchmark",
"description": "<string>",
"repeat": 10,
"customer": {
"persona": "Retired teacher. Not technical. Short, polite answers.",
"facts": {
"Wi-Fi network": "HomeNet",
"Wi-Fi password": {
"secret": "blue-kite-42"
}
},
"clicks_admin_prompts": true,
"does_steps": true
},
"cases": [
{
"test_case_id": "<string>",
"key": "<string>",
"repeat": 10
}
],
"case_count": 123,
"metadata": {
"customer_id": "cus_42"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"error": {
"type": "invalid_request",
"message": "<string>",
"code": "<string>",
"answered_by": "customer",
"test_case_ids": [
"<string>"
]
}
}{
"error": {
"type": "invalid_request",
"message": "<string>",
"code": "<string>",
"answered_by": "customer",
"test_case_ids": [
"<string>"
]
}
}{
"error": {
"type": "invalid_request",
"message": "<string>",
"code": "<string>",
"answered_by": "customer",
"test_case_ids": [
"<string>"
]
}
}{
"error": {
"type": "invalid_request",
"message": "<string>",
"code": "<string>",
"answered_by": "customer",
"test_case_ids": [
"<string>"
]
}
}Update a test set
Send only the fields to change. cases replaces the whole list. Needs the admin role or an API key.
curl --request PATCH \
--url https://guidinghand.ai/v1/test_sets/{test_set_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"description": "<string>",
"repeat": 1,
"customer": {
"persona": "Retired teacher. Not technical. Short, polite answers.",
"facts": {
"Wi-Fi network": "HomeNet",
"Wi-Fi password": {
"secret": "blue-kite-42"
}
},
"clicks_admin_prompts": true,
"does_steps": true
},
"cases": [
{
"test_case_id": "<string>",
"repeat": 10
}
],
"metadata": {
"customer_id": "cus_42"
}
}
'const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
repeat: 1,
customer: {
persona: 'Retired teacher. Not technical. Short, polite answers.',
facts: {'Wi-Fi network': 'HomeNet', 'Wi-Fi password': {secret: 'blue-kite-42'}},
clicks_admin_prompts: true,
does_steps: true
},
cases: [{test_case_id: '<string>', repeat: 10}],
metadata: {customer_id: 'cus_42'}
})
};
fetch('https://guidinghand.ai/v1/test_sets/{test_set_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://guidinghand.ai/v1/test_sets/{test_set_id}"
payload = {
"name": "<string>",
"description": "<string>",
"repeat": 1,
"customer": {
"persona": "Retired teacher. Not technical. Short, polite answers.",
"facts": {
"Wi-Fi network": "HomeNet",
"Wi-Fi password": { "secret": "blue-kite-42" }
},
"clicks_admin_prompts": True,
"does_steps": True
},
"cases": [
{
"test_case_id": "<string>",
"repeat": 10
}
],
"metadata": { "customer_id": "cus_42" }
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"object": "test_set",
"test_set_id": "ts_3nV0qR7cWb1e",
"name": "Lenovo Win10 benchmark",
"description": "<string>",
"repeat": 10,
"customer": {
"persona": "Retired teacher. Not technical. Short, polite answers.",
"facts": {
"Wi-Fi network": "HomeNet",
"Wi-Fi password": {
"secret": "blue-kite-42"
}
},
"clicks_admin_prompts": true,
"does_steps": true
},
"cases": [
{
"test_case_id": "<string>",
"key": "<string>",
"repeat": 10
}
],
"case_count": 123,
"metadata": {
"customer_id": "cus_42"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"error": {
"type": "invalid_request",
"message": "<string>",
"code": "<string>",
"answered_by": "customer",
"test_case_ids": [
"<string>"
]
}
}{
"error": {
"type": "invalid_request",
"message": "<string>",
"code": "<string>",
"answered_by": "customer",
"test_case_ids": [
"<string>"
]
}
}{
"error": {
"type": "invalid_request",
"message": "<string>",
"code": "<string>",
"answered_by": "customer",
"test_case_ids": [
"<string>"
]
}
}{
"error": {
"type": "invalid_request",
"message": "<string>",
"code": "<string>",
"answered_by": "customer",
"test_case_ids": [
"<string>"
]
}
}Authorizations
An org API key (gh_live_…) from Settings → API keys in the console.
Path Parameters
The test set’s id (ts_…).
Body
Only the fields you send change. cases replaces the whole list.
1 - 200Tries per case (1 to 20).
1 <= x <= 20The simulated customer for its cases that have none of their own.
Show child attributes
Show child attributes
Its cases, in order.
Show child attributes
Show child attributes
Your own ids and labels (e.g. a ticket or customer id), returned as given.
Show child attributes
Show child attributes
{ "customer_id": "cus_42" }
Response
OK
A list of test cases to run together.
"ts_3nV0qR7cWb1e"
"Lenovo Win10 benchmark"
Tries per case unless the case or the run says otherwise (1 to 20).
1 <= x <= 20The simulated customer for its cases that have none of their own.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Your own ids and labels (e.g. a ticket or customer id), returned as given.
Show child attributes
Show child attributes
{ "customer_id": "cus_42" }