Join 34,000+ subscribers and receive articles from our blog about software quality, testing, QA and security.

API create test plan with "include_all" in runs is not overwriting the "include_all" in plan entries


I’ve tried doing this using python and in command line, and both comes back with an unexpected test plan.

This is what I entered into the command line:
curl -H “Content-Type: application/json” -u “email:password” -d ‘{“name”: “include all overwrite test”, “entries”: [{“suite_id”: 2583, “include_all”: true, “runs”: [{“include_all”: false, “case_ids”: [135851]}]}]}’ “

According to the API, the “include_all” in “runs” will overwrite the “include_all” in “plan_entries”, however, it did not. Is there something wrong the the json or is there a bug in the API?

UPDATE: You need to include “config_ids” in order for the API to read the “runs”, even if you don’t want to use configs for your run.

When adding configurations, it must work in pairs. However, when using the API, you are allowed to select just ONE configuration. Why does the UI and the API work differently?


@cpoon you just gave out the credentials to your TestRail installation. You might want to change your password…