[{"data":1,"prerenderedAt":1271},["ShallowReactive",2],{"docs-navigation":3,"doc-\u002Fdocs\u002Faddress-parts":60},[4,8,12,16,20,24,28,32,36,40,44,48,52,56],{"path":5,"title":6,"description":7},"\u002Fdocs\u002Fquickstart","Quickstart","Read both sides of an INE from your backend and receive structured JSON.",{"path":9,"title":10,"description":11},"\u002Fdocs\u002Fauthentication","Authentication","Keep company API keys on the server and separate them from dashboard access.",{"path":13,"title":14,"description":15},"\u002Fdocs\u002Fcreate-reading","Create a reading","Submit one front and back pair with a stable idempotency key.",{"path":17,"title":18,"description":19},"\u002Fdocs\u002Fretrieve-result","Retrieve a result","Read an existing job without repeating extraction or consuming another unit.",{"path":21,"title":22,"description":23},"\u002Fdocs\u002Fresponse-fields","Response fields","Choose the standard or extended response and use literal fields with review warnings.",{"path":25,"title":26,"description":27},"\u002Fdocs\u002Ferrors-and-retries","Errors and retries","Recover from errors without accidentally creating another charged reading.",{"path":29,"title":30,"description":31},"\u002Fdocs\u002Flimits-and-billing","Limits and billing","Plan allowances, shared admission limits and how reading units are counted.",{"path":33,"title":34,"description":35},"\u002Fdocs\u002Fprivacy-and-security","Privacy and security","Understand result retention, access controls and your backend's responsibilities.",{"path":37,"title":38,"description":39},"\u002Fdocs\u002Fexamples","Integration examples","Copyable server-side Node.js, Python and cURL examples with one POST per attempt.",{"path":41,"title":42,"description":43},"\u002Fdocs\u002Fdashboard","Dashboard usage","View your company's quota and request counts without exposing OCR data.",{"path":45,"title":46,"description":47},"\u002Fdocs\u002Fextended-reading","Extended extraction","Opt in to printed fields, separated address components, provenance and review checks.",{"path":49,"title":50,"description":51},"\u002Fdocs\u002Fwebhooks","Completion webhooks","Receive signed completion events without exposing OCR data in callbacks.",{"path":53,"title":54,"description":55},"\u002Fdocs\u002Fevaluation","Evaluation and limitations","Measured illustration results, remaining errors, and the limits of the extended profile.",{"path":57,"title":58,"description":59},"\u002Fdocs\u002Faddress-parts","Address parts","Use separate address inputs while retaining literal OCR and exact text sources.",{"id":61,"title":58,"body":62,"description":59,"extension":1265,"meta":1266,"navigation":1267,"path":57,"seo":1268,"stem":1269,"__hash__":1270},"docs\u002Fdocs\u002F14.address-parts.md",{"type":63,"value":64,"toc":1256},"minimark",[65,78,94,99,110,389,395,399,413,420,512,540,566,570,585,615,627,631,658,661,665,671,995,1006,1010,1016,1098,1132,1179,1182,1186,1235,1242,1252],[66,67,68,69,73,74,77],"p",{},"Send ",[70,71,72],"code",{},"profile=extended"," to receive ",[70,75,76],{},"data.address_parts"," on new readings. Use it to prefill separate address inputs, then ask the person reviewing the document to confirm them. No additional image, request option or model call is needed.",[66,79,80,81,85,86,89,90,93],{},"These parts describe text within the printed ",[82,83,84],"strong",{},"DOMICILIO"," (address). They are not twelve separately labelled electoral fields that every INE contains. The complete OCR address remains in ",[70,87,88],{},"data.address",", and ",[70,91,92],{},"data.street"," remains the complete street line. The parser only separates supported text already present in the twenty printed fields. It does not consult a postal service, infer geography, expand abbreviations or verify that an address exists or accepts deliveries.",[95,96,98],"h2",{"id":97},"twelve-simple-keys","Twelve simple keys",[66,100,101,102,105,106,109],{},"When ",[70,103,104],{},"address_parts"," is present, it contains all twelve keys as strings or ",[70,107,108],{},"null",".",[111,112,113,129],"table",{},[114,115,116],"thead",{},[117,118,119,123,126],"tr",{},[120,121,122],"th",{},"Key",[120,124,125],{},"Spanish term or printed marker",[120,127,128],{},"What the value means",[130,131,132,157,173,199,222,248,280,305,324,343,356,369],"tbody",{},[117,133,134,140,154],{},[135,136,137],"td",{},[70,138,139],{},"type",[135,141,142,143,146,147,146,150,153],{},"Tipo de vialidad: ",[70,144,145],{},"CALLE",", ",[70,148,149],{},"C",[70,151,152],{},"AV",", etc.",[135,155,156],{},"The printed street type; accepted abbreviations stay abbreviated.",[117,158,159,164,167],{},[135,160,161],{},[70,162,163],{},"street",[135,165,166],{},"Nombre de la calle",[135,168,169,170,172],{},"The separated street name. Unlike ",[70,171,92],{},", it excludes successfully parsed number\u002Funit labels.",[117,174,175,180,192],{},[135,176,177],{},[70,178,179],{},"number",[135,181,182,183,146,186,146,189,153],{},"Número exterior: ",[70,184,185],{},"NO",[70,187,188],{},"NÚM",[70,190,191],{},"EXT",[135,193,194,195,198],{},"The explicit house\u002Fproperty number, such as ",[70,196,197],{},"012","; not a manzana, lote or number inside the street name.",[117,200,201,206,215],{},[135,202,203],{},[70,204,205],{},"unit",[135,207,208,209,146,212,153],{},"Número interior: ",[70,210,211],{},"INT",[70,213,214],{},"DEPTO",[135,216,217,218,221],{},"An interior\u002Fapartment identifier such as ",[70,219,220],{},"04","; not the building identifier.",[117,223,224,229,241],{},[135,225,226],{},[70,227,228],{},"building",[135,230,231,232,146,235,146,238],{},"Edificio\u002Ftorre: ",[70,233,234],{},"EDIF",[70,236,237],{},"EDIFICIO",[70,239,240],{},"TORRE",[135,242,243,244,247],{},"The building identifier, such as ",[70,245,246],{},"B","; not a street block.",[117,249,250,255,270],{},[135,251,252],{},[70,253,254],{},"block",[135,256,257,260,261,146,264,146,267],{},[82,258,259],{},"Manzana",": ",[70,262,263],{},"MZ",[70,265,266],{},"MZA",[70,268,269],{},"MANZANA",[135,271,272,273,276,277,109],{},"The address block identifier, such as ",[70,274,275],{},"003",". Never the electoral ",[70,278,279],{},"SECCIÓN",[117,281,282,287,298],{},[135,283,284],{},[70,285,286],{},"lot",[135,288,289,260,292,146,295],{},[82,290,291],{},"Lote",[70,293,294],{},"LT",[70,296,297],{},"LOTE",[135,299,300,301,304],{},"The address lot\u002Fplot identifier, such as ",[70,302,303],{},"007",". Not the exterior house number.",[117,306,307,312,321],{},[135,308,309],{},[70,310,311],{},"neighborhood",[135,313,314,315,146,318,153],{},"Colonia\u002Ffraccionamiento\u002Fbarrio: ",[70,316,317],{},"COL",[70,319,320],{},"COLONIA",[135,322,323],{},"A labelled neighborhood within the address. It is not automatically the locality.",[117,325,326,331,340],{},[135,327,328],{},[70,329,330],{},"locality",[135,332,333,334,146,337],{},"Localidad: ",[70,335,336],{},"LOCALIDAD",[70,338,339],{},"LOC.",[135,341,342],{},"A labelled locality or settlement, kept distinct from neighborhood and municipality.",[117,344,345,350,353],{},[135,346,347],{},[70,348,349],{},"municipality",[135,351,352],{},"Municipio\u002Falcaldía\u002Fdelegación",[135,354,355],{},"The municipality or borough supported by the address text. Not an electoral geographic code elsewhere on the card.",[117,357,358,363,366],{},[135,359,360],{},[70,361,362],{},"state",[135,364,365],{},"Estado\u002Fprovincia",[135,367,368],{},"The residence state text, with abbreviations preserved. Not a state inferred from CURP or birthplace.",[117,370,371,376,382],{},[135,372,373],{},[70,374,375],{},"zip",[135,377,378,379],{},"Código postal: sometimes ",[70,380,381],{},"C.P.",[135,383,384,385,388],{},"The postal-code part taken from ",[70,386,387],{},"data.postal_code",", with leading zeros preserved. No postal-code lookup is performed.",[66,390,391,392,394],{},"A number inside a street name is not automatically a house number. Unsupported, absent, ambiguous or conflicting parts remain ",[70,393,108],{},". A populated part is not proof that OCR read the original image correctly.",[95,396,398],{"id":397},"block-lot-unit-and-building","Block, lot, unit and building",[66,400,401,403,404,89,407,403,409,412],{},[70,402,254],{}," means ",[82,405,406],{},"manzana",[70,408,286],{},[82,410,411],{},"lote",". Some addresses printed under DOMICILIO use these identifiers instead of, or alongside, a conventional house number. They are optional address details; the parser does not obtain them from an INE registry or a cadastral record.",[66,414,415,416,419],{},"In the fictional street line ",[70,417,418],{},"CALLE EJEMPLO NO 012 EDIF B INT 04 MZA 003 LOTE 007",":",[111,421,422,435],{},[114,423,424],{},[117,425,426,429,432],{},[120,427,428],{},"Printed fragment",[120,430,431],{},"Output",[120,433,434],{},"Meaning",[130,436,437,452,467,482,497],{},[117,438,439,444,449],{},[135,440,441],{},[70,442,443],{},"NO 012",[135,445,446],{},[70,447,448],{},"number: \"012\"",[135,450,451],{},"Exterior\u002Fproperty number.",[117,453,454,459,464],{},[135,455,456],{},[70,457,458],{},"EDIF B",[135,460,461],{},[70,462,463],{},"building: \"B\"",[135,465,466],{},"Building B.",[117,468,469,474,479],{},[135,470,471],{},[70,472,473],{},"INT 04",[135,475,476],{},[70,477,478],{},"unit: \"04\"",[135,480,481],{},"Interior\u002Fapartment 04.",[117,483,484,489,494],{},[135,485,486],{},[70,487,488],{},"MZA 003",[135,490,491],{},[70,492,493],{},"block: \"003\"",[135,495,496],{},"Manzana 003.",[117,498,499,504,509],{},[135,500,501],{},[70,502,503],{},"LOTE 007",[135,505,506],{},[70,507,508],{},"lot: \"007\"",[135,510,511],{},"Lote 007.",[66,513,514,515,518,519,521,522,524,525,521,527,529,530,532,533,536,537,539],{},"A shorter fictional line, ",[70,516,517],{},"MZA 003 LT 007",", can supply ",[70,520,254],{}," and ",[70,523,286],{}," while ",[70,526,163],{},[70,528,179],{}," remain ",[70,531,108],{},". Conversely, ",[70,534,535],{},"CALLE EJEMPLO NO 012"," supplies neither a manzana nor a lote; both remain ",[70,538,108],{},". An absent part is not zero, and not evidence that the address is invalid.",[66,541,542,543,545,546,549,550,553,554,146,557,560,561,109],{},"The separately printed ",[82,544,279],{},", returned as ",[70,547,548],{},"data.section",", is an electoral section code. A hypothetical ",[70,551,552],{},"SECCIÓN 0042"," must never become ",[70,555,556],{},"block: \"0042\"",[70,558,559],{},"lot: \"0042\""," or a postal code. See the ",[562,563,565],"a",{"href":564},"\u002Fdocs\u002Fresponse-fields#additional-printed-fields-in-the-extended-profile","printed-field reference",[95,567,569],{"id":568},"neighborhood-locality-and-municipality","Neighborhood, locality and municipality",[66,571,572,573,576,577,580,581,584],{},"These names describe different roles. A ",[82,574,575],{},"colonia"," is a neighborhood; a ",[82,578,579],{},"localidad"," is a named locality or settlement; a ",[82,582,583],{},"municipio\u002Falcaldía"," is an administrative municipality or borough. Their names can overlap in real addresses, so the parser does not copy one into another role.",[66,586,587,588,591,592,146,595,591,598,601,602,591,605,608,609,612,613,109],{},"For fictional, explicitly labelled text, ",[70,589,590],{},"COL DEMOSTRACION"," can yield ",[70,593,594],{},"neighborhood: \"DEMOSTRACION\"",[70,596,597],{},"LOCALIDAD VILLA EJEMPLO",[70,599,600],{},"locality: \"VILLA EJEMPLO\"",", and the OCR municipality field ",[70,603,604],{},"MUNICIPIO EJEMPLO",[70,606,607],{},"municipality: \"EJEMPLO\"",". An unlabelled neighborhood field such as ",[70,610,611],{},"CENTRO"," is not enough on its own to choose between neighborhood and locality. Unsupported or conflicting roles stay ",[70,614,108],{},[66,616,617,618,621,622,521,624,626],{},"The existing ",[70,619,620],{},"data.neighborhood"," is an OCR field that may contain colonia or locality text. Parsed ",[70,623,311],{},[70,625,330],{}," use supported role labels within that field or the original address. The parser does not infer a missing municipality from a locality, state or postal code.",[95,628,630],{"id":629},"zip-and-postal-code","Zip and postal code",[66,632,633,635,636,639,640,643,644,646,647,650,651,654,655,657],{},[70,634,387],{}," is the original OCR field. ",[70,637,638],{},"data.address_parts.zip"," is its supported postal-code substring. If the fictional OCR field is ",[70,641,642],{},"C.P. 00100",", the parsed ",[70,645,375],{}," is ",[70,648,649],{},"00100"," and its source points into ",[70,652,653],{},"postal_code",". If the source already contains ",[70,656,649],{},", the value can be identical. The original OCR field is never overwritten.",[66,659,660],{},"Both are strings, not numbers. Supported foreign postal-code text can also be preserved; the parser does not assume every overseas INE has a five-digit Mexican code. A matching format does not verify location or deliverability.",[95,662,664],{"id":663},"fictional-example","Fictional example",[66,666,667,668,670],{},"This is a shortened response excerpt, not a complete API envelope. Assume the OCR street and address both contain the fictional text ",[70,669,418],{},", with no other address fields populated:",[672,673,678],"pre",{"className":674,"code":675,"language":676,"meta":677,"style":677},"language-json shiki shiki-themes material-theme-lighter github-light github-light","{\n  \"data\": {\n    \"address\": \"CALLE EJEMPLO NO 012 EDIF B INT 04 MZA 003 LOTE 007\",\n    \"street\": \"CALLE EJEMPLO NO 012 EDIF B INT 04 MZA 003 LOTE 007\",\n    \"address_parts\": {\n      \"type\": \"CALLE\",\n      \"street\": \"EJEMPLO\",\n      \"number\": \"012\",\n      \"unit\": \"04\",\n      \"building\": \"B\",\n      \"block\": \"003\",\n      \"lot\": \"007\",\n      \"neighborhood\": null,\n      \"locality\": null,\n      \"municipality\": null,\n      \"state\": null,\n      \"zip\": null\n    }\n  }\n}\n","json","",[70,679,680,689,708,734,753,766,787,807,826,845,864,883,902,918,933,948,963,977,983,989],{"__ignoreMap":677},[681,682,685],"span",{"class":683,"line":684},"line",1,[681,686,688],{"class":687},"sYEpm","{\n",[681,690,692,696,700,703,705],{"class":683,"line":691},2,[681,693,695],{"class":694},"s4hL5","  \"",[681,697,699],{"class":698},"sup7M","data",[681,701,702],{"class":694},"\"",[681,704,419],{"class":687},[681,706,707],{"class":687}," {\n",[681,709,711,714,718,720,722,726,729,731],{"class":683,"line":710},3,[681,712,713],{"class":694},"    \"",[681,715,717],{"class":716},"s2tOn","address",[681,719,702],{"class":694},[681,721,419],{"class":687},[681,723,725],{"class":724},"sU42L"," \"",[681,727,418],{"class":728},"sN0tt",[681,730,702],{"class":724},[681,732,733],{"class":687},",\n",[681,735,737,739,741,743,745,747,749,751],{"class":683,"line":736},4,[681,738,713],{"class":694},[681,740,163],{"class":716},[681,742,702],{"class":694},[681,744,419],{"class":687},[681,746,725],{"class":724},[681,748,418],{"class":728},[681,750,702],{"class":724},[681,752,733],{"class":687},[681,754,756,758,760,762,764],{"class":683,"line":755},5,[681,757,713],{"class":694},[681,759,104],{"class":716},[681,761,702],{"class":694},[681,763,419],{"class":687},[681,765,707],{"class":687},[681,767,769,772,775,777,779,781,783,785],{"class":683,"line":768},6,[681,770,771],{"class":694},"      \"",[681,773,139],{"class":774},"szT0U",[681,776,702],{"class":694},[681,778,419],{"class":687},[681,780,725],{"class":724},[681,782,145],{"class":728},[681,784,702],{"class":724},[681,786,733],{"class":687},[681,788,790,792,794,796,798,800,803,805],{"class":683,"line":789},7,[681,791,771],{"class":694},[681,793,163],{"class":774},[681,795,702],{"class":694},[681,797,419],{"class":687},[681,799,725],{"class":724},[681,801,802],{"class":728},"EJEMPLO",[681,804,702],{"class":724},[681,806,733],{"class":687},[681,808,810,812,814,816,818,820,822,824],{"class":683,"line":809},8,[681,811,771],{"class":694},[681,813,179],{"class":774},[681,815,702],{"class":694},[681,817,419],{"class":687},[681,819,725],{"class":724},[681,821,197],{"class":728},[681,823,702],{"class":724},[681,825,733],{"class":687},[681,827,829,831,833,835,837,839,841,843],{"class":683,"line":828},9,[681,830,771],{"class":694},[681,832,205],{"class":774},[681,834,702],{"class":694},[681,836,419],{"class":687},[681,838,725],{"class":724},[681,840,220],{"class":728},[681,842,702],{"class":724},[681,844,733],{"class":687},[681,846,848,850,852,854,856,858,860,862],{"class":683,"line":847},10,[681,849,771],{"class":694},[681,851,228],{"class":774},[681,853,702],{"class":694},[681,855,419],{"class":687},[681,857,725],{"class":724},[681,859,246],{"class":728},[681,861,702],{"class":724},[681,863,733],{"class":687},[681,865,867,869,871,873,875,877,879,881],{"class":683,"line":866},11,[681,868,771],{"class":694},[681,870,254],{"class":774},[681,872,702],{"class":694},[681,874,419],{"class":687},[681,876,725],{"class":724},[681,878,275],{"class":728},[681,880,702],{"class":724},[681,882,733],{"class":687},[681,884,886,888,890,892,894,896,898,900],{"class":683,"line":885},12,[681,887,771],{"class":694},[681,889,286],{"class":774},[681,891,702],{"class":694},[681,893,419],{"class":687},[681,895,725],{"class":724},[681,897,303],{"class":728},[681,899,702],{"class":724},[681,901,733],{"class":687},[681,903,905,907,909,911,913,916],{"class":683,"line":904},13,[681,906,771],{"class":694},[681,908,311],{"class":774},[681,910,702],{"class":694},[681,912,419],{"class":687},[681,914,915],{"class":694}," null",[681,917,733],{"class":687},[681,919,921,923,925,927,929,931],{"class":683,"line":920},14,[681,922,771],{"class":694},[681,924,330],{"class":774},[681,926,702],{"class":694},[681,928,419],{"class":687},[681,930,915],{"class":694},[681,932,733],{"class":687},[681,934,936,938,940,942,944,946],{"class":683,"line":935},15,[681,937,771],{"class":694},[681,939,349],{"class":774},[681,941,702],{"class":694},[681,943,419],{"class":687},[681,945,915],{"class":694},[681,947,733],{"class":687},[681,949,951,953,955,957,959,961],{"class":683,"line":950},16,[681,952,771],{"class":694},[681,954,362],{"class":774},[681,956,702],{"class":694},[681,958,419],{"class":687},[681,960,915],{"class":694},[681,962,733],{"class":687},[681,964,966,968,970,972,974],{"class":683,"line":965},17,[681,967,771],{"class":694},[681,969,375],{"class":774},[681,971,702],{"class":694},[681,973,419],{"class":687},[681,975,976],{"class":694}," null\n",[681,978,980],{"class":683,"line":979},18,[681,981,982],{"class":687},"    }\n",[681,984,986],{"class":683,"line":985},19,[681,987,988],{"class":687},"  }\n",[681,990,992],{"class":683,"line":991},20,[681,993,994],{"class":687},"}\n",[66,996,997,998,146,1000,1002,1003,1005],{},"Do not convert ",[70,999,179],{},[70,1001,205],{}," or ",[70,1004,375],{}," to numbers: doing so would discard meaningful zeros. Keep the original address alongside the reviewed inputs.",[95,1007,1009],{"id":1008},"trace-a-part-to-its-source","Trace a part to its source",[66,1011,1012,1015],{},[70,1013,1014],{},"sources.address_parts"," has the same twelve keys. A populated part has an object; a null part has a null source. For the example above, the exterior number's source is:",[672,1017,1019],{"className":674,"code":1018,"language":676,"meta":677,"style":677},"{\n  \"method\": \"parsed\",\n  \"field\": \"street\",\n  \"start\": 17,\n  \"end\": 20\n}\n",[70,1020,1021,1025,1045,1064,1080,1094],{"__ignoreMap":677},[681,1022,1023],{"class":683,"line":684},[681,1024,688],{"class":687},[681,1026,1027,1029,1032,1034,1036,1038,1041,1043],{"class":683,"line":691},[681,1028,695],{"class":694},[681,1030,1031],{"class":698},"method",[681,1033,702],{"class":694},[681,1035,419],{"class":687},[681,1037,725],{"class":724},[681,1039,1040],{"class":728},"parsed",[681,1042,702],{"class":724},[681,1044,733],{"class":687},[681,1046,1047,1049,1052,1054,1056,1058,1060,1062],{"class":683,"line":710},[681,1048,695],{"class":694},[681,1050,1051],{"class":698},"field",[681,1053,702],{"class":694},[681,1055,419],{"class":687},[681,1057,725],{"class":724},[681,1059,163],{"class":728},[681,1061,702],{"class":724},[681,1063,733],{"class":687},[681,1065,1066,1068,1071,1073,1075,1078],{"class":683,"line":736},[681,1067,695],{"class":694},[681,1069,1070],{"class":698},"start",[681,1072,702],{"class":694},[681,1074,419],{"class":687},[681,1076,1077],{"class":774}," 17",[681,1079,733],{"class":687},[681,1081,1082,1084,1087,1089,1091],{"class":683,"line":755},[681,1083,695],{"class":694},[681,1085,1086],{"class":698},"end",[681,1088,702],{"class":694},[681,1090,419],{"class":687},[681,1092,1093],{"class":774}," 20\n",[681,1095,1096],{"class":683,"line":768},[681,1097,994],{"class":687},[66,1099,1100,1102,1103,1106,1107,260,1109,146,1111,146,1113,146,1115,146,1117,1002,1119,1121,1122,1124,1125,1127,1128,1131],{},[70,1101,1051],{}," names the ",[82,1104,1105],{},"original"," OCR value under ",[70,1108,699],{},[70,1110,163],{},[70,1112,717],{},[70,1114,311],{},[70,1116,349],{},[70,1118,362],{},[70,1120,653],{},". It never points into ",[70,1123,104],{},". Offsets are zero-based UTF-16 code units, with ",[70,1126,1086],{}," exclusive, matching JavaScript ",[70,1129,1130],{},"String.slice",". They are text offsets, not image coordinates or confidence scores.",[672,1133,1137],{"className":1134,"code":1135,"language":1136,"meta":677,"style":677},"language-js shiki shiki-themes material-theme-lighter github-light github-light","const parts = result.data.address_parts\nconst source = result.sources.address_parts?.number\n\nif (parts && source) {\n  const original = result.data[source.field]\n  const literal = original.slice(source.start, source.end)\n  \u002F\u002F literal === parts.number; display it for review.\n}\n","js",[70,1138,1139,1144,1149,1155,1160,1165,1170,1175],{"__ignoreMap":677},[681,1140,1141],{"class":683,"line":684},[681,1142,1143],{},"const parts = result.data.address_parts\n",[681,1145,1146],{"class":683,"line":691},[681,1147,1148],{},"const source = result.sources.address_parts?.number\n",[681,1150,1151],{"class":683,"line":710},[681,1152,1154],{"emptyLinePlaceholder":1153},true,"\n",[681,1156,1157],{"class":683,"line":736},[681,1158,1159],{},"if (parts && source) {\n",[681,1161,1162],{"class":683,"line":755},[681,1163,1164],{},"  const original = result.data[source.field]\n",[681,1166,1167],{"class":683,"line":768},[681,1168,1169],{},"  const literal = original.slice(source.start, source.end)\n",[681,1171,1172],{"class":683,"line":789},[681,1173,1174],{},"  \u002F\u002F literal === parts.number; display it for review.\n",[681,1176,1177],{"class":683,"line":809},[681,1178,994],{},[66,1180,1181],{},"Use UTF-16-aware slicing in other languages: ordinary Python string indexes, for example, differ for characters outside the basic multilingual plane. A source shows which OCR substring was used; it does not establish that the printed document is correct.",[95,1183,1185],{"id":1184},"warnings-and-older-results","Warnings and older results",[111,1187,1188,1197],{},[114,1189,1190],{},[117,1191,1192,1195],{},[120,1193,1194],{},"Code",[120,1196,434],{},[130,1198,1199,1209,1225],{},[117,1200,1201,1206],{},[135,1202,1203],{},[70,1204,1205],{},"address_parsing_unvalidated",[135,1207,1208],{},"The parser's coverage and accuracy have not been validated on a representative customer set. Review its output.",[117,1210,1211,1216],{},[135,1212,1213],{},[70,1214,1215],{},"address_component_ambiguous",[135,1217,1218,1219,1221,1222,109],{},"A part could not be separated reliably. Its ",[70,1220,1051],{}," identifies a path such as ",[70,1223,1224],{},"address_parts.number",[117,1226,1227,1232],{},[135,1228,1229],{},[70,1230,1231],{},"address_source_conflict",[135,1233,1234],{},"Available source fields disagree about a part; inspect the indicated path and original text.",[66,1236,1237,1238,1241],{},"The result always keeps ",[70,1239,1240],{},"needs_review: true",". Missing warnings do not prove correctness. Handle unknown warning codes without breaking your integration.",[66,1243,1244,1245,1248,1249,1251],{},"Parts are computed once when a ",[82,1246,1247],{},"new extended reading"," is created and stored with that result. GET and idempotent replay do not call the model or parser again. Older saved extended results may omit both ",[70,1250,104],{}," objects; treat that as unavailable, not as a malformed response. The default standard response and legacy v1\u002Fv2 contracts remain unchanged. Prices and reading-unit rules are unchanged.",[1253,1254,1255],"style",{},"html pre.shiki code .sYEpm, html code.shiki .sYEpm{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#24292E}html pre.shiki code .s4hL5, html code.shiki .s4hL5{--shiki-light:#39ADB5;--shiki-default:#005CC5;--shiki-dark:#005CC5}html pre.shiki code .sup7M, html code.shiki .sup7M{--shiki-light:#9C3EDA;--shiki-default:#005CC5;--shiki-dark:#005CC5}html pre.shiki code .s2tOn, html code.shiki .s2tOn{--shiki-light:#E2931D;--shiki-default:#005CC5;--shiki-dark:#005CC5}html pre.shiki code .sU42L, html code.shiki .sU42L{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#032F62}html pre.shiki code .sN0tt, html code.shiki .sN0tt{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#032F62}html pre.shiki code .szT0U, html code.shiki .szT0U{--shiki-light:#F76D47;--shiki-default:#005CC5;--shiki-dark:#005CC5}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);}",{"title":677,"searchDepth":691,"depth":691,"links":1257},[1258,1259,1260,1261,1262,1263,1264],{"id":97,"depth":691,"text":98},{"id":397,"depth":691,"text":398},{"id":568,"depth":691,"text":569},{"id":629,"depth":691,"text":630},{"id":663,"depth":691,"text":664},{"id":1008,"depth":691,"text":1009},{"id":1184,"depth":691,"text":1185},"md",{},{"title":58},{"title":58,"description":59},"docs\u002F14.address-parts","XqiWhLvvIUGxy5z37RBOM029zFgzDZfvTmCxtbFKFiY",1790659707420]