Projects
This chapter focuses on project administration.
Get all projects
A GET to /projects returns all the projects (standard and template) that the user is allowed to read. A parameter can be specified to retrieve only standard projects or template ones.
Parameters milestoneId and milestoneLabel are optionals and mutually exclusive: at most, only one may be provided at a time.
Get all projects (included project template)
HTTP request
GET /api/rest/latest/projects?page=0&size=4 HTTP/1.1
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1171
{
"_embedded" : {
"projects" : [ {
"_type" : "project",
"id" : 367,
"name" : "sample project 1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367"
}
}
}, {
"_type" : "project",
"id" : 456,
"name" : "sample project 2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/456"
}
}
}, {
"_type" : "project",
"id" : 789,
"name" : "sample project 3",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/789"
}
}
} ],
"project-templates" : [ {
"_type" : "project-template",
"id" : 971,
"name" : "project template 4",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/971"
}
}
} ]
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects?page=0&size=4"
}
},
"page" : {
"size" : 4,
"totalElements" : 4,
"totalPages" : 1,
"number" : 0
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
all the standard projects |
|
|
all the project templates |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get only standard projects (without project template)
HTTP request
GET /api/rest/latest/projects?type=STANDARD HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
type of project |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 935
{
"_embedded" : {
"projects" : [ {
"_type" : "project",
"id" : 367,
"name" : "standard project 1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367"
}
}
}, {
"_type" : "project",
"id" : 456,
"name" : "standard project 2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/456"
}
}
}, {
"_type" : "project",
"id" : 789,
"name" : "standard project 3",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/789"
}
}
} ]
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects?type=STANDARD&page=0&size=20"
}
},
"page" : {
"size" : 20,
"totalElements" : 3,
"totalPages" : 1,
"number" : 0
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
all the standard projects |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get only project templates
HTTP request
GET /api/rest/latest/projects?type=TEMPLATE HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
type of project |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 965
{
"_embedded" : {
"project-templates" : [ {
"_type" : "project-template",
"id" : 367,
"name" : "sample project 1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367"
}
}
}, {
"_type" : "project-template",
"id" : 456,
"name" : "sample project 2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/456"
}
}
}, {
"_type" : "project-template",
"id" : 789,
"name" : "sample project 3",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/789"
}
}
} ]
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects?type=TEMPLATE&page=0&size=20"
}
},
"page" : {
"size" : 20,
"totalElements" : 3,
"totalPages" : 1,
"number" : 0
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
all the project templates |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get project
A GET to /projects/{id} returns the project with the given id. This retrieves a project administration data and is only authorized to administrators.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/367 HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 925
{
"_type" : "project",
"id" : 367,
"description" : "<p>This project is the main sample project</p>",
"label" : "Main Sample Project",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367"
},
"requirements" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/requirements-library/content"
},
"test-cases" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/test-cases-library/content"
},
"campaigns" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/campaigns-library/content"
},
"clearances" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/clearances"
},
"attachments" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/attachments"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project |
|
|
the type of the entity |
|
|
the name of the project |
|
|
the label of the project |
|
|
the description of the project |
|
|
the attachments of the project |
|
|
the BDD script language of the project |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to the requirement library content for this project |
|
link to the test case library content for this project |
|
link to the execution library content for this project |
|
link to the clearances for this project |
|
link to the attachments for this project |
Get project by name
A GET to /projects with a request parameter projectName returns the project with the given name.
This retrieves a project administration data and is only authorized to administrators.
Be careful, both the name of the parameter projectName and the value of the project name are case-sensitive.
HTTP request
GET /api/rest/latest/projects?projectName=sample+project HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
the name of the project |
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 921
{
"_type" : "project",
"id" : 367,
"description" : "<p>This project is the main sample project</p>",
"label" : "Main Sample Project",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367"
},
"requirements" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/requirements-library/content"
},
"test-cases" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/test-cases-library/content"
},
"campaigns" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/campaigns-library/content"
},
"clearances" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/clearances"
},
"attachments" : {
"href" : "http://localhost:8080/api/rest/latest/projects/attachments"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project |
|
|
the type of the entity |
|
|
the name of the project |
|
|
the label of the project |
|
|
the description of the project |
|
|
the attachments of the project |
|
|
the BDD script language of the project |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to the requirement library content for this project |
|
link to the test case library content for this project |
|
link to the execution library content for this project |
|
link to the clearances for this project |
|
link to the attachments for this project |
Create project
A POST to /projects creates a new project.
Create new project
HTTP request
POST /api/rest/latest/projects HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 134
Host: localhost:8080
{
"_type" : "project",
"name" : "sample project",
"label" : "no price tag",
"description" : "<p>do something meaningful</p>"
}
Request fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity (mandatory) |
|
|
the name of the project |
|
|
the label of the project |
|
|
the description of the project |
Query parameters
| Parameter | Description |
|---|---|
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 686
{
"_type" : "project",
"id" : 333,
"description" : "<p>do something meaningful</p>",
"label" : "no price tag",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333"
},
"requirements" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/requirements-library/content"
},
"test-cases" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/test-cases-library/content"
},
"campaigns" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/campaigns-library/content"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to the requirement library content for this project |
|
link to the test case library content for this project |
|
link to the execution library content for this project |
Create new project using template
HTTP request
POST /api/rest/latest/projects HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 635
Host: localhost:8080
{
"_type" : "project",
"name" : "sample project",
"label" : "no price tag",
"description" : "<p>do something meaningful</p>",
"template_id" : 23,
"params" : {
"copy_permissions" : true,
"copy_cuf" : true,
"copy_bugtracker_binding" : true,
"copy_ai_configuration" : true,
"copy_automated_projects" : true,
"copy_infolists" : true,
"copy_milestone" : true,
"copy_allow_tc_modif_from_exec" : true,
"copy_optional_exec_statuses" : true,
"copy_plugins_activation" : true,
"keep_template_binding" : true,
"copy_plugins_configuration" : true,
"keep_plugins_binding" : true
}
}
Request fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity (mandatory) |
|
|
the name of the project |
|
|
the label of the project |
|
|
the description of the project |
|
|
the id of project template |
|
|
the parameters to create a new project from template |
|
|
whether the template’s permissions will be copied or not |
|
|
whether the template’s custom fields will be copied or not |
|
|
whether the template’s bugtracker will be copied or not |
|
|
whether the template’s project ai configuration will be copied or not |
|
|
whether the template’s test automation management will be copied or not |
|
|
whether the template’s information lists will be copied or not |
|
|
whether the template’s milestones will be copied or not |
|
|
whether the template’s execution option will be copied or not |
|
|
whether the template’s optional execution statuses will be copied or not |
|
|
whether the template’s plugins activation will be copied or not |
|
|
whether the template binding will be kept or not (true by default) |
|
|
whether the template’s plugins configuration will be copied or not |
|
|
whether the project’s plugins configuration will be tied to the template’s plugin configuration |
Query parameters
| Parameter | Description |
|---|---|
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 686
{
"_type" : "project",
"id" : 333,
"description" : "<p>do something meaningful</p>",
"label" : "no price tag",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333"
},
"requirements" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/requirements-library/content"
},
"test-cases" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/test-cases-library/content"
},
"campaigns" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/campaigns-library/content"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to the requirement library content for this project |
|
link to the test case library content for this project |
|
link to the execution library content for this project |
Create project template
A POST to /projects creates a new project template.
Create new template
HTTP request
POST /api/rest/latest/projects HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 152
Host: localhost:8080
{
"_type" : "project-template",
"name" : "sample project template",
"label" : "no price tag",
"description" : "<p>do something meaningful</p>"
}
Request fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity (mandatory) |
|
|
the name of the project template |
|
|
the label of the project template |
|
|
the description of the project template |
Query parameters
| Parameter | Description |
|---|---|
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 704
{
"_type" : "project-template",
"id" : 333,
"description" : "<p>do something meaningful</p>",
"label" : "no price tag",
"name" : "sample project template",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333"
},
"requirements" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/requirements-library/content"
},
"test-cases" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/test-cases-library/content"
},
"campaigns" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/campaigns-library/content"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project template |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to the requirement library content for this project template |
|
link to the test case library content for this project template |
|
link to the execution library content for this project template |
Create new template from existing project
HTTP request
POST /api/rest/latest/projects HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 581
Host: localhost:8080
{
"_type" : "project-template",
"name" : "sample project template",
"label" : "no price tag",
"description" : "<p>do something meaningful</p>",
"project_id" : 55,
"params" : {
"copy_permissions" : true,
"copy_cuf" : true,
"copy_bugtracker_binding" : true,
"copy_automated_projects" : true,
"copy_ai_configuration" : true,
"copy_optional_exec_statuses" : true,
"copy_plugins_activation" : true,
"copy_infolists" : true,
"copy_milestone" : true,
"copy_allow_tc_modif_from_exec" : true,
"copy_plugins_configuration" : true
}
}
Request fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity (mandatory) |
|
|
the name of the project |
|
|
the label of the project |
|
|
the description of the project |
|
|
the id of project template |
|
|
the parameters to create a new project from template |
|
|
whether the project’s permissions will be copied or not |
|
|
whether the project’s custom fields will be copied or not |
|
|
whether the project’s bugtracker will be copied or not |
|
|
whether the project’s test automation management will be copied or not |
|
|
whether the project’s ai configuration will be copied or not |
|
|
whether the template’s optional execution statuses will be copied or not |
|
|
whether the template’s plugins activation will be copied or not |
|
|
whether the project’s information lists will be copied or not |
|
|
whether the project’s milestones will be copied or not |
|
|
whether the project’s execution option will be copied or not |
|
|
whether the project’s plugins' configuration will be copied or not |
Query parameters
| Parameter | Description |
|---|---|
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 704
{
"_type" : "project-template",
"id" : 333,
"description" : "<p>do something meaningful</p>",
"label" : "no price tag",
"name" : "sample project template",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333"
},
"requirements" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/requirements-library/content"
},
"test-cases" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/test-cases-library/content"
},
"campaigns" : {
"href" : "http://localhost:8080/api/rest/latest/projects/333/campaigns-library/content"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project template |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to the requirement library content for this project template |
|
link to the test case library content for this project template |
|
link to the execution library content for this project template |
Delete projects
A DELETE to /projects/{ids} deletes projects with the given ids (separated with comma). If you delete a project template, the binding will be removed on the projects associated with the project template.
Path parameters
| Parameter | Description |
|---|---|
|
the ids of the projects |
HTTP request
DELETE /api/rest/latest/projects/2 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 204 No Content
Get project clearances
A GET to /projects/{id}/clearances returns the clearances grouped by profiles for the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/367/clearances HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1826
{
"content" : {
"test_runner" : {
"_type" : "profile",
"id" : 6,
"name" : "TestRunner",
"type" : "system",
"users" : [ {
"_type" : "team",
"id" : 567,
"name" : "Team A",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/teams/567"
}
}
} ]
},
"test_designer" : {
"_type" : "profile",
"id" : 7,
"name" : "TestDesigner",
"type" : "system",
"users" : [ {
"_type" : "user",
"id" : 486,
"login" : "User-1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/users/486"
}
}
}, {
"_type" : "user",
"id" : 521,
"login" : "User-2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/users/521"
}
}
} ]
},
"validator" : {
"_type" : "profile",
"id" : 9,
"name" : "Validator",
"type" : "system",
"users" : [ {
"_type" : "team",
"id" : 852,
"name" : "Team B",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/teams/852"
}
}
} ]
},
"custom_tester" : {
"_type" : "profile",
"id" : 11,
"name" : "Custom Tester",
"type" : "custom",
"users" : [ {
"_type" : "team",
"id" : 853,
"name" : "Team C",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/teams/853"
}
}
} ]
}
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/clearances"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
contains clearances grouped by profiles |
|
|
contains the profile attributes (example of the validator profile) |
|
|
the type of the entity |
|
|
the id of the profile |
|
|
the name of the profile |
|
|
system if the profile is a system profile, custom if the profile is a custom profile |
|
|
the list of users/teams linked to the profile |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
the link to this project clearances |
Get project clearances (deprecated)
A GET to /projects/{id}/permissions returns the clearances grouped by profiles for the project with the given id.
This endpoint is still functional but is deprecated. Please use the more comprehensive /projects/{id}/clearances endpoint instead.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/367/permissions HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1021
{
"content" : {
"test_runner" : [ {
"_type" : "team",
"id" : 567,
"name" : "Team A",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/teams/567"
}
}
} ],
"test_designer" : [ {
"_type" : "user",
"id" : 486,
"login" : "User-1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/users/486"
}
}
}, {
"_type" : "user",
"id" : 521,
"login" : "User-2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/users/521"
}
}
} ],
"validator" : [ {
"_type" : "team",
"id" : 852,
"name" : "Team B",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/teams/852"
}
}
} ]
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/permissions"
}
}
}
Links
| Relation | Description |
|---|---|
|
the link to this project clearances |
Add clearances to project
A POST to /projects/{projectId}/clearances/{profileId}/users/{partyIds} adds users or teams to the profile for the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
the id of the profile |
|
the ids of the users/teams |
HTTP request
POST /api/rest/latest/projects/367/clearances/4/users/486,521 HTTP/1.1
Accept: application/json
Host: localhost:8080
Content-Type: application/x-www-form-urlencoded
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 731
{
"content" : {
"test_designer" : {
"_type" : "profile",
"id" : 7,
"name" : "TestDesigner",
"type" : "system",
"users" : [ {
"_type" : "user",
"id" : 486,
"login" : "User-1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/users/486"
}
}
}, {
"_type" : "user",
"id" : 521,
"login" : "User-2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/users/521"
}
}
} ]
}
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/clearances"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
contains the added clearance |
|
|
contains the profile attributes (example of the test designer profile) |
|
|
the type of the entity |
|
|
the id of the profile |
|
|
the name of the profile |
|
|
system if the profile is a system profile, custom if the profile is a custom profile |
|
|
the list of users/teams linked to the profile |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
the link to this project clearances |
Add clearances to project (deprecated - only for system profiles)
A POST to /projects/{projectId}/permissions/{permissionGroup} adds users or teams to the system profile for the project with the given id.
The possible {permissionGroup} are test_editor, project_viewer, project_manager, test_runner, test_designer, advanced_tester and validator.
This endpoint is still functional but is deprecated. Please use the more comprehensive /projects/{projectId}/clearances/{profileId}/users/{partyIds} endpoint instead.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
the profile in which the users/teams will be added |
HTTP request
POST /api/rest/latest/projects/367/permissions/test_designer?ids=486,521 HTTP/1.1
Accept: application/json
Content-Type: application/x-www-form-urlencoded
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
the ids of the users/teams |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 573
{
"content" : {
"test_designer" : [ {
"_type" : "user",
"id" : 486,
"login" : "User-1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/users/486"
}
}
}, {
"_type" : "user",
"id" : 521,
"login" : "User-2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/users/521"
}
}
} ]
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/367/permissions"
}
}
}
Links
| Relation | Description |
|---|---|
|
the link to this project clearances |
Delete clearances in project
A DELETE to /projects/{projectId}/users/{partyIds} deletes users/teams with the given ids (separated with comma).
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
the list of user/team ids to be deleted |
HTTP request
DELETE /api/rest/latest/projects/44/users/77,99 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Get campaigns of project
A GET to /projects/{id}/campaigns returns the campaigns in the project with the given id.
Parameters milestoneId and milestoneLabel are optionals and mutually exclusive: only one may be provided at a time.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/campaigns?page=2&size=3&sort=name,desc HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
the id of the milestone (optional) |
|
the label of the milestone (optional) |
|
number of the page to retrieve (optional) |
|
size of the page to retrieve (optional) |
|
which attributes of the returned entities should be sorted on (optional) |
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1525
{
"_embedded" : {
"campaigns" : [ {
"_type" : "campaign",
"id" : 255,
"name" : "campaign 1",
"reference" : "C-1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/campaigns/255"
}
}
}, {
"_type" : "campaign",
"id" : 122,
"name" : "campaign 2",
"reference" : "C-2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/campaigns/122"
}
}
}, {
"_type" : "campaign",
"id" : 147,
"name" : "campaign 3",
"reference" : "C-3",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/campaigns/147"
}
}
} ]
},
"_links" : {
"first" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns?page=0&size=3&sort=name,desc"
},
"prev" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns?page=1&size=3&sort=name,desc"
},
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns?page=2&size=3&sort=name,desc"
},
"next" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns?page=3&size=3&sort=name,desc"
},
"last" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns?page=3&size=3&sort=name,desc"
}
},
"page" : {
"size" : 3,
"totalElements" : 10,
"totalPages" : 4,
"number" : 2
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the test cases of this project |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get requirements of project
A GET to /projects/{id}/requirements returns the requirements in the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/requirements?page=2&size=3&sort=id,desc HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
number of the page to retrieve (optional) |
|
size of the page to retrieve (optional) |
|
which attributes of the returned entities should be sorted on (optional) |
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1479
{
"_embedded" : {
"requirements" : [ {
"_type" : "requirement",
"id" : 122,
"name" : "requirement 1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/requirements/122"
}
}
}, {
"_type" : "requirement",
"id" : 147,
"name" : "requirement 2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/requirements/147"
}
}
}, {
"_type" : "requirement",
"id" : 255,
"name" : "requirement 3",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/requirements/255"
}
}
} ]
},
"_links" : {
"first" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements?page=0&size=3&sort=id,desc"
},
"prev" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements?page=1&size=3&sort=id,desc"
},
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements?page=2&size=3&sort=id,desc"
},
"next" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements?page=3&size=3&sort=id,desc"
},
"last" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements?page=3&size=3&sort=id,desc"
}
},
"page" : {
"size" : 3,
"totalElements" : 10,
"totalPages" : 4,
"number" : 2
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the requirements of this project |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get test cases of project
Parameters milestoneId and milestoneLabel are optionals and mutually exclusive: only one may be provided at a time.
A GET to /projects/{id}/test-cases returns the test cases in the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/test-cases?page=2&size=3&sort=name,desc HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
the id of the milestone (optional) |
|
the label of the milestone (optional) |
|
number of the page to retrieve (optional) |
|
size of the page to retrieve (optional) |
|
which attributes of the returned entities should be sorted on (optional) |
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2347
{
"_embedded" : {
"test-cases" : [ {
"_type" : "test-case",
"id" : 122,
"name" : "test case 1",
"reference" : "TC-1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-cases/122"
}
}
}, {
"_type" : "test-case",
"id" : 147,
"name" : "test case 2",
"reference" : "TC-2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-cases/147"
}
}
}, {
"_type" : "scripted-test-case",
"id" : 222,
"name" : "scripted test case 1",
"reference" : "STC-1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-cases/222"
}
}
}, {
"_type" : "scripted-test-case",
"id" : 247,
"name" : "scripted test case 2",
"reference" : "STC-2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-cases/247"
}
}
}, {
"_type" : "keyword-test-case",
"id" : 322,
"name" : "keyword test case 1",
"reference" : "KTC-1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-cases/322"
}
}
}, {
"_type" : "keyword-test-case",
"id" : 347,
"name" : "keyword test case 2",
"reference" : "KTC-2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-cases/347"
}
}
} ]
},
"_links" : {
"first" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases?page=0&size=3&sort=name,desc"
},
"prev" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases?page=1&size=3&sort=name,desc"
},
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases?page=2&size=3&sort=name,desc"
},
"next" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases?page=3&size=3&sort=name,desc"
},
"last" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases?page=3&size=3&sort=name,desc"
}
},
"page" : {
"size" : 3,
"totalElements" : 10,
"totalPages" : 4,
"number" : 2
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the test cases of this project |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get custom report library contents
A GET to /projects/{id}/reporting-library/content returns the contents of the custom report library in the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/reporting-library/content?page=2&size=3&include=nested HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
number of the page to retrieve (optional) |
|
size of the page to retrieve (optional) |
|
which attributes of the returned entities should be sorted on (optional) |
|
which fields of the elements should be returned (optional) |
|
level of depth of the content that should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1523
{
"_embedded" : {
"reporting-library-content" : [ {
"entity_type" : "FOLDER",
"id" : 3,
"name" : "Folder",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/folders/3"
}
}
}, {
"entity_type" : "REPORT",
"id" : 44,
"name" : "Report",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/reports/44"
}
}
}, {
"entity_type" : "CHART",
"id" : 42,
"name" : "Chart",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/charts/42"
}
}
} ]
},
"_links" : {
"first" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/reporting-library/content?include=nested&page=0&size=3"
},
"prev" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/reporting-library/content?include=nested&page=1&size=3"
},
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/reporting-library/content?include=nested&page=2&size=3"
},
"next" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/reporting-library/content?include=nested&page=3&size=3"
},
"last" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/reporting-library/content?include=nested&page=3&size=3"
}
},
"page" : {
"size" : 3,
"totalElements" : 10,
"totalPages" : 4,
"number" : 2
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the list of elements for that page |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get execution library contents
A GET to /projects/{id}/campaigns-library/content returns the contents of the execution library in the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/campaigns-library/content?page=2&size=3&sort=name,desc&fields=name,reference&include=nested HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
number of the page to retrieve (optional) |
|
size of the page to retrieve (optional) |
|
which attributes of the returned entities should be sorted on (optional) |
|
which fields of the elements should be returned (optional) |
|
level of depth of the content that should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1826
{
"_embedded" : {
"campaign-library-content" : [ {
"_type" : "campaign",
"id" : 122,
"name" : "root-level campaign",
"reference" : "C-R",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/campaigns/122"
}
}
}, {
"_type" : "campaign-folder",
"id" : 255,
"name" : "root-level folder",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/campaign-folders/255"
}
}
}, {
"_type" : "campaign",
"id" : 147,
"name" : "content of root-level folder",
"reference" : "C-N",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/campaigns/147"
}
}
} ]
},
"_links" : {
"first" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns-library/content?fields=name,reference&include=nested&page=0&size=3&sort=name,desc"
},
"prev" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns-library/content?fields=name,reference&include=nested&page=1&size=3&sort=name,desc"
},
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns-library/content?fields=name,reference&include=nested&page=2&size=3&sort=name,desc"
},
"next" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns-library/content?fields=name,reference&include=nested&page=3&size=3&sort=name,desc"
},
"last" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/campaigns-library/content?fields=name,reference&include=nested&page=3&size=3&sort=name,desc"
}
},
"page" : {
"size" : 3,
"totalElements" : 10,
"totalPages" : 4,
"number" : 2
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the list of elements for that page |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get requirement library contents
A GET to /projects/{id}/requirements-library/content returns the contents of the requirement library in the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/requirements-library/content?page=2&size=3&include=nested&sort=id,desc HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
number of the page to retrieve (optional) |
|
size of the page to retrieve (optional) |
|
which attributes of the returned entities should be sorted on (optional) |
|
which fields of the elements should be returned (optional) |
|
level of depth of the content that should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1691
{
"_embedded" : {
"requirement-library-content" : [ {
"_type" : "requirement-folder",
"id" : 255,
"name" : "root-level folder",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/requirement-folders/255"
}
}
}, {
"_type" : "requirement",
"id" : 147,
"name" : "content of root-level folder",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/requirements/147"
}
}
}, {
"_type" : "requirement",
"id" : 122,
"name" : "root-level requirement",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/requirements/122"
}
}
} ]
},
"_links" : {
"first" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements-library/content?include=nested&page=0&size=3&sort=id,desc"
},
"prev" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements-library/content?include=nested&page=1&size=3&sort=id,desc"
},
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements-library/content?include=nested&page=2&size=3&sort=id,desc"
},
"next" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements-library/content?include=nested&page=3&size=3&sort=id,desc"
},
"last" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirements-library/content?include=nested&page=3&size=3&sort=id,desc"
}
},
"page" : {
"size" : 3,
"totalElements" : 10,
"totalPages" : 4,
"number" : 2
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the list of elements for that page |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get test case library contents
A GET to /projects/{id}/test-cases-library/content returns the contents of the test case library in the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/test-cases-library/content?page=2&size=3&sort=name,desc&fields=name,reference&include=nested HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
number of the page to retrieve (optional) |
|
size of the page to retrieve (optional) |
|
which attributes of the returned entities should be sorted on (optional) |
|
which fields of the elements should be returned (optional) |
|
level of depth of the content that should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2119
{
"_embedded" : {
"test-case-library-content" : [ {
"_type" : "test-case",
"id" : 122,
"name" : "root-level test case",
"reference" : "TC-R",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-cases/122"
}
}
}, {
"_type" : "test-case-folder",
"id" : 255,
"name" : "root-level folder",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-case-folders/255"
}
}
}, {
"_type" : "scripted-test-case",
"id" : 147,
"name" : "content of root-level folder",
"reference" : "TC-N",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-cases/147"
}
}
}, {
"_type" : "keyword-test-case",
"id" : 148,
"name" : "content of root-level folder",
"reference" : "TC-N",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/test-cases/148"
}
}
} ]
},
"_links" : {
"first" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases-library/content?fields=name,reference&include=nested&page=0&size=3&sort=name,desc"
},
"prev" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases-library/content?fields=name,reference&include=nested&page=1&size=3&sort=name,desc"
},
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases-library/content?fields=name,reference&include=nested&page=2&size=3&sort=name,desc"
},
"next" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases-library/content?fields=name,reference&include=nested&page=3&size=3&sort=name,desc"
},
"last" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/test-cases-library/content?fields=name,reference&include=nested&page=3&size=3&sort=name,desc"
}
},
"page" : {
"size" : 3,
"totalElements" : 10,
"totalPages" : 4,
"number" : 2
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the list of elements for that page |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Get requirement versions of project
A GET to /projects/{id}/requirement-versions returns the requirement versions in the project with the given id.
Parameters milestoneId and milestoneLabel are optionals and mutually exclusive: only one may be provided at a time.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/requirement-versions?page=2&size=3&sort=name,desc HTTP/1.1
Accept: application/json
Host: localhost:8080
Query parameters
| Parameter | Description |
|---|---|
|
the id of the milestone (optional) |
|
the label of the milestone (optional) |
|
number of the page to retrieve (optional) |
|
size of the page to retrieve (optional) |
|
which attributes of the returned entities should be sorted on (optional) |
|
which fields of the elements should be returned (optional) |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1401
{
"_embedded" : {
"requirement-versions" : [ {
"_type" : "requirement-version",
"id" : 255,
"name" : "Req version 1",
"reference" : "R-1",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/requirement-versions/255"
}
}
}, {
"_type" : "requirement-version",
"id" : 122,
"name" : "Req version 2",
"reference" : "D-2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/requirement-versions/122"
}
}
} ]
},
"_links" : {
"first" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirement-versions?page=0&size=3&sort=name,desc"
},
"prev" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirement-versions?page=1&size=3&sort=name,desc"
},
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirement-versions?page=2&size=3&sort=name,desc"
},
"next" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirement-versions?page=3&size=3&sort=name,desc"
},
"last" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/requirement-versions?page=3&size=3&sort=name,desc"
}
},
"page" : {
"size" : 3,
"totalElements" : 10,
"totalPages" : 4,
"number" : 2
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the requirement versions contained in this project |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Bind custom field to project
A POST to /projects/{id}/custom-fields/{entity-type} binds a custom field with the given id to the given entity for the given project.
HTTP request
POST /api/rest/latest/projects/14/custom-fields/REQUIREMENT_FOLDER?cufId=80 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
entity to bind (REQUIREMENT_FOLDER, CAMPAIGN_FOLDER, TESTCASE_FOLDER, TEST_CASE, TEST_STEP, CAMPAIGN, ITERATION, TEST_SUITE, REQUIREMENT_VERSION, EXECUTION, EXECUTION_STEP) |
Query parameters
| Parameter | Description |
|---|---|
|
the id of the custom-fields |
HTTP response
HTTP/1.1 200 OK
Unbind custom field to project
A DELETE to /projects/{id}/custom-fields/{entity-type} unbinds a custom field with the given id to given entity for given project.
HTTP request
DELETE /api/rest/latest/projects/14/custom-fields/REQUIREMENT_FOLDER?cufId=80 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
entity to bind (REQUIREMENT_FOLDER, CAMPAIGN_FOLDER, TESTCASE_FOLDER, TEST_CASE, TEST_STEP, CAMPAIGN, ITERATION, TEST_SUITE, REQUIREMENT_VERSION, EXECUTION, EXECUTION_STEP) |
Query parameters
| Parameter | Description |
|---|---|
|
the id of the custom-fields |
HTTP response
HTTP/1.1 204 No Content
Bind environment variables to project
A POST to /projects/{id}/environment-variables/{evIds} binds environment variables with the given ids for given project. This endpoint is available only when the test automation feature is enabled in the global configuration.
HTTP request
POST /api/rest/latest/projects/14/environment-variables/2,3 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
ids of the environment variables |
HTTP response
HTTP/1.1 200 OK
Unbind environment variables to project
A DELETE to /projects/{id}/environment-variables/{evIds} unbinds environment variables with the given ids for given project. This endpoint is available only when the test automation feature is enabled in the global configuration.
HTTP request
DELETE /api/rest/latest/projects/14/environment-variables/2,3 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
ids of the environment variables |
HTTP response
HTTP/1.1 204 No Content
Set a default value to an environment variable bound to a project
A POST to projects/{id}/environment-variables/{evId}/value sets a default value to given environment variable bound to a given project. This endpoint is available only when the test automation feature is enabled in the global configuration.
HTTP request
POST /api/rest/latest/projects/14/environment-variables/2/value HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 33
Host: localhost:8080
{
"value" : "new-value-label"
}
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
id of the environment variable bind to the project |
Request fields
| Path | Type | Description |
|---|---|---|
|
|
new value to set |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 138
{
"id" : 5,
"environmentVariable" : {
"id" : 2
},
"entityId" : 14,
"entityType" : "PROJECT",
"value" : "new-value-label"
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
id of the environment variable binding |
|
|
id of the entity |
|
|
type of the entity |
|
|
new value to set |
|
|
environment variable bind to the entity |
Bind info list to project
A POST to projects/{id}/info-lists/{list-type} binds the info list with the given id to the given project.
HTTP request
POST /api/rest/latest/projects/14/info-lists/requirement-category?infolist-id=1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
type of list to bind. list-type have 3 values : requirement-category, test-case-nature ou test-case-type |
Query parameters
| Parameter | Description |
|---|---|
|
the id of the info list |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 58
"infolist '1' bind to project 14 for requirement-category"
Bind milestones to a project
A POST to /projects/{id}/milestones associates a project with one or more milestones with the list of element IDs given in the request parameters.
To consult the milestones just follow the link "milestones".
HTTP request
POST /api/rest/latest/projects/14/milestones?milestoneIds=1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
Query parameters
| Parameter | Description |
|---|---|
|
the ids of the milestones |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 442
{
"_type" : "project",
"id" : 14,
"description" : "<p>This project is the main sample project</p>",
"label" : "Main Sample Project",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14"
},
"milestones" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/milestones"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project |
|
|
the type of the entity |
|
|
the name of the project |
|
|
the label of the project |
|
|
the description of the project |
|
|
the attachments of the project |
|
|
the BDD script language of the project |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to milestones associated with the project |
Get all milestones bound to a project
A GET to /projects/{id}/milestones to find all the milestones that are linked to a project
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/milestones HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1700
{
"_embedded" : {
"milestones" : [ {
"_type" : "milestone",
"id" : 11,
"label" : "Milestone 1",
"description" : "example of milestone creation",
"status" : "PLANNED",
"range" : null,
"owner" : null,
"end_date" : "2020-03-19T00:23:45.000+00:00",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"locked" : false,
"nb_of_binded_project" : 0,
"bindable_to_object" : false,
"bound_to_a_template" : false,
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/milestones/11"
}
}
}, {
"_type" : "milestone",
"id" : 12,
"label" : "Milestone 2",
"description" : "example of milestone creation number 2 ",
"status" : "PLANNED",
"range" : null,
"owner" : null,
"end_date" : "2020-03-19T00:23:45.000+00:00",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"locked" : false,
"nb_of_binded_project" : 0,
"bindable_to_object" : false,
"bound_to_a_template" : false,
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/milestones/12"
}
}
} ]
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14/milestones?page=0&size=20"
}
},
"page" : {
"size" : 20,
"totalElements" : 2,
"totalPages" : 1,
"number" : 0
}
}
Bind a bug tracker to a project
A POST to /projects/{id}/bug-trackers associates a project with the bug-tracker with the given id.
HTTP request
POST /api/rest/latest/projects/14/bug-trackers?bugtrackerId=1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
Query parameters
| Parameter | Description |
|---|---|
|
the id of the bug-tracker |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 435
{
"_type" : "project",
"id" : 14,
"description" : "<p>This project is the main sample project</p>",
"label" : "Main Sample Project",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14"
},
"bug-tracker" : {
"href" : "http://localhost:8080/api/rest/latest/bug-trackers/1"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project |
|
|
the type of the entity |
|
|
the name of the project |
|
|
the label of the project |
|
|
the description of the project |
|
|
the attachments of the project |
|
|
the BDD script language of the project |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to the bug tracker of this project |
Unbind a bug tracker from a project
A DELETE to /projects/{id}/bug-tracker dissociate the project with given id from its bug tracker.
HTTP request
DELETE /api/rest/latest/projects/14/bug-tracker HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 336
{
"_type" : "project",
"id" : 14,
"description" : "<p>This project is the main sample project</p>",
"label" : "Main Sample Project",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14"
}
}
}
Links
| Relation | Description |
|---|---|
|
link to this project |
Get the bug tracker bound to a project
A GET to projects/{id}/bug-trackers to find the bug-tracker linked to a project.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/1/bug-trackers HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 538
{
"_type" : "bug-tracker",
"id" : 3,
"name" : "bugtracker3",
"url" : "url3",
"kind" : "kind3",
"description" : "a description of the server",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"iframe_friendly" : false,
"authentication_policy" : "USER",
"authentication_protocol" : "BASIC_AUTH",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/bug-trackers/3"
}
}
}
Get all the bug-tracker project names bound to a SquashTM project
A GET to projects/{id}/bug-trackers-projects to find all the bug-tracker project names linked to a project.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/14/bug-trackers-projects HTTP/1.1
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 566
{
"_type" : "bug-tracker-project",
"bugtracker" : {
"_type" : "bug-tracker",
"id" : 1,
"name" : "bugtracker1",
"url" : "https://henix.atlassian.net/",
"kind" : "jira.xsquash",
"description" : "",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"iframe_friendly" : false,
"authentication_policy" : "USER",
"authentication_protocol" : "BASIC_AUTH"
},
"bugtracker_project_names" : [ "gfa1", "gfa2" ]
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the current bugtracker |
|
|
list of bugtracker project name |
Bind bug-tracker project names to a SquashTM project
A POST to projects/{id}/bug-trackers-projects to bind bug-tracker project names to a SquashTM project.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
POST /api/rest/latest/projects/14/bug-trackers-projects HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 80
Host: localhost:8080
{
"_type" : "bug-tracker-project",
"bugtracker_project_names" : [ "gfa3" ]
}
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 574
{
"_type" : "bug-tracker-project",
"bugtracker" : {
"_type" : "bug-tracker",
"id" : 1,
"name" : "bugtracker1",
"url" : "https://henix.atlassian.net/",
"kind" : "jira.xsquash",
"description" : "",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"iframe_friendly" : false,
"authentication_policy" : "USER",
"authentication_protocol" : "BASIC_AUTH"
},
"bugtracker_project_names" : [ "gfa1", "gfa2", "gfa3" ]
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the current bugtracker |
|
|
list of bugtracker project name |
Delete bug-tracker project names from a SquashTM project
A DELETE to projects/{id}/bug-trackers-projects to delete bug-tracker project names from a SquashTM project.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
POST /api/rest/latest/projects/14/bug-trackers-projects HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 80
Host: localhost:8080
{
"_type" : "bug-tracker-project",
"bugtracker_project_names" : [ "gfa3" ]
}
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 574
{
"_type" : "bug-tracker-project",
"bugtracker" : {
"_type" : "bug-tracker",
"id" : 1,
"name" : "bugtracker1",
"url" : "https://henix.atlassian.net/",
"kind" : "jira.xsquash",
"description" : "",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"iframe_friendly" : false,
"authentication_policy" : "USER",
"authentication_protocol" : "BASIC_AUTH"
},
"bugtracker_project_names" : [ "gfa1", "gfa2", "gfa3" ]
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the current bugtracker |
|
|
list of bugtracker project name |
Bind a scm repository to a project
A POST to /projects/{id}/scm-repository associates the project with given id to the scm repository given as parameter.
HTTP request
POST /api/rest/latest/projects/14/scm-repository?scmRepositoryId=11 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
Query parameters
| Parameter | Description |
|---|---|
|
the id of the scm repository |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 443
{
"_type" : "project",
"id" : 14,
"description" : "<p>This project is the main sample project</p>",
"label" : "Main Sample Project",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14"
},
"scm-repository" : {
"href" : "http://localhost:8080/api/rest/latest/scm-repositories/11"
}
}
}
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to the scm repository of this project |
Unbind a scm repository from a project
A DELETE to /projects/{id}/scm-repository dissociate the project with given id from its scm repository.
HTTP request
DELETE /api/rest/latest/projects/14/scm-repository HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 336
{
"_type" : "project",
"id" : 14,
"description" : "<p>This project is the main sample project</p>",
"label" : "Main Sample Project",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/14"
}
}
}
Links
| Relation | Description |
|---|---|
|
link to this project |
Get project automation configuration
A GET to projects/{id}/automation-conf to find a project automation configuration.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/1/automation-conf HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 395
{
"_type" : "project-automation-configuration",
"bdd_implementation_technology" : "ROBOT",
"bdd_implementation_language" : "ENGLISH",
"automation_workflow_type" : "NATIVE",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1/automation-conf"
},
"project" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the technology used to implement bdd tests |
|
|
the language used to implement bdd tests |
|
|
the type of automation workflow among 'NONE', 'NATIVE' or 'NATIVE_SIMPLIFIED' |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this configuration |
|
link to the project |
Modify project automation configuration
A PATCH to projects/{id}/automation-conf modifies the automation configuration of the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
PATCH /api/rest/latest/projects/1/automation-conf HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 185
Host: localhost:8080
{
"_type" : "project-automation-configuration",
"bdd_implementation_technology" : "CUCUMBER_4",
"bdd_implementation_language" : "GERMAN",
"automation_workflow_type" : "NATIVE"
}
Request fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the technology used to implement bdd tests |
|
|
the language used to implement bdd tests |
|
|
the type of automation workflow among 'NONE', 'NATIVE' or 'NATIVE_SIMPLIFIED' |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 399
{
"_type" : "project-automation-configuration",
"bdd_implementation_technology" : "CUCUMBER_4",
"bdd_implementation_language" : "GERMAN",
"automation_workflow_type" : "NATIVE",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1/automation-conf"
},
"project" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the technology used to implement bdd tests |
|
|
the language used to implement bdd tests |
|
|
the type of automation workflow among 'NONE', 'NATIVE' or 'NATIVE_SIMPLIFIED' |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this configuration |
|
link to the project |
Bind a test automation server to a project
A POST to /projects/{id}/test-automation-server associates the project with the given id to the test automation server given as parameter. This endpoint is available only when the test automation feature is enabled in the global configuration.
HTTP request
POST /api/rest/latest/projects/13/test-automation-server?testAutomationServerId=3 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
Query parameters
| Parameter | Description |
|---|---|
|
the id of the automation server |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 460
{
"_type" : "project",
"id" : 13,
"description" : "<p>Project for automated executions.</p>",
"label" : "Automated executions project",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/13"
},
"test-automation-server" : {
"href" : "http://localhost:8080/api/rest/latest/test-automation-servers/3"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project |
|
|
the type of the entity |
|
|
the name of the project |
|
|
the label of the project |
|
|
the description of the project |
|
|
the attachments of the project |
|
|
the BDD script language of the project |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
|
link to the automation server of this project |
Unbind a test automation server from a project
A DELETE to /projects/{id}/test-automation-server dissociates the project with the given id from its test automation server. This endpoint is available only when the test automation feature is enabled in the global configuration.
HTTP request
DELETE /api/rest/latest/projects/13/test-automation-server HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 339
{
"_type" : "project",
"id" : 13,
"description" : "<p>Project for automated executions.</p>",
"label" : "Automated executions project",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/13"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the id of the project |
|
|
the type of the entity |
|
|
the name of the project |
|
|
the label of the project |
|
|
the description of the project |
|
|
the attachments of the project |
|
|
the BDD script language of the project |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this project |
Enable or disable a plugin of a project
A POST to projects/{id}/plugin/{pluginId}/activate activates or deactivates the plugin with the given id.
HTTP request
POST /api/rest/latest/projects/14/plugins/squash.tm.plugin.jirasync/activate?enabled=false&saveConfig=false HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
the string corresponding to the id of the plugin to activate or deactivate |
Query parameters
| Parameter | Description |
|---|---|
|
true to activate the plugin, false to deactivate it |
|
only relevant when deactivating a plugin, set it to true if you want to keep your configuration |
HTTP response
HTTP/1.1 204 No Content
Bind an AI server to a project
A POST to /projects/{projectId}/ai-servers/{aiServerId} associates the project with given projectId to the AI server with given aiServerId.
HTTP request
POST /api/rest/latest/projects/13/ai-servers/2 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
|
the id of the ai server to bind |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 439
{
"_type" : "project",
"id" : 13,
"description" : "<p>Project for automated executions.</p>",
"label" : "Project bound to ai server",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/13"
},
"ai-server" : {
"href" : "http://localhost:8080/api/rest/latest/legacy-ai-servers/2"
}
}
}
Get AI server bound to a project
A GET to projects/{id}/ai-servers to find the AI server bound to a project.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the artificial intelligence server |
HTTP request
GET /api/rest/latest/projects/3/ai-servers HTTP/1.1
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1301
{
"_type" : "ai-server",
"id" : 123,
"name" : "an ai server",
"url" : "https://api.openai.com/v1/chat/completions",
"description" : "This server should be used for generating test case, link it with projects 2, 4 and 12",
"payload_template" : "{\"model\": \"gpt-4-1106-preview\", \"messages\": [{\"role\": \"user\", \"content\": \"You are a manual tester. You must transform a requirement into one or several test cases, written in English. The description of the test case must consist of a sum up of the given requirement. Your answer must have this format : \"{\"testCases\":[{\"name\":\"\",\"description\":\"\",\"prerequisites\":\"\",\"testSteps\":[{\"index\":0,\"action\":\"\",\"expectedResult\":\"\"}]}]\"{{ requirement }}\"}] ,\"temperature\": 0.9, \"top_p\": 0.9, \"n\": 1, \"stream\": false, \"max_tokens\": 2000, \"presence_penalty\": 0, \"frequency_penalty\": 0}",
"json_path" : "choices[0].message.content",
"authentication_policy" : "APP_LEVEL",
"authentication_protocol" : "TOKEN_AUTH",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/3/ai-servers"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the id of the artificial intelligence server |
|
|
the name of the artificial intelligence server |
|
|
the url of the remote artificial intelligence server |
|
|
the authentication policy of the artificial intelligence server (APP_LEVEL by default) |
|
|
the authentication protocol of the artificial intelligence server (TOKEN_AUTH by default) |
|
|
a pre-formatted payload containing query parameters and a placeholder, designed for submission to an AI service for processing |
|
|
a description of the server |
|
|
a string expression used to navigate and extract specific nodes to access the generated answer in the response |
|
|
user who created the entity |
|
|
timestamp of the creation (ISO 8601) |
|
|
user who modified the entity the most recently |
|
|
timestamp of last modification (ISO 8601) |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this artificial intelligence server |
Unbind an AI server from a project
A DELETE to /projects/{id}/ai-servers dissociates the project with given id from its AI server.
HTTP request
DELETE /api/rest/latest/projects/13/ai-servers HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 337
{
"_type" : "project",
"id" : 13,
"description" : "<p>Project for automated executions.</p>",
"label" : "Project bound to ai server",
"name" : "sample project",
"bddScriptLanguage" : "ENGLISH",
"attachments" : [ ],
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/13"
}
}
}
Links
| Relation | Description |
|---|---|
|
link to this project |
Get all project AI configurations
A GET to /projects/{id}/ai-conf returns all the project AI configurations.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/1/ai-conf HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2216
{
"_embedded" : {
"project-ai-configurations" : [ {
"_type" : "project-ai-configuration",
"id" : 1,
"project" : {
"_type" : "project",
"id" : 1,
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1"
}
}
},
"ai_use" : {
"id" : 1,
"use" : "CLASSIC_TEST_CASE_GENERATION"
},
"ai_server" : {
"_type" : "ai-server",
"id" : 3,
"name" : "first ai server",
"url" : "https://openai.com/",
"description" : "a description of the use and destination of this server",
"authentication_policy" : "APP_LEVEL",
"authentication_protocol" : "TOKEN_AUTH",
"provider" : "OPEN_AI",
"model_name" : null,
"options" : null,
"document_context_limits" : {
"supported_formats" : [ "txt", "md", "csv" ],
"max_total_files_size_mb" : 10
},
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/legacy-ai-servers/3"
}
}
},
"prompt_set" : {
"_type" : "prompt-set",
"id" : 3,
"name" : "First prompt set",
"description" : "Description of the first prompt set",
"ai_use" : {
"id" : 1,
"use" : "CLASSIC_TEST_CASE_GENERATION"
},
"prompt_set_level" : "INSTANCE",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/prompt-sets/3"
}
}
}
} ]
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1/ai-conf?page=0&size=20"
}
},
"page" : {
"size" : 20,
"totalElements" : 1,
"totalPages" : 1,
"number" : 0
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the AI configurations of this project |
|
|
the page size for that query |
|
|
total number of elements |
|
|
how many pages can be browsed |
|
|
the page number |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to the first page (optional) |
|
link to the previous page (optional) |
|
link to this page |
|
link to the next page (optional) |
|
link to the last page (optional) |
Add project AI configuration
A POST to /projects/{id}/ai-conf adds a new project AI configuration.
HTTP request
POST /api/rest/latest/projects/1/ai-conf HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 92
Host: localhost:8080
{
"ai_use" : "CLASSIC_TEST_CASE_GENERATION",
"prompt_set_id" : 2,
"ai_server_id" : 3
}
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
Request fields
| Path | Type | Description |
|---|---|---|
|
|
the artificial intelligence use to configure inside the project |
|
|
the id of the artificial intelligence server to add to configuration |
|
|
the id of the prompt set to add to configuration |
HTTP response
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 1784
{
"_type" : "project-ai-configuration",
"id" : 1,
"project" : {
"_type" : "project",
"id" : 1,
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1"
}
}
},
"ai_use" : {
"id" : 1,
"use" : "CLASSIC_TEST_CASE_GENERATION"
},
"ai_server" : {
"_type" : "ai-server",
"id" : 3,
"name" : "first ai server",
"url" : "https://openai.com/",
"description" : "a description of the use and destination of this server",
"authentication_policy" : "APP_LEVEL",
"authentication_protocol" : "TOKEN_AUTH",
"provider" : "OPEN_AI",
"model_name" : null,
"options" : null,
"document_context_limits" : {
"supported_formats" : [ "txt", "md", "csv" ],
"max_total_files_size_mb" : 10
},
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/legacy-ai-servers/3"
}
}
},
"prompt_set" : {
"_type" : "prompt-set",
"id" : 2,
"name" : "A prompt set",
"description" : "Description of the prompt set",
"ai_use" : {
"id" : 1,
"use" : "CLASSIC_TEST_CASE_GENERATION"
},
"prompt_set_level" : "INSTANCE",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/prompt-sets/2"
}
}
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1/ai-conf"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the id of the configuration |
|
|
the project where the configuration is |
|
|
the artificial intelligence use to configure inside the project |
|
|
the artificial intelligence server for configuration |
|
|
the prompt set for configuration |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to project AI configurations |
Modify project AI configuration
A PATCH to /projects/{id}/ai-conf modifies a project AI configuration with the given use.
HTTP request
PATCH /api/rest/latest/projects/1/ai-conf HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 92
Host: localhost:8080
{
"ai_use" : "CLASSIC_TEST_CASE_GENERATION",
"prompt_set_id" : 2,
"ai_server_id" : 3
}
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
Request fields
| Path | Type | Description |
|---|---|---|
|
|
the artificial intelligence use to configure inside the project |
|
|
the id of the artificial intelligence server to add to configuration |
|
|
the id of the prompt set to add to configuration |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1784
{
"_type" : "project-ai-configuration",
"id" : 1,
"project" : {
"_type" : "project",
"id" : 1,
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1"
}
}
},
"ai_use" : {
"id" : 1,
"use" : "CLASSIC_TEST_CASE_GENERATION"
},
"ai_server" : {
"_type" : "ai-server",
"id" : 3,
"name" : "first ai server",
"url" : "https://openai.com/",
"description" : "a description of the use and destination of this server",
"authentication_policy" : "APP_LEVEL",
"authentication_protocol" : "TOKEN_AUTH",
"provider" : "OPEN_AI",
"model_name" : null,
"options" : null,
"document_context_limits" : {
"supported_formats" : [ "txt", "md", "csv" ],
"max_total_files_size_mb" : 10
},
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/legacy-ai-servers/3"
}
}
},
"prompt_set" : {
"_type" : "prompt-set",
"id" : 2,
"name" : "A prompt set",
"description" : "Description of the prompt set",
"ai_use" : {
"id" : 1,
"use" : "CLASSIC_TEST_CASE_GENERATION"
},
"prompt_set_level" : "INSTANCE",
"created_by" : "admin",
"created_on" : "2020-04-06T10:00:00.000+00:00",
"last_modified_by" : "admin",
"last_modified_on" : "2020-04-06T10:00:00.000+00:00",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/prompt-sets/2"
}
}
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1/ai-conf"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the id of the configuration |
|
|
the project where the configuration is |
|
|
the artificial intelligence use to configure inside the project |
|
|
the artificial intelligence server for configuration |
|
|
the prompt set of the configuration |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to project AI configurations |
Delete project AI configuration
A DELETE to /projects/{id}/ai-conf deletes a project AI configuration with the given use.
HTTP request
DELETE /api/rest/latest/projects/3/ai-conf HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 47
Host: localhost:8080
{
"ai_use" : "CLASSIC_TEST_CASE_GENERATION"
}
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
Request fields
| Path | Type | Description |
|---|---|---|
|
|
the artificial intelligence use of the configuration to delete from the project |
HTTP response
HTTP/1.1 204 No Content
Get project AI prompt language
A GET to projects/{id}/ai-language to find a project AI prompt language.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
GET /api/rest/latest/projects/1/ai-language HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: localhost:8080
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 289
{
"_type" : "project-ai-prompt-language",
"ai_prompt_language" : "FRENCH",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1/ai-language"
},
"project" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the language used for AI prompts. Supported languages are: ENGLISH, FRENCH, GERMAN or SPANISH. |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this configuration |
|
link to the project |
Modify project AI prompt language.
A PATCH to projects/{id}/ai-language modifies the AI prompt language of the project with the given id.
Path parameters
| Parameter | Description |
|---|---|
|
the id of the project |
HTTP request
PATCH /api/rest/latest/projects/1/ai-language HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 79
Host: localhost:8080
{
"_type" : "project-ai-prompt-language",
"ai_prompt_language" : "GERMAN"
}
Request fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the language used for AI prompts. Supported languages are: ENGLISH, FRENCH, GERMAN or SPANISH. |
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 289
{
"_type" : "project-ai-prompt-language",
"ai_prompt_language" : "GERMAN",
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1/ai-language"
},
"project" : {
"href" : "http://localhost:8080/api/rest/latest/projects/1"
}
}
}
Response fields
| Path | Type | Description |
|---|---|---|
|
|
the type of the entity |
|
|
the language used for AI prompts. Supported languages are: ENGLISH, FRENCH, GERMAN or SPANISH. |
|
|
related links |
Links
| Relation | Description |
|---|---|
|
link to this configuration |
|
link to the project |