[{"data":1,"prerenderedAt":1321},["ShallowReactive",2],{"docs:guide:api-creating-and-updating-data":3,"docs:nav":1137,"seo-settings":1300},{"value":4},{"slug":5,"path":6,"title":7,"introduction":8,"body":19,"sections":1127,"seo":1133,"publishedAt":1136,"updatedAt":1136},"api-creating-and-updating-data","/docs/guides/api-creating-and-updating-data","Creating and updating data",{"type":9,"children":10},"root",[11],{"type":12,"tag":13,"props":14,"children":15},"element","p",{},[16],{"type":17,"value":18},"text","Changes go through mutations. Every object has a create and an update mutation that work the same way, and deleting is an update too. Changes made through the API show up in the app straight away, for everyone on the team.",{"type":20,"value":21,"toc":1120},"minimark",[22,27,50,162,288,291,345,366,370,384,470,473,478,485,581,585,599,678,695,702,705,708,814,820,1086,1096,1100,1107,1116],[23,24,26],"h2",{"id":25},"create-an-item","Create an item",[13,28,29,30,34,35,38,39,38,42,45,46,49],{},"Create mutations are named ",[31,32,33],"code",{},"create"," plus the object: ",[31,36,37],{},"createTodo",", ",[31,40,41],{},"createIssue",[31,43,44],{},"createRock",". The new item's fields go inside ",[31,47,48],{},"input",", under the object's name, and you choose which fields of the new item to get back:",[51,52,57],"pre",{"className":53,"code":54,"language":55,"meta":56,"style":56},"language-graphql shiki shiki-themes github-light github-dark","mutation AddTodo($todo: TodoInput!) {\n  createTodo(input: { todo: $todo }) {\n    todo {\n      id\n      name\n      dueDate\n    }\n  }\n}\n","graphql","",[31,58,59,93,117,126,132,138,144,150,156],{"__ignoreMap":56},[60,61,64,68,72,76,80,83,87,90],"span",{"class":62,"line":63},"line",1,[60,65,67],{"class":66},"szBVR","mutation",[60,69,71],{"class":70},"sScJk"," AddTodo",[60,73,75],{"class":74},"sVt8B","(",[60,77,79],{"class":78},"s4XuR","$todo",[60,81,82],{"class":74},": ",[60,84,86],{"class":85},"sj4cs","TodoInput",[60,88,89],{"class":66},"!",[60,91,92],{"class":74},") {\n",[60,94,96,99,101,103,106,110,112,114],{"class":62,"line":95},2,[60,97,98],{"class":78},"  createTodo",[60,100,75],{"class":74},[60,102,48],{"class":78},[60,104,105],{"class":74},": { ",[60,107,109],{"class":108},"sZZnC","todo",[60,111,82],{"class":74},[60,113,79],{"class":78},[60,115,116],{"class":74}," }) {\n",[60,118,120,123],{"class":62,"line":119},3,[60,121,122],{"class":78},"    todo",[60,124,125],{"class":74}," {\n",[60,127,129],{"class":62,"line":128},4,[60,130,131],{"class":78},"      id\n",[60,133,135],{"class":62,"line":134},5,[60,136,137],{"class":78},"      name\n",[60,139,141],{"class":62,"line":140},6,[60,142,143],{"class":78},"      dueDate\n",[60,145,147],{"class":62,"line":146},7,[60,148,149],{"class":74},"    }\n",[60,151,153],{"class":62,"line":152},8,[60,154,155],{"class":74},"  }\n",[60,157,159],{"class":62,"line":158},9,[60,160,161],{"class":74},"}\n",[51,163,167],{"className":164,"code":165,"language":166,"meta":56,"style":56},"language-json shiki shiki-themes github-light github-dark","{\n  \"todo\": {\n    \"name\": \"Send the Q4 board pack\",\n    \"desc\": \"\",\n    \"teamId\": \"0b7e5f6a-3c2d-4e1f-9a8b-7c6d5e4f3a21\",\n    \"userId\": \"5f2d8c4b-1a3e-4c7d-b9f0-2e6a7d8c9b10\",\n    \"todoStatusId\": \"TODO\",\n    \"priorityNo\": 999,\n    \"dueDate\": \"2026-11-20\",\n    \"companyId\": \"6a1d4e2b-7c3f-4a8e-b5d9-0f1e2d3c4b5a\"\n  }\n}\n","json",[31,168,169,174,182,195,207,219,231,243,255,267,278,283],{"__ignoreMap":56},[60,170,171],{"class":62,"line":63},[60,172,173],{"class":74},"{\n",[60,175,176,179],{"class":62,"line":95},[60,177,178],{"class":85},"  \"todo\"",[60,180,181],{"class":74},": {\n",[60,183,184,187,189,192],{"class":62,"line":119},[60,185,186],{"class":85},"    \"name\"",[60,188,82],{"class":74},[60,190,191],{"class":108},"\"Send the Q4 board pack\"",[60,193,194],{"class":74},",\n",[60,196,197,200,202,205],{"class":62,"line":128},[60,198,199],{"class":85},"    \"desc\"",[60,201,82],{"class":74},[60,203,204],{"class":108},"\"\"",[60,206,194],{"class":74},[60,208,209,212,214,217],{"class":62,"line":134},[60,210,211],{"class":85},"    \"teamId\"",[60,213,82],{"class":74},[60,215,216],{"class":108},"\"0b7e5f6a-3c2d-4e1f-9a8b-7c6d5e4f3a21\"",[60,218,194],{"class":74},[60,220,221,224,226,229],{"class":62,"line":140},[60,222,223],{"class":85},"    \"userId\"",[60,225,82],{"class":74},[60,227,228],{"class":108},"\"5f2d8c4b-1a3e-4c7d-b9f0-2e6a7d8c9b10\"",[60,230,194],{"class":74},[60,232,233,236,238,241],{"class":62,"line":146},[60,234,235],{"class":85},"    \"todoStatusId\"",[60,237,82],{"class":74},[60,239,240],{"class":108},"\"TODO\"",[60,242,194],{"class":74},[60,244,245,248,250,253],{"class":62,"line":152},[60,246,247],{"class":85},"    \"priorityNo\"",[60,249,82],{"class":74},[60,251,252],{"class":85},"999",[60,254,194],{"class":74},[60,256,257,260,262,265],{"class":62,"line":158},[60,258,259],{"class":85},"    \"dueDate\"",[60,261,82],{"class":74},[60,263,264],{"class":108},"\"2026-11-20\"",[60,266,194],{"class":74},[60,268,270,273,275],{"class":62,"line":269},10,[60,271,272],{"class":85},"    \"companyId\"",[60,274,82],{"class":74},[60,276,277],{"class":108},"\"6a1d4e2b-7c3f-4a8e-b5d9-0f1e2d3c4b5a\"\n",[60,279,281],{"class":62,"line":280},11,[60,282,155],{"class":74},[60,284,286],{"class":62,"line":285},12,[60,287,161],{"class":74},[13,289,290],{},"A few things every create needs:",[292,293,294,312,333],"ul",{},[295,296,297,303,304,307,308,311],"li",{},[298,299,300],"strong",{},[31,301,302],{},"companyId"," on every new item. Get it once with ",[31,305,306],{},"query { currentCompanyId }"," or from the ",[298,309,310],{},"API Keys"," page.",[295,313,314,317,318,38,321,324,325,328,329,332],{},[298,315,316],{},"The owner and team",", as IDs (",[31,319,320],{},"userId",[31,322,323],{},"teamId","). Look them up with ",[31,326,327],{},"users"," and ",[31,330,331],{},"teams"," queries.",[295,334,335,338,339,344],{},[298,336,337],{},"The object's required fields."," The ",[340,341,343],"a",{"href":342},"/docs/guides/api-data-model","Data model"," guide lists them for each object, and the error message names any you've missed.",[13,346,347,348,38,351,328,354,357,358,360,361,365],{},"Leave out ",[31,349,350],{},"id",[31,352,353],{},"createdAt",[31,355,356],{},"stateId",", and they're filled in for you. You can set ",[31,359,350],{}," yourself (any UUID) when you want to refer to the new item in the same request; see ",[340,362,364],{"href":363},"#make-several-changes-at-once","Make several changes at once",".",[23,367,369],{"id":368},"update-an-item","Update an item",[13,371,372,373,376,377,379,380,383],{},"Update mutations are named ",[31,374,375],{},"update"," plus the object. Pass the item's ",[31,378,350],{},", and in ",[31,381,382],{},"patch"," only the fields you want to change. Everything else stays as it is:",[51,385,387],{"className":53,"code":386,"language":55,"meta":56,"style":56},"mutation MarkTodoDone($id: UUID!) {\n  updateTodo(input: { id: $id, patch: { todoStatusId: \"COMPLETE\" } }) {\n    todo { id name todoStatusId }\n  }\n}\n",[31,388,389,410,444,462,466],{"__ignoreMap":56},[60,390,391,393,396,398,401,403,406,408],{"class":62,"line":63},[60,392,67],{"class":66},[60,394,395],{"class":70}," MarkTodoDone",[60,397,75],{"class":74},[60,399,400],{"class":78},"$id",[60,402,82],{"class":74},[60,404,405],{"class":85},"UUID",[60,407,89],{"class":66},[60,409,92],{"class":74},[60,411,412,415,417,419,421,423,425,427,429,431,433,436,438,441],{"class":62,"line":95},[60,413,414],{"class":78},"  updateTodo",[60,416,75],{"class":74},[60,418,48],{"class":78},[60,420,105],{"class":74},[60,422,350],{"class":108},[60,424,82],{"class":74},[60,426,400],{"class":78},[60,428,38],{"class":74},[60,430,382],{"class":108},[60,432,105],{"class":74},[60,434,435],{"class":108},"todoStatusId",[60,437,82],{"class":74},[60,439,440],{"class":108},"\"COMPLETE\"",[60,442,443],{"class":74}," } }) {\n",[60,445,446,448,451,453,456,459],{"class":62,"line":119},[60,447,122],{"class":78},[60,449,450],{"class":74}," { ",[60,452,350],{"class":78},[60,454,455],{"class":78}," name",[60,457,458],{"class":78}," todoStatusId",[60,460,461],{"class":74}," }\n",[60,463,464],{"class":62,"line":128},[60,465,155],{"class":74},[60,467,468],{"class":62,"line":134},[60,469,161],{"class":74},[13,471,472],{},"Some common updates:",[474,475],"docs-table",{":columns":476,":rows":477},"[\"To do this\",\"Patch\"]","[[\"Mark a To-do done\",\"`updateTodo` with `{ todoStatusId: \\\"COMPLETE\\\" }`\"],[\"Solve an Issue\",\"`updateIssue` with `{ issueStatusId: \\\"COMPLETE\\\" }`\"],[\"Set a Rock off-track\",\"`updateRock` with `{ rockStatusId: \\\"OFFTRACK\\\" }`\"],[\"Move an Issue to another team\",\"`updateIssue` with `{ teamId: \\\"...\\\" }`\"],[\"Change a due date\",\"`{ dueDate: \\\"2026-12-05\\\" }`\"],[\"Hand an item to someone else\",\"`{ userId: \\\"...\\\" }`\"]]",[13,479,480,481,484],{},"When you change a status, also set ",[31,482,483],{},"statusUpdatedAt"," to the current time, as the app does. Success.co uses it for things like when a To-do was completed, and it isn't updated for you:",[51,486,488],{"className":53,"code":487,"language":55,"meta":56,"style":56},"mutation MarkTodoDone($id: UUID!, $now: Datetime!) {\n  updateTodo(input: { id: $id, patch: { todoStatusId: \"COMPLETE\", statusUpdatedAt: $now } }) {\n    todo { id todoStatusId statusUpdatedAt }\n  }\n}\n",[31,489,490,520,558,573,577],{"__ignoreMap":56},[60,491,492,494,496,498,500,502,504,506,508,511,513,516,518],{"class":62,"line":63},[60,493,67],{"class":66},[60,495,395],{"class":70},[60,497,75],{"class":74},[60,499,400],{"class":78},[60,501,82],{"class":74},[60,503,405],{"class":85},[60,505,89],{"class":66},[60,507,38],{"class":74},[60,509,510],{"class":78},"$now",[60,512,82],{"class":74},[60,514,515],{"class":85},"Datetime",[60,517,89],{"class":66},[60,519,92],{"class":74},[60,521,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556],{"class":62,"line":95},[60,523,414],{"class":78},[60,525,75],{"class":74},[60,527,48],{"class":78},[60,529,105],{"class":74},[60,531,350],{"class":108},[60,533,82],{"class":74},[60,535,400],{"class":78},[60,537,38],{"class":74},[60,539,382],{"class":108},[60,541,105],{"class":74},[60,543,435],{"class":108},[60,545,82],{"class":74},[60,547,440],{"class":108},[60,549,38],{"class":74},[60,551,483],{"class":108},[60,553,82],{"class":74},[60,555,510],{"class":78},[60,557,443],{"class":74},[60,559,560,562,564,566,568,571],{"class":62,"line":119},[60,561,122],{"class":78},[60,563,450],{"class":74},[60,565,350],{"class":78},[60,567,458],{"class":78},[60,569,570],{"class":78}," statusUpdatedAt",[60,572,461],{"class":74},[60,574,575],{"class":62,"line":128},[60,576,155],{"class":74},[60,578,579],{"class":62,"line":134},[60,580,161],{"class":74},[23,582,584],{"id":583},"delete-an-item","Delete an item",[13,586,587,588,590,591,594,595,598],{},"Rocks, To-dos, Issues, Headlines, Milestones, Scorecard measurables and values, comments and the other main objects don't have delete mutations. Deleting one is an update that sets ",[31,589,356],{}," to ",[31,592,593],{},"DELETED",", exactly what the app does when someone clicks ",[298,596,597],{},"Delete",":",[51,600,602],{"className":53,"code":601,"language":55,"meta":56,"style":56},"mutation DeleteIssue($id: String!) {\n  updateIssue(input: { id: $id, patch: { stateId: \"DELETED\" } }) {\n    issue { id stateId }\n  }\n}\n",[31,603,604,624,656,670,674],{"__ignoreMap":56},[60,605,606,608,611,613,615,617,620,622],{"class":62,"line":63},[60,607,67],{"class":66},[60,609,610],{"class":70}," DeleteIssue",[60,612,75],{"class":74},[60,614,400],{"class":78},[60,616,82],{"class":74},[60,618,619],{"class":85},"String",[60,621,89],{"class":66},[60,623,92],{"class":74},[60,625,626,629,631,633,635,637,639,641,643,645,647,649,651,654],{"class":62,"line":95},[60,627,628],{"class":78},"  updateIssue",[60,630,75],{"class":74},[60,632,48],{"class":78},[60,634,105],{"class":74},[60,636,350],{"class":108},[60,638,82],{"class":74},[60,640,400],{"class":78},[60,642,38],{"class":74},[60,644,382],{"class":108},[60,646,105],{"class":74},[60,648,356],{"class":108},[60,650,82],{"class":74},[60,652,653],{"class":108},"\"DELETED\"",[60,655,443],{"class":74},[60,657,658,661,663,665,668],{"class":62,"line":119},[60,659,660],{"class":78},"    issue",[60,662,450],{"class":74},[60,664,350],{"class":78},[60,666,667],{"class":78}," stateId",[60,669,461],{"class":74},[60,671,672],{"class":62,"line":128},[60,673,155],{"class":74},[60,675,676],{"class":62,"line":134},[60,677,161],{"class":74},[13,679,680,681,684,685,688,689,691,692,365],{},"The item disappears from the app but stays in the API with ",[31,682,683],{},"stateId: \"DELETED\"",", which is why list queries should filter on ",[31,686,687],{},"stateId: { equalTo: \"ACTIVE\" }",". To restore it, set ",[31,690,356],{}," back to ",[31,693,694],{},"ACTIVE",[13,696,697,698,701],{},"A few linking records (such as which teams a process is shared with) do have ",[31,699,700],{},"delete"," mutations, and those remove the record for good.",[23,703,364],{"id":704},"make-several-changes-at-once",[13,706,707],{},"You can put more than one mutation in a request. Give each an alias so you can tell the answers apart:",[51,709,711],{"className":53,"code":710,"language":55,"meta":56,"style":56},"mutation {\n  first: updateTodo(input: { id: \"3f1c...\", patch: { todoStatusId: \"COMPLETE\" } }) { todo { id } }\n  second: updateTodo(input: { id: \"9a4e...\", patch: { todoStatusId: \"COMPLETE\" } }) { todo { id } }\n}\n",[31,712,713,719,766,810],{"__ignoreMap":56},[60,714,715,717],{"class":62,"line":63},[60,716,67],{"class":66},[60,718,125],{"class":74},[60,720,721,724,726,729,731,733,735,737,739,742,744,746,748,750,752,754,757,759,761,763],{"class":62,"line":95},[60,722,723],{"class":108},"  first",[60,725,82],{"class":74},[60,727,728],{"class":78},"updateTodo",[60,730,75],{"class":74},[60,732,48],{"class":78},[60,734,105],{"class":74},[60,736,350],{"class":108},[60,738,82],{"class":74},[60,740,741],{"class":108},"\"3f1c...\"",[60,743,38],{"class":74},[60,745,382],{"class":108},[60,747,105],{"class":74},[60,749,435],{"class":108},[60,751,82],{"class":74},[60,753,440],{"class":108},[60,755,756],{"class":74}," } }) { ",[60,758,109],{"class":78},[60,760,450],{"class":74},[60,762,350],{"class":78},[60,764,765],{"class":74}," } }\n",[60,767,768,771,773,775,777,779,781,783,785,788,790,792,794,796,798,800,802,804,806,808],{"class":62,"line":119},[60,769,770],{"class":108},"  second",[60,772,82],{"class":74},[60,774,728],{"class":78},[60,776,75],{"class":74},[60,778,48],{"class":78},[60,780,105],{"class":74},[60,782,350],{"class":108},[60,784,82],{"class":74},[60,786,787],{"class":108},"\"9a4e...\"",[60,789,38],{"class":74},[60,791,382],{"class":108},[60,793,105],{"class":74},[60,795,435],{"class":108},[60,797,82],{"class":74},[60,799,440],{"class":108},[60,801,756],{"class":74},[60,803,109],{"class":78},[60,805,450],{"class":74},[60,807,350],{"class":78},[60,809,765],{"class":74},[60,811,812],{"class":62,"line":128},[60,813,161],{"class":74},[13,815,816,817,819],{},"The mutations in one request run as a single unit: if any of them fails, none of them are saved. That makes it safe to create things that belong together, like a Rock and its link to a team. Choose the Rock's ",[31,818,350],{}," yourself (a fresh UUID) so the second mutation can refer to it:",[51,821,823],{"className":53,"code":822,"language":55,"meta":56,"style":56},"mutation AddRock($rockId: UUID!, $teamId: UUID!, $userId: UUID!, $companyId: UUID!) {\n  createRock(\n    input: {\n      rock: {\n        id: $rockId\n        name: \"Launch the partner program\"\n        desc: \"\"\n        type: \"company\"\n        rockStatusId: \"ONTRACK\"\n        dueDate: \"2026-12-31\"\n        userId: $userId\n        companyId: $companyId\n      }\n    }\n  ) {\n    rock { id }\n  }\n  createTeamsOnRock(\n    input: { teamsOnRock: { rockId: $rockId, teamId: $teamId, companyId: $companyId } }\n  ) {\n    teamsOnRock { id }\n  }\n}\n",[31,824,825,878,886,893,900,910,920,930,940,950,960,970,980,986,991,997,1009,1014,1022,1059,1064,1076,1081],{"__ignoreMap":56},[60,826,827,829,832,834,837,839,841,843,845,848,850,852,854,856,859,861,863,865,867,870,872,874,876],{"class":62,"line":63},[60,828,67],{"class":66},[60,830,831],{"class":70}," AddRock",[60,833,75],{"class":74},[60,835,836],{"class":78},"$rockId",[60,838,82],{"class":74},[60,840,405],{"class":85},[60,842,89],{"class":66},[60,844,38],{"class":74},[60,846,847],{"class":78},"$teamId",[60,849,82],{"class":74},[60,851,405],{"class":85},[60,853,89],{"class":66},[60,855,38],{"class":74},[60,857,858],{"class":78},"$userId",[60,860,82],{"class":74},[60,862,405],{"class":85},[60,864,89],{"class":66},[60,866,38],{"class":74},[60,868,869],{"class":78},"$companyId",[60,871,82],{"class":74},[60,873,405],{"class":85},[60,875,89],{"class":66},[60,877,92],{"class":74},[60,879,880,883],{"class":62,"line":95},[60,881,882],{"class":78},"  createRock",[60,884,885],{"class":74},"(\n",[60,887,888,891],{"class":62,"line":119},[60,889,890],{"class":78},"    input",[60,892,181],{"class":74},[60,894,895,898],{"class":62,"line":128},[60,896,897],{"class":108},"      rock",[60,899,181],{"class":74},[60,901,902,905,907],{"class":62,"line":134},[60,903,904],{"class":108},"        id",[60,906,82],{"class":74},[60,908,909],{"class":78},"$rockId\n",[60,911,912,915,917],{"class":62,"line":140},[60,913,914],{"class":108},"        name",[60,916,82],{"class":74},[60,918,919],{"class":108},"\"Launch the partner program\"\n",[60,921,922,925,927],{"class":62,"line":146},[60,923,924],{"class":108},"        desc",[60,926,82],{"class":74},[60,928,929],{"class":108},"\"\"\n",[60,931,932,935,937],{"class":62,"line":152},[60,933,934],{"class":108},"        type",[60,936,82],{"class":74},[60,938,939],{"class":108},"\"company\"\n",[60,941,942,945,947],{"class":62,"line":158},[60,943,944],{"class":108},"        rockStatusId",[60,946,82],{"class":74},[60,948,949],{"class":108},"\"ONTRACK\"\n",[60,951,952,955,957],{"class":62,"line":269},[60,953,954],{"class":108},"        dueDate",[60,956,82],{"class":74},[60,958,959],{"class":108},"\"2026-12-31\"\n",[60,961,962,965,967],{"class":62,"line":280},[60,963,964],{"class":108},"        userId",[60,966,82],{"class":74},[60,968,969],{"class":78},"$userId\n",[60,971,972,975,977],{"class":62,"line":285},[60,973,974],{"class":108},"        companyId",[60,976,82],{"class":74},[60,978,979],{"class":78},"$companyId\n",[60,981,983],{"class":62,"line":982},13,[60,984,985],{"class":74},"      }\n",[60,987,989],{"class":62,"line":988},14,[60,990,149],{"class":74},[60,992,994],{"class":62,"line":993},15,[60,995,996],{"class":74},"  ) {\n",[60,998,1000,1003,1005,1007],{"class":62,"line":999},16,[60,1001,1002],{"class":78},"    rock",[60,1004,450],{"class":74},[60,1006,350],{"class":78},[60,1008,461],{"class":74},[60,1010,1012],{"class":62,"line":1011},17,[60,1013,155],{"class":74},[60,1015,1017,1020],{"class":62,"line":1016},18,[60,1018,1019],{"class":78},"  createTeamsOnRock",[60,1021,885],{"class":74},[60,1023,1025,1027,1029,1032,1034,1037,1039,1041,1043,1045,1047,1049,1051,1053,1055,1057],{"class":62,"line":1024},19,[60,1026,890],{"class":78},[60,1028,105],{"class":74},[60,1030,1031],{"class":108},"teamsOnRock",[60,1033,105],{"class":74},[60,1035,1036],{"class":108},"rockId",[60,1038,82],{"class":74},[60,1040,836],{"class":78},[60,1042,38],{"class":74},[60,1044,323],{"class":108},[60,1046,82],{"class":74},[60,1048,847],{"class":78},[60,1050,38],{"class":74},[60,1052,302],{"class":108},[60,1054,82],{"class":74},[60,1056,869],{"class":78},[60,1058,765],{"class":74},[60,1060,1062],{"class":62,"line":1061},20,[60,1063,996],{"class":74},[60,1065,1067,1070,1072,1074],{"class":62,"line":1066},21,[60,1068,1069],{"class":78},"    teamsOnRock",[60,1071,450],{"class":74},[60,1073,350],{"class":78},[60,1075,461],{"class":74},[60,1077,1079],{"class":62,"line":1078},22,[60,1080,155],{"class":74},[60,1082,1084],{"class":62,"line":1083},23,[60,1085,161],{"class":74},[13,1087,1088,1089,1092,1093,365],{},"In JavaScript, ",[31,1090,1091],{},"crypto.randomUUID()"," makes a UUID; in Python, ",[31,1094,1095],{},"str(uuid.uuid4())",[23,1097,1099],{"id":1098},"who-made-the-change","Who made the change",[13,1101,1102,1103,1106],{},"Changes are made as the person who owns the API key. The app shows them as that person's, and ",[31,1104,1105],{},"lastUpdatedByUserId"," on the item records it. If your integration makes a lot of changes, consider creating a separate Success.co user for it (for example \"Finance sync\", which counts as a user on your plan) and making its key there, so its changes are easy to tell apart from yours. It also keeps the integration running if you leave: a key stops working when its owner is deactivated, so an integration that runs on a person's key stops when they do. Keep that user active for as long as the integration runs.",[1108,1109,1110],"docs-callout",{},[13,1111,1112,1115],{},[298,1113,1114],{},"Test on a copy first."," There's no undo for changes made through the API, apart from setting them back yourself. Try new scripts against a test company, or on a team set up for testing, before pointing them at your real data.",[1117,1118,1119],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":56,"searchDepth":95,"depth":95,"links":1121},[1122,1123,1124,1125,1126],{"id":25,"depth":95,"text":26},{"id":368,"depth":95,"text":369},{"id":583,"depth":95,"text":584},{"id":704,"depth":95,"text":364},{"id":1098,"depth":95,"text":1099},[1128,1129,1130,1131,1132],{"id":25,"title":26},{"id":368,"title":369},{"id":583,"title":584},{"id":704,"title":364},{"id":1098,"title":1099},{"title":1134,"description":1135},"Creating and updating data with the Success.co API — Success.co","Create, update and delete To-dos, Issues, Rocks, Headlines and Scorecard values with GraphQL mutations in the Success.co API.","2026-11-12T13:59:30+00:00",{"value":1138},[1139,1157,1211,1232,1238,1247,1283],{"title":1140,"links":1141},"Getting Started",[1142,1145,1148,1151,1154],{"title":1143,"href":1144},"Getting Started with Success.co","/docs/guides/getting-started",{"title":1146,"href":1147},"Join your team","/docs/guides/join-your-team",{"title":1149,"href":1150},"EOS® Implementers  Guide","/docs/guides/implementers",{"title":1152,"href":1153},"Affiliate Program Guide","/docs/guides/affiliate-program",{"title":1155,"href":1156},"Import Data","/docs/guides/import-data",{"title":1158,"links":1159},"Platform",[1160,1163,1166,1169,1172,1175,1178,1181,1184,1187,1190,1193,1196,1199,1202,1205,1208],{"title":1161,"href":1162},"Vision/Traction Organizer (V/TO®)  Guide","/docs/guides/vision-traction-organizer-vto",{"title":1164,"href":1165},"Accountability Chart Guide","/docs/guides/accountability-chart",{"title":1167,"href":1168},"Dashboard Guide to Track Rocks, To-Dos & Issues","/docs/guides/dashboard",{"title":1170,"href":1171},"L10™ Meetings","/docs/guides/l10-meetings",{"title":1173,"href":1174},"Rocks","/docs/guides/rocks",{"title":1176,"href":1177},"Scorecard™","/docs/guides/scorecard",{"title":1179,"href":1180},"EOS® Meeting Agendas Guide","/docs/guides/agendas",{"title":1182,"href":1183},"Issues","/docs/guides/issues",{"title":1185,"href":1186},"Headlines","/docs/guides/headlines",{"title":1188,"href":1189},"How To Use To-Dos in Success.co?","/docs/guides/to-dos",{"title":1191,"href":1192},"People Analyzer","/docs/guides/people-analyzer",{"title":1194,"href":1195},"Organizational Checkup™","/docs/guides/organizational-checkup",{"title":1197,"href":1198},"S.W.O.T","/docs/guides/swot-analysis",{"title":1200,"href":1201},"Process","/docs/guides/process",{"title":1203,"href":1204},"Implementer Hub","/docs/guides/implementer-hub",{"title":1206,"href":1207},"Insights","/docs/guides/insights",{"title":1209,"href":1210},"Mastery","/docs/guides/mastery",{"title":1212,"links":1213},"Advanced",[1214,1217,1220,1223,1226,1229],{"title":1215,"href":1216},"Filtering","/docs/guides/filtering",{"title":1218,"href":1219},"Quarter Dates","/docs/guides/quarter-dates",{"title":1221,"href":1222},"Keyboard Shortcuts Guide","/docs/guides/keyboard-shortcuts",{"title":1224,"href":1225},"Related Items","/docs/guides/related-items",{"title":1227,"href":1228},"Notifications","/docs/guides/notifications",{"title":1230,"href":1231},"Import Templates","/docs/guides/import-templates",{"title":1233,"links":1234},"Billing",[1235],{"title":1236,"href":1237},"Billing Guide – Set Up Payments, Update Details, and Access Invoices","/docs/guides/billing",{"title":1239,"links":1240},"Apps",[1241,1244],{"title":1242,"href":1243},"Desktop App Guide to Boost Productivity & Track Tasks","/docs/guides/desktop-app",{"title":1245,"href":1246},"Mobile App","/docs/guides/mobile-app",{"title":1248,"links":1249},"Integrations",[1250,1253,1256,1259,1262,1265,1268,1271,1274,1277,1280],{"title":1251,"href":1252},"Success.co Integrations","/docs/guides/successco-integrations",{"title":1254,"href":1255},"Google Calendar Integration Guide","/docs/guides/google-calendar",{"title":1257,"href":1258},"Microsoft Calendar Integration Guide","/docs/guides/microsoft-calendar",{"title":1260,"href":1261},"Microsoft Teams","/docs/guides/microsoft-teams",{"title":1263,"href":1264},"Slack","/docs/guides/slack",{"title":1266,"href":1267},"Asana Integration Guide","/docs/guides/asana",{"title":1269,"href":1270},"ClickUp Integration Guide","/docs/guides/clickup",{"title":1272,"href":1273},"Monday.com Integration Guide","/docs/guides/monday",{"title":1275,"href":1276},"Teamwork Integration Guide","/docs/guides/teamwork",{"title":1278,"href":1279},"Success.co AI Connector (MCP)","/docs/guides/ai-mcp-connector",{"title":1281,"href":1282},"Zapier","/docs/guides/zapier",{"title":1284,"links":1285},"API",[1286,1289,1292,1293,1294,1297],{"title":1287,"href":1288},"Getting started with the API","/docs/guides/api-getting-started",{"title":1290,"href":1291},"Reading data","/docs/guides/api-reading-data",{"title":7,"href":6},{"title":343,"href":342},{"title":1295,"href":1296},"Recipes","/docs/guides/api-recipes",{"title":1298,"href":1299},"Errors and limits","/docs/guides/api-errors-and-limits",{"value":1301},{"id":1302,"extension":1303,"meta":1304,"og_image":1305,"og_locale":1306,"og_title_fallback":1307,"site_url":1308,"stem":1309,"title_suffix":1310,"__hash__":1311,"ogImageAsset":1312},"seoSettings/settings/seo.yml","yml",{},"df2824aa25f11988810a1b0f3c08f0f2","en_GB","The EOS App","https://www.success.co","settings/seo"," — Success.co","nnRZDXC71vobecumYGFChQJ7a9XRrFJq7bfBBCWo6Bk",{"id":1305,"publicId":1313,"version":1314,"format":1315,"resourceType":1316,"width":1317,"height":1318,"alt":1319,"name":1320},"site/success-opengraph-image",1791366213,"png","image",1200,630,"Success.co","Success OpenGraph Image",1794503194332]