Search
POST
Search all plans in a workspace
POST
Search all plans in a workspaceFind all plans in a workspace corresponding to the search attributes
POST
https://api.tability.app/v2/workspaces/:workspaceID/search/plans
Request Body
filter
String
Search filters
page
number
Identifier of the page results to fetch
[
{
"id": "b82dc810-75d9-4010-bc25-e29f536289ea",
"parent_id": null,
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "kHmU5VuMY0Tl",
"title": "Company OKRs 2023 Q4",
"plan_icon": "",
"start_at": "2023-10-01T00:00:00.000Z",
"finish_at": "2023-12-31T00:00:00.000Z",
"state": "published",
"created_at": "2023-11-23T12:41:13.597Z",
"updated_at": "2023-11-29T05:55:20.712Z",
"outcome_progress_prct": 0.133004926108374,
"initiative_progress_prct": 0.0,
"red_outcomes_count": 0,
"yellow_outcomes_count": 0,
"green_outcomes_count": 1,
"grey_outcomes_count": 4,
"total_outcomes_count": 5,
"ncs": 20.0,
"total_initiatives_count": 0,
"closed_initiatives_count": 0,
"archived": false,
"cached_tag_list": null,
"reminders_hour": 8,
"reminders_start_at": null,
"reminders_interval": 1,
"reminders_period": "week",
"active": true,
"expired": false,
"parent": null
}
]
Using plan filters
You can pass filters in a JSON body to your POST request to filter plans.
{
"filter": {
"status": "active",
"title": "My OKR plan",
"children_of": "abcD1234",
"archived": "false",
"start_after": "2023-01-01"
}
}
Here are the available filters:
title
: will return all plans matching a specific titlechildren_of
: will return all plans that are sub-plans or a specific plan (using the UUID or Nano ID of the parent plan)archived
: archived status of the planstatus
: status of the planstatus = active -> will return plans that are currently in progress
status = planning -> will return all plans that have a finish date in the future
start_after
: returns all plans starting after a specific date
POST
Search all objectives in a workspace
POST
Search all objectives in a workspaceFind all objectives in a workspace corresponding to the search attributes
POST
https://api.tability.app/v2/workspaces/:workspaceID/search/objectives
Request Body
filter
String
Search filters
page
number
Identifier of the page results to fetch
[
{
"id": "0987283c-b674-4986-8f64-51f6d7680fa4",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "fAkdMQ9b-3pY",
"plan_id": "e4e24db3-f4f4-4735-b475-fc950fd30fc6",
"rank": "",
"title": "Supercharge our revenue growth",
"created_at": "2023-11-23T11:27:42.667Z",
"updated_at": "2023-11-23T11:27:45.574Z",
"archived": false,
"outcome_progress_prct": 0.35,
"initiative_progress_prct": 0.714285714285714,
"total_initiatives_count": 7,
"closed_initiatives_count": 5,
"grey_outcomes_count": 0,
"red_outcomes_count": 1,
"yellow_outcomes_count": 0,
"green_outcomes_count": 1,
"total_outcomes_count": 2,
"ncs": 0.0,
"description": null,
"cached_tag_list": null,
"plan": {
"id": "e4e24db3-f4f4-4735-b475-fc950fd30fc6",
"parent_id": "0044993f-069a-4718-8139-306c01972b44",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "bvZmBz9a5Ws4",
"title": "Sales OKRs",
"plan_icon": ":moneybag:",
"start_at": "2023-10-12T00:00:00.000Z",
"finish_at": "2024-01-04T00:00:00.000Z",
"state": "published",
"created_at": "2023-11-23T11:27:40.438Z",
"updated_at": "2023-11-23T11:27:45.624Z",
"archived": false,
"cached_tag_list": null,
"active": true,
"expired": false
}
},
{
"id": "16a16482-821b-4c64-b0b4-f33eed40a975",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "igNfgIFGaswo",
"plan_id": "c283fd3b-fc2e-4f1e-b940-8f2ebdf8c66e",
"rank": "",
"title": "Power up our Product Growth",
"created_at": "2023-11-23T11:27:46.043Z",
"updated_at": "2023-11-23T11:27:49.045Z",
"archived": false,
"outcome_progress_prct": 0.51,
"initiative_progress_prct": 0.25,
"total_initiatives_count": 12,
"closed_initiatives_count": 3,
"grey_outcomes_count": 0,
"red_outcomes_count": 1,
"yellow_outcomes_count": 1,
"green_outcomes_count": 1,
"total_outcomes_count": 3,
"ncs": 0.0,
"description": null,
"cached_tag_list": null,
"plan": {
"id": "c283fd3b-fc2e-4f1e-b940-8f2ebdf8c66e",
"parent_id": "0044993f-069a-4718-8139-306c01972b44",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "zQEPZku9uYlB",
"title": "Product OKRs",
"plan_icon": ":bulb:",
"start_at": "2023-10-12T00:00:00.000Z",
"finish_at": "2024-01-04T00:00:00.000Z",
"state": "published",
"created_at": "2023-11-23T11:27:44.247Z",
"updated_at": "2023-11-23T11:27:49.855Z",
"archived": false,
"cached_tag_list": null,
"active": true,
"expired": false
}
}
]
Using objective filters
You can pass filters in a JSON body to your POST request to filter objectives.
{
"filter": {
"is_in_progress": true,
"archived": false,
"start_at": "2023-01-01",
"finish_at": "2023-03-31",
}
}
Here are the available filters:
is_in_progress
: if true, only returns objectives in plans that are currently in progressarchived
: return all objectives that where archived is "true" or "false"start_at
: returns all objectives in plans that start on or after a datefinish_at
: returns all objectives in plans that finish on or before a date
POST
Search all outcomes in a workspace
POST
Search all outcomes in a workspaceFind all outcomes in a workspace corresponding to the search attributes
POST
https://api.tability.app/v2/workspaces/:workspaceID/search/outcomes
Request Body
filter
String
Search filters
page
number
Identifier of the page results to fetch
[
{
"id": "2782552d-af69-40fc-a4c1-c638b16c0d53",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "Vjz94u6P52BX",
"objective_id": "2d4b5f4b-2950-49f0-ab25-4b9716ac87bb",
"rank": "~na",
"title": "Achieve 80% Net Promotor Score",
"description": "",
"from": 80.0,
"to": 85.0,
"score_format": "eSAT _number_%",
"created_at": "2023-11-23T12:41:15.114Z",
"updated_at": "2023-11-23T12:41:15.114Z",
"is_pending_checkin": false,
"archived": false,
"completed": false,
"open_initiatives_count": 0,
"closed_initiatives_count": 0,
"total_initiatives_count": 0,
"is_dummy": false,
"outcome_progress_prct": 0.0,
"initiative_progress_prct": 0.0,
"outcome_contributors_count": 0,
"cached_tag_list": null,
"outcome_type": "improve_metric",
"weight": 1,
"membership": null,
"plan": {
"id": "33cda32a-a99c-4f7e-8229-5f2021e0e6e1",
"parent_id": "b82dc810-75d9-4010-bc25-e29f536289ea",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "baclV3-_aIyX",
"title": "Cross Department OKRs",
"plan_icon": "",
"start_at": "2023-10-01T00:00:00.000Z",
"finish_at": "2023-12-31T00:00:00.000Z",
"state": "published",
"created_at": "2023-11-23T12:41:14.301Z",
"updated_at": "2023-11-23T12:41:36.954Z",
"archived": false,
"cached_tag_list": null,
"active": true,
"expired": false
},
"objective": {
"id": "2d4b5f4b-2950-49f0-ab25-4b9716ac87bb",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "Ggap3m7MyrZH",
"plan_id": "33cda32a-a99c-4f7e-8229-5f2021e0e6e1",
"rank": "~nd",
"title": "Get more inbound sales through word of mouth originating from a great product/service experience and focused sales approach",
"created_at": "2023-11-23T12:41:15.077Z",
"updated_at": "2023-11-23T12:41:15.077Z",
"archived": false,
"outcome_progress_prct": 0.0,
"initiative_progress_prct": 0.0,
"total_initiatives_count": 0,
"closed_initiatives_count": 0,
"grey_outcomes_count": 1,
"red_outcomes_count": 0,
"yellow_outcomes_count": 0,
"green_outcomes_count": 0,
"total_outcomes_count": 1,
"ncs": 0.0,
"description": null,
"cached_tag_list": null
},
"current_checkin": null,
"previous_checkin": null
},
{
"id": "9773d9d3-786c-4f60-acbf-9b5bd8c27dc3",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "zBeQ803pV9yU",
"objective_id": "26bcca23-74b7-4c37-8b59-25e6e44dab7d",
"rank": "~na",
"title": "30 % of sales from indirect channels",
"description": "",
"from": null,
"to": 0.0,
"score_format": "_number_ EBITDA",
"created_at": "2023-11-23T12:41:14.994Z",
"updated_at": "2023-11-23T12:41:14.994Z",
"is_pending_checkin": false,
"archived": false,
"completed": false,
"open_initiatives_count": 0,
"closed_initiatives_count": 0,
"total_initiatives_count": 0,
"is_dummy": false,
"outcome_progress_prct": 0.0,
"initiative_progress_prct": 0.0,
"outcome_contributors_count": 0,
"cached_tag_list": null,
"outcome_type": "stay_above",
"weight": 1,
"membership": null,
"plan": {
"id": "33cda32a-a99c-4f7e-8229-5f2021e0e6e1",
"parent_id": "b82dc810-75d9-4010-bc25-e29f536289ea",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "baclV3-_aIyX",
"title": "Cross Department OKRs",
"plan_icon": "",
"start_at": "2023-10-01T00:00:00.000Z",
"finish_at": "2023-12-31T00:00:00.000Z",
"state": "published",
"created_at": "2023-11-23T12:41:14.301Z",
"updated_at": "2023-11-23T12:41:36.954Z",
"archived": false,
"cached_tag_list": null,
"active": true,
"expired": false
},
"objective": {
"id": "26bcca23-74b7-4c37-8b59-25e6e44dab7d",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "6-5rX2mI7HxY",
"plan_id": "33cda32a-a99c-4f7e-8229-5f2021e0e6e1",
"rank": "~nc",
"title": "Grow revenue from indirect channels other than sales team",
"created_at": "2023-11-23T12:41:14.967Z",
"updated_at": "2023-11-23T12:41:14.967Z",
"archived": false,
"outcome_progress_prct": 0.0,
"initiative_progress_prct": 0.0,
"total_initiatives_count": 0,
"closed_initiatives_count": 0,
"grey_outcomes_count": 1,
"red_outcomes_count": 0,
"yellow_outcomes_count": 0,
"green_outcomes_count": 0,
"total_outcomes_count": 1,
"ncs": 0.0,
"description": null,
"cached_tag_list": null
},
"current_checkin": null,
"previous_checkin": null
}
]
Using outcome filters
You can pass filters in a JSON body to your POST request to filter outcomes.
{
"filter": {
"is_in_progress": true,
"archived": false,
"start_at": "2023-01-01",
"finish_at": "2023-03-31",
}
}
Here are the available filters:
is_in_progress
: if true, only returns outcomes in plans that are currently in progressarchived
: return all outcomes that where archived is "true" or "false"start_at
: returns all outcomes in plans that start on or after a datefinish_at
: returns all outcomes in plans that finish on or before a date
POST
Search all initiatives in a workspace
POST
Search all initiatives in a workspaceFind all initiatives in a workspace corresponding to the search attributes
POST
https://api.tability.app/v2/workspaces/:workspaceID/search/initiatives
Request Body
filter
String
Search filters
page
number
Identifier of the page results to fetch
[
{
"id": "09fcf18c-f8d0-41e2-abc8-f6630f0971ce",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "N2Jc9jMB9DU8",
"outcome_id": "5cc5d819-12ae-4cee-8abd-ca2ed0b71306",
"title": "Run 50 demonstrations in new areas in Indo",
"rank": "~nf",
"column_rank": "~n",
"state": "open",
"created_at": "2023-11-23T12:41:14.945Z",
"updated_at": "2023-11-23T12:41:14.945Z",
"membership_id": null,
"work_state": "backlog",
"roadmap_state": "later",
"roadmap_now_at": null,
"closed_at": null,
"archived": false,
"body": "",
"due_at": null,
"cached_tag_list": null,
"membership": null,
"plan": {
"id": "33cda32a-a99c-4f7e-8229-5f2021e0e6e1",
"parent_id": "b82dc810-75d9-4010-bc25-e29f536289ea",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "baclV3-_aIyX",
"title": "Cross Department OKRs",
"plan_icon": "",
"start_at": "2023-10-01T00:00:00.000Z",
"finish_at": "2023-12-31T00:00:00.000Z",
"state": "published",
"created_at": "2023-11-23T12:41:14.301Z",
"updated_at": "2023-11-23T12:41:36.954Z",
"archived": false,
"cached_tag_list": null,
"active": true,
"expired": false
},
"outcome": {
"id": "5cc5d819-12ae-4cee-8abd-ca2ed0b71306",
"workspace_id": "f709df85-fa72-43d4-b398-db159ec6f8da",
"nano_slug": "pSLPk0hFmkC8",
"objective_id": "f03cb496-97c1-4eb9-aa92-9015716b0514",
"rank": "~na",
"title": "17 Hubs/branches",
"description": "",
"from": 0.0,
"to": 17.0,
"score_format": "_number_ hubs/branches",
"created_at": "2023-11-23T12:41:14.695Z",
"updated_at": "2023-11-23T12:41:31.145Z",
"archived": false,
"completed": false,
"is_dummy": false,
"outcome_type": "improve_metric",
"weight": 1,
"membership": null
}
}
]
Using initiative filters
You can pass filters in a JSON body to your POST request to filter outcomes.
{
"filter": {
"is_in_progress": true,
"archived": "false",
"start_at": "2023-01-01",
"finish_at": "2023-03-31",
}
}
Here are the available filters:
is_in_progress
: if true, only returns initiatives in plans that are currently in progressarchived
: return all outcomes that where archived is "true" or "false"start_at
: returns all outcomes in plans that start on or after a datefinish_at
: returns all outcomes in plans that finish on or before a date
Last updated