Requirements is the term that we use for software statements of "functional user requirements" or "user stories".  Other tools commonly refer to this resource as a Story or Issue or requirement

Get a Single Requirement

    GET{APP_ID}/requirements/{requirement_ID}  or




Example response 

	"app_id": "AP72f6ed657b", 
	"id": "RQa08b20f03b",
	"title": "add delivery address", 
	"ref": "US01",
	"body": "As a visitor I want to add my delivery_address", 
	"notes": "",
	"external_id": "",
	"created_utc": 1572969724,
	"updated_utc": 1573596283,
	"cfp": 4, 
		"phrase": "add delivery_address",				
		"object": "delivery_address",	
			"send new delivery_address data": "E",
  			"check if delivery_address id exists": "R",
  			"write new delivery_address": "W",
 			"return error/confirmation": "X"
Field Name Description
app_id Parent (container) app for this requirement.
id id 
title A short title for the requirement.
body The functional part of the user story.  This is what gets analysed to detect functional intent of the requirement.
ref Your own reference id for the user story
notes Any information of the requirement that is NOT the functional description.
cfp COSMIC function points, the universal ISO standard for software size measurement.
Analysis sub object This is the results of the functional intent detection. 
dms stands for data movements
Entry, Read, Write and eXit  are the four data movements
that are core to the COSMIC sizing methodology. 

Get Many Requirements


example request for all the stories in an app


curl -i -X GET \
   -H "Authorization:Basic Y29saW5AYWxiaW9udGVjaC5jb206azgwd2dzZ2trbzhzOGNzzzA0Y2NrY2swggggd2dvczBnNGM4czhnZw==" \

Get a Single Requirement with Suggested Tests

ScopeMaster derives suggested functional tests for any successfully sized functional requirement.

Example Request:


Example Response:

    "app_id": "APac056df2a4",
    "id": "RQ3f894255da",
    "title": "random title 154",
    "ref": "",
    "body": "as a person I can update stuff",
    "notes": "some notes",
    "org_id": "OR30c8746905",
    "external_id": "ext_562",
    "created_utc": 1574019132,
    "updated_utc": 1574019959,
    "analysed_utc": 1574019959,
    "analysed": true,
    "cfp": 3,
    "functional_steps_count": 1,
    "analysis": [
            "phrase": "update stuff",
            "object": "stuff",
            "dms": {
                "Send updated stuff": "E",
                "write updates": "W",
                "return error / confirmation": "X"
    "self": "",
    "suggested_tests": {
        "scenarios": [
                "scenario_name": "POSITIVE: update a valid stuff",
                "phrase": "Update stuff",
                "description": "Use a given valid stuff identifier ",
                "checks": [
                    "1: Check that data is accepted ",
                    "2: Check that the stuff changes have been correctly stored  ",
                    "3: Check that a confirmation message was generated ",
                    "4: Check that subsequent navigation is correct "
                "scenario_name": "NEGATIVE: update an invalid stuff with a valid identifier",
                "phrase": "Update stuff",
                "description": "Use a valid identifier and an invalid stuff attributes",
                "checks": [
                    "1: Check that correct errors have been returned  ",
                    "2: Check that nothing has been modified",
                    "3: Check that subsequent navigation is correct "
        "check_count": 7,
        "scenario_count": 2

Add a Requirement 

Requirements must be added to a pre-existing app_id, the app must have been created first within ScopeMaster, then requirements can be added to it from the API.


Your POST must include a json object with these text fields:

Field Description Example
app_id required  AP097981
required Must be unique to this app. Used for synchronisation.  e.g.  your Jira issue ID. 1234
required must be unique to this app
(max 256 chars)
Profile handling - update
required functional part of the user story.  Include the user, the object of interest and what is to be done to it. As an administrator I want to update profiles
ref Optional.  An user friendly id (max 40 chars) AB_1234
notes Optional. Test criteria, business case and
any non-functional information

Example POST request payload:

	"title": "As a [site] editor I can save information",
	"ref": "MG-101",
	"body": "As a [site] editor I can save information in a trainers-only section [so that only trainers see it.]",
	"notes": null,
	"external_id": "MG-101",

Response returns a copy of the object as per GET requirements/{requirement_id}

Update a Requirement - PUT

You can only modify the following fields only title, body, ref, notes.  The external_id cannot be changed.


Example to update the fields of a requirement


PUT Payload:

   "app_id":"APb632487c49"	,
   "requirement_id":"RQe53d8abb9d"	,
  		"title": "123456",
   		 "body": "As an editor I can swing red shoes "

Response returns a copy of the object as per GET requirements/{requirement_id}

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us