[{"data":1,"prerenderedAt":779},["ShallowReactive",2],{"navigation_docs":3,"-api-links":55,"-api-links-surround":776},[4,30],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Getting Started","\u002Fgetting-started","1.getting-started",[9,13,17,21,25],{"title":10,"path":11,"stem":12},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction",{"title":14,"path":15,"stem":16},"Authentication","\u002Fgetting-started\u002Fauthentication","1.getting-started\u002F2.authentication",{"title":18,"path":19,"stem":20},"Concepts","\u002Fgetting-started\u002Fconcepts","1.getting-started\u002F3.concepts",{"title":22,"path":23,"stem":24},"Order keys","\u002Fgetting-started\u002Forder-keys","1.getting-started\u002F4.order-keys",{"title":26,"path":27,"stem":28},"Errors and retries","\u002Fgetting-started\u002Ferrors-and-retries","1.getting-started\u002F5.errors-and-retries",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"API","\u002Fapi","2.api",[35,39,43,47,51],{"title":36,"path":37,"stem":38},"Create order","\u002Fapi\u002Fcreate-order","2.api\u002F1.create-order",{"title":40,"path":41,"stem":42},"Fetch printers","\u002Fapi\u002Ffetch-printers","2.api\u002F2.fetch-printers",{"title":44,"path":45,"stem":46},"Print orders","\u002Fapi\u002Fprint-orders","2.api\u002F3.print-orders",{"title":48,"path":49,"stem":50},"Fetch order PDF","\u002Fapi\u002Ffetch-order-pdf","2.api\u002F4.fetch-order-pdf",{"title":52,"path":53,"stem":54},"Links","\u002Fapi\u002Flinks","2.api\u002F5.links",{"id":56,"title":52,"body":57,"description":769,"extension":770,"links":771,"meta":772,"navigation":773,"path":53,"seo":774,"stem":54,"__hash__":775},"docs\u002F2.api\u002F5.links.md",{"type":58,"value":59,"toc":763},"minimark",[60,64,68,73,90,93,153,195,199,208,296,299,349,352,486,497,505,508,512,521,524,590,594,603,635,638,692,695,759],[61,62,52],"h1",{"id":63},"links",[65,66,67],"p",{},"Links define how Yuzu should match records from one source to records from another source. For API integrations, the most common use case is order linking: matching an order created from one system to the same order created by another system.",[69,70,72],"h2",{"id":71},"list-links","List links",[74,75,80],"pre",{"className":76,"code":77,"language":78,"meta":79,"style":79},"language-http shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","GET https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks\n","http","",[81,82,83],"code",{"__ignoreMap":79},[84,85,88],"span",{"class":86,"line":87},"line",1,[84,89,77],{},[65,91,92],{},"Query parameters:",[94,95,96,112],"table",{},[97,98,99],"thead",{},[100,101,102,106,109],"tr",{},[103,104,105],"th",{},"Parameter",[103,107,108],{},"Type",[103,110,111],{},"Description",[113,114,115,141],"tbody",{},[100,116,117,123,126],{},[118,119,120],"td",{},[81,121,122],{},"source",[118,124,125],{},"string",[118,127,128,129,132,133,136,137,140],{},"Optional. Filter by source app UUID, manual source (",[81,130,131],{},"api",", ",[81,134,135],{},"web",", or ",[81,138,139],{},"csv","), or custom source key.",[100,142,143,148,150],{},[118,144,145],{},[81,146,147],{},"target",[118,149,125],{},[118,151,152],{},"Optional. Filter by target app UUID, manual source, or custom source key.",[74,154,158],{"className":155,"code":156,"language":157,"meta":79,"style":79},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl 'https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks?source=api' \\\n  --header 'X-API-Key: YOUR_API_KEY'\n","bash",[81,159,160,181],{"__ignoreMap":79},[84,161,162,166,170,174,177],{"class":86,"line":87},[84,163,165],{"class":164},"sBMFI","curl",[84,167,169],{"class":168},"sMK4o"," '",[84,171,173],{"class":172},"sfazB","https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks?source=api",[84,175,176],{"class":168},"'",[84,178,180],{"class":179},"sTEyZ"," \\\n",[84,182,184,187,189,192],{"class":86,"line":183},2,[84,185,186],{"class":172},"  --header",[84,188,169],{"class":168},[84,190,191],{"class":172},"X-API-Key: YOUR_API_KEY",[84,193,194],{"class":168},"'\n",[69,196,198],{"id":197},"create-a-link","Create a link",[74,200,202],{"className":76,"code":201,"language":78,"meta":79,"style":79},"POST https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks\n",[81,203,204],{"__ignoreMap":79},[84,205,206],{"class":86,"line":87},[84,207,201],{},[94,209,210,221],{},[97,211,212],{},[100,213,214,217,219],{},[103,215,216],{},"Field",[103,218,108],{},[103,220,111],{},[113,222,223,245,257,268,280],{},[100,224,225,230,232],{},[118,226,227],{},[81,228,229],{},"type",[118,231,125],{},[118,233,234,235,132,238,136,241,244],{},"Required. ",[81,236,237],{},"order",[81,239,240],{},"product",[81,242,243],{},"customer",".",[100,246,247,251,254],{},[118,248,249],{},[81,250,122],{},[118,252,253],{},"object",[118,255,256],{},"Required. Source point that triggers the link.",[100,258,259,263,265],{},[118,260,261],{},[81,262,147],{},[118,264,253],{},[118,266,267],{},"Required. Target point to resolve against.",[100,269,270,275,277],{},[118,271,272],{},[81,273,274],{},"resolver",[118,276,125],{},[118,278,279],{},"Required. JavaScript expression that returns the target source ID.",[100,281,282,287,289],{},[118,283,284],{},[81,285,286],{},"condition",[118,288,125],{},[118,290,291,292,295],{},"Optional. JavaScript expression that must return ",[81,293,294],{},"true"," before the resolver runs.",[65,297,298],{},"Source and target points:",[94,300,301,310],{},[97,302,303],{},[100,304,305,308],{},[103,306,307],{},"Shape",[103,309,111],{},[113,311,312,322,339],{},[100,313,314,319],{},[118,315,316],{},[81,317,318],{},"{ \"type\": \"app\", \"app\": \"a2cb2c3d-4e5f-6g7h-8i9j-0k1l2m3n4o5p\" }",[118,320,321],{},"An installed app.",[100,323,324,329],{},[118,325,326],{},[81,327,328],{},"{ \"type\": \"manual\", \"source\": \"api\" }",[118,330,331,332,132,334,336,337,244],{},"A manual source. Valid values are ",[81,333,131],{},[81,335,135],{},", and ",[81,338,139],{},[100,340,341,346],{},[118,342,343],{},[81,344,345],{},"{ \"type\": \"custom\", \"key\": \"warehouse-east\" }",[118,347,348],{},"A custom source key.",[65,350,351],{},"Example:",[74,353,355],{"className":155,"code":354,"language":157,"meta":79,"style":79},"curl --request POST 'https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks' \\\n  --header 'Content-Type: application\u002Fjson' \\\n  --header 'X-API-Key: YOUR_API_KEY' \\\n  --data '{\n    \"type\": \"order\",\n    \"source\": {\n      \"type\": \"custom\",\n      \"key\": \"warehouse-east\"\n    },\n    \"target\": {\n      \"type\": \"manual\",\n      \"source\": \"api\"\n    },\n    \"resolver\": \"order.variables.externalOrderId\",\n    \"condition\": \"order.variables && order.variables.externalOrderId\"\n  }'\n",[81,356,357,376,389,402,413,419,425,431,437,443,449,455,461,466,472,478],{"__ignoreMap":79},[84,358,359,361,364,367,369,372,374],{"class":86,"line":87},[84,360,165],{"class":164},[84,362,363],{"class":172}," --request",[84,365,366],{"class":172}," POST",[84,368,169],{"class":168},[84,370,371],{"class":172},"https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks",[84,373,176],{"class":168},[84,375,180],{"class":179},[84,377,378,380,382,385,387],{"class":86,"line":183},[84,379,186],{"class":172},[84,381,169],{"class":168},[84,383,384],{"class":172},"Content-Type: application\u002Fjson",[84,386,176],{"class":168},[84,388,180],{"class":179},[84,390,392,394,396,398,400],{"class":86,"line":391},3,[84,393,186],{"class":172},[84,395,169],{"class":168},[84,397,191],{"class":172},[84,399,176],{"class":168},[84,401,180],{"class":179},[84,403,405,408,410],{"class":86,"line":404},4,[84,406,407],{"class":172},"  --data",[84,409,169],{"class":168},[84,411,412],{"class":172},"{\n",[84,414,416],{"class":86,"line":415},5,[84,417,418],{"class":172},"    \"type\": \"order\",\n",[84,420,422],{"class":86,"line":421},6,[84,423,424],{"class":172},"    \"source\": {\n",[84,426,428],{"class":86,"line":427},7,[84,429,430],{"class":172},"      \"type\": \"custom\",\n",[84,432,434],{"class":86,"line":433},8,[84,435,436],{"class":172},"      \"key\": \"warehouse-east\"\n",[84,438,440],{"class":86,"line":439},9,[84,441,442],{"class":172},"    },\n",[84,444,446],{"class":86,"line":445},10,[84,447,448],{"class":172},"    \"target\": {\n",[84,450,452],{"class":86,"line":451},11,[84,453,454],{"class":172},"      \"type\": \"manual\",\n",[84,456,458],{"class":86,"line":457},12,[84,459,460],{"class":172},"      \"source\": \"api\"\n",[84,462,464],{"class":86,"line":463},13,[84,465,442],{"class":172},[84,467,469],{"class":86,"line":468},14,[84,470,471],{"class":172},"    \"resolver\": \"order.variables.externalOrderId\",\n",[84,473,475],{"class":86,"line":474},15,[84,476,477],{"class":172},"    \"condition\": \"order.variables && order.variables.externalOrderId\"\n",[84,479,481,484],{"class":86,"line":480},16,[84,482,483],{"class":172},"  }",[84,485,194],{"class":168},[65,487,488,489,492,493,496],{},"When an order is created from ",[81,490,491],{},"warehouse-east",", Yuzu evaluates the resolver against the incoming payload. If it returns ",[81,494,495],{},"10000000000001",", Yuzu also looks for the target key:",[74,498,503],{"className":499,"code":501,"language":502,"meta":79},[500],"language-text","org_exampleTeam123456789\u002Fapi-10000000000001\n","text",[81,504,501],{"__ignoreMap":79},[65,506,507],{},"If that key already exists, Yuzu merges the incoming source map into the existing order. The resulting order can then be found or printed by either key.",[69,509,511],{"id":510},"update-a-link","Update a link",[74,513,515],{"className":76,"code":514,"language":78,"meta":79,"style":79},"PUT https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks\u002F{linkId}\n",[81,516,517],{"__ignoreMap":79},[84,518,519],{"class":86,"line":87},[84,520,514],{},[65,522,523],{},"Send only the fields you want to change.",[74,525,527],{"className":155,"code":526,"language":157,"meta":79,"style":79},"curl --request PUT 'https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks\u002F33333333-3333-4333-8333-333333333333' \\\n  --header 'Content-Type: application\u002Fjson' \\\n  --header 'X-API-Key: YOUR_API_KEY' \\\n  --data '{\n    \"resolver\": \"order.variables.shopifyOrderId\"\n  }'\n",[81,528,529,547,559,571,579,584],{"__ignoreMap":79},[84,530,531,533,535,538,540,543,545],{"class":86,"line":87},[84,532,165],{"class":164},[84,534,363],{"class":172},[84,536,537],{"class":172}," PUT",[84,539,169],{"class":168},[84,541,542],{"class":172},"https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks\u002F33333333-3333-4333-8333-333333333333",[84,544,176],{"class":168},[84,546,180],{"class":179},[84,548,549,551,553,555,557],{"class":86,"line":183},[84,550,186],{"class":172},[84,552,169],{"class":168},[84,554,384],{"class":172},[84,556,176],{"class":168},[84,558,180],{"class":179},[84,560,561,563,565,567,569],{"class":86,"line":391},[84,562,186],{"class":172},[84,564,169],{"class":168},[84,566,191],{"class":172},[84,568,176],{"class":168},[84,570,180],{"class":179},[84,572,573,575,577],{"class":86,"line":404},[84,574,407],{"class":172},[84,576,169],{"class":168},[84,578,412],{"class":172},[84,580,581],{"class":86,"line":415},[84,582,583],{"class":172},"    \"resolver\": \"order.variables.shopifyOrderId\"\n",[84,585,586,588],{"class":86,"line":421},[84,587,483],{"class":172},[84,589,194],{"class":168},[69,591,593],{"id":592},"delete-a-link","Delete a link",[74,595,597],{"className":76,"code":596,"language":78,"meta":79,"style":79},"DELETE https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks\u002F{linkId}\n",[81,598,599],{"__ignoreMap":79},[84,600,601],{"class":86,"line":87},[84,602,596],{},[74,604,606],{"className":155,"code":605,"language":157,"meta":79,"style":79},"curl --request DELETE 'https:\u002F\u002Fapp.yuzu.so\u002Fapi\u002Flinks\u002F33333333-3333-4333-8333-333333333333' \\\n  --header 'X-API-Key: YOUR_API_KEY'\n",[81,607,608,625],{"__ignoreMap":79},[84,609,610,612,614,617,619,621,623],{"class":86,"line":87},[84,611,165],{"class":164},[84,613,363],{"class":172},[84,615,616],{"class":172}," DELETE",[84,618,169],{"class":168},[84,620,542],{"class":172},[84,622,176],{"class":168},[84,624,180],{"class":179},[84,626,627,629,631,633],{"class":86,"line":183},[84,628,186],{"class":172},[84,630,169],{"class":168},[84,632,191],{"class":172},[84,634,194],{"class":168},[65,636,637],{},"Successful deletes return:",[74,639,643],{"className":640,"code":641,"language":642,"meta":79,"style":79},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"success\": true,\n  \"id\": \"33333333-3333-4333-8333-333333333333\"\n}\n","json",[81,644,645,649,667,687],{"__ignoreMap":79},[84,646,647],{"class":86,"line":87},[84,648,412],{"class":168},[84,650,651,654,658,661,664],{"class":86,"line":183},[84,652,653],{"class":168},"  \"",[84,655,657],{"class":656},"spNyl","success",[84,659,660],{"class":168},"\"",[84,662,663],{"class":168},":",[84,665,666],{"class":168}," true,\n",[84,668,669,671,674,676,678,681,684],{"class":86,"line":391},[84,670,653],{"class":168},[84,672,673],{"class":656},"id",[84,675,660],{"class":168},[84,677,663],{"class":168},[84,679,680],{"class":168}," \"",[84,682,683],{"class":172},"33333333-3333-4333-8333-333333333333",[84,685,686],{"class":168},"\"\n",[84,688,689],{"class":86,"line":404},[84,690,691],{"class":168},"}\n",[65,693,694],{},"Common status codes:",[94,696,697,707],{},[97,698,699],{},[100,700,701,704],{},[103,702,703],{},"Status",[103,705,706],{},"Meaning",[113,708,709,719,729,739,749],{},[100,710,711,716],{},[118,712,713],{},[81,714,715],{},"200",[118,717,718],{},"Request processed.",[100,720,721,726],{},[118,722,723],{},[81,724,725],{},"400",[118,727,728],{},"Invalid request body or resolver shape.",[100,730,731,736],{},[118,732,733],{},[81,734,735],{},"401",[118,737,738],{},"Missing, malformed, or invalid API key.",[100,740,741,746],{},[118,742,743],{},[81,744,745],{},"403",[118,747,748],{},"API key cannot access the requested team resource.",[100,750,751,756],{},[118,752,753],{},[81,754,755],{},"5xx",[118,757,758],{},"Temporary service issue. Retry with backoff.",[760,761,762],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}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);}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":79,"searchDepth":183,"depth":183,"links":764},[765,766,767,768],{"id":71,"depth":183,"text":72},{"id":197,"depth":183,"text":198},{"id":510,"depth":183,"text":511},{"id":592,"depth":183,"text":593},"Match orders across sources before Yuzu merges them.","md",null,{},true,{"title":52,"description":769},"OURcW4Jyq_thEN7Qe2fDWi4U2qWSJgPJXhw7WlZrtG4",[777,771],{"title":48,"path":49,"stem":50,"description":778,"children":-1},"Download the rendered PDF for a Yuzu order.",1780070562371]