Update a Single KPI, Quarter Priority, Annual Priority, or Winning Move Status

For a given KPI, Quarter Priority, Annual Priority, or Winning Move, update its status.

Method Details

HTTP Methods: POST

HTTP Methods: https://api.rhythm.cloud/api/public/goal/{id}/status

Content Type: application/json

Response Format: json

Requires Authentication? Yes

Headers User-Agent

Required Parameters

Http header: Bearer {token}

In Body JSON (all values as strings):

year: 4 digit year

quarter: 1 - 4

week: 1 - 13

date: yyyy-MM-dd (required for KPIs and Quarter Priorities if year/quarter/week is not supplied, and for all Annual Priorities and Winning Moves)

(Note: if year, quarter, and week are all specified, the date field will be ignored; if either year, quarter, or week is not specified, date will be used to derive the year, quarter, and week for the status)

color: supergreen|green|yellow|red|s|g|y|r (case insensitive)

projected: the projected value for the week

actual: the actual value for the week

variance: the variance for the week

(Note: All settings for KPIs, Quarter Priorities, Annual Priorities, and Winning Moves will be respected. E.g. if it is set for Auto Status Color, then color will be ignored and auto derived by Rhythm; or if Variance is set to Auto, the variance will be ignored and auto calculated by Rhythm)

comment: a comment to be created together with the update

redCriteria: the Red Success Criteria for the goal

yellowCriteria:  the Yellow Success Criteria for the goal

greenCriteria:  the Green Success Criteria for the goal

supergreenCriteria:  the SuperGreen Success Criteria for the goal

Any field not supplied will not be affected by the update. If you want to set a field to null, then a "NULL" string must be passed in explicitly.

Response

If your request is successful, you will receive a http code 200 (OK), with a JSON of {"success":true} in the response body.

If the access token has expired, you will receive a http code 401 (unauthorized).

Any other errors encountered in the API call will result in a http code 400 (bad request), with additional information in a JSON object contained in the response body in the following format:

{

"error": "error code used by Rhythm Systems for further trouble shooting",

"error_description": "description of the error encountered in the API call",

"data": "{the data received by Rhythm in your API call}"

}

Request Body Sample

{

"year":"2022",

  "quarter":"4",

  "week":"12",

  "date":"2022-12-21",

  "color":"red",

  "projected":"13.2",

  "actual":"5.2",

  "variance":"-7",

  "redCriteria":"10",

  "yellowCriteria":"Between Red and Green",

  "greenCriteria":"15",

  "supergreenCriteria":"20",

  "comment":"red comment"

}