ProductOSDocs

Entity reference · v1

key-results

KR-NNNNNNtable key_resultssoft delete

Quantitative key results under an objective. Optional outcome_id closes the loop.

Endpoints

GET/api/v1/key-results
POST/api/v1/key-results
GET/api/v1/key-results/{id}
PATCH/api/v1/key-results/{id}
DELETE/api/v1/key-results/{id}
POST/api/v1/key-results/{id}/restore

Writable fields

* required on create. PATCH treats every field as optional.

FieldTypeConstraintsNotes
objective_id*uuid
titlestring
metric_namestring
baselinefloat
targetfloat
currentfloat
unitstring
statusstringon-track | at-risk | behind | completed
outcome_iduuid
sort_orderinteger
is_draftboolean
metadatajson

Listing & filtering

  • Pagination: ?limit=50&offset=0 · max limit 200
  • Default sort: ?sort=sort_order&order=asc
  • Sortable fields: created_at · updated_at · sort_order · id_number
  • Search (?q=): title, metric_name
  • Filters: ?objective_id= ?status= ?outcome_id= , repeat any filter to OR multiple values
  • Trash: hidden by default; pass ?include_deleted=true

Examples

curlbash
curl 'https://productos.ca/api/v1/key-results?limit=10' \
  -H "Authorization: Bearer $TOKEN"

Try it out

Paste a token and hit a real endpoint. The request goes from your browser straight to /api/v1/key-results. The token is held in this page only for the request and is never stored.

Try it out

Issue tokens in Settings → API tokens. Token never leaves this page.

GET/api/v1/key-results?limit=3

Generated from the API's entity configuration. This page is rebuilt on every deploy, so it always matches the live API.