Vaše data jsou pro nás prioritou. Všechna data zaslaná uživatelem jsou ihned po zpracování nenávratně odstraněna ze serveru. Na serveru se tedy žádná data neuchovávají ani nesdílejí s třetími stranami.
Uživatel se proto nemusí obávat rizika zneužití svých dat – naše API je navrženo tak, aby zaručovalo maximální bezpečnost a soukromí.
Základní scénář API spočívá v odeslání požadavku na vytěžení dat z jednoho listu Excelu. Klient
by měl provést HTTP požadavek metodou POST s využitím formátu multipart/form-data.
Požadavek musí obsahovat následující klíčové atributy:
file: obsahuje samotný soubor ve formátu .xlsx.
schema: obsahuje schéma pro zpracování a extrakci dat ve
formátu JSON.
Tento přístup umožňuje efektivní a flexibilní zpracování dat na základě specifikovaného schématu.
API požadavek by měl být odeslán na následující URL:
https://tablesnap.a-scan.cz/api/v1/extract
curl
curl --request POST \
--url https://tablesnap.a-scan.cz/api/v1/extract \
--header 'Content-Type: multipart/form-data' \
--header 'User-Agent: insomnia/2023.5.8' \
--form 'file=@X:\path\to\data\spreadsheet.xlsx' \
--form 'schema={"worksheet_name":"List1","schema":[{"id":"date_issue","cell":"B5"},{"id":"type_customer","cell":"C4"},{"id":"list_of_values","range":"[A5, A10]"}]}'
JSON schéma, které slouží k definici dat pro vytěžení, může být buď:
Pokud vytěžujete data pouze z jednoho listu, není nutné specifikovat identifikaci listu – automaticky se použije první list v pořadí. Pro identifikaci konkrétního listu je třeba použít jeden z následujících atributů:
worksheet_name: Název listu.
worksheet_id: Pořadové číslo listu (počítáno od 0).
Další povinný atribut JSON schématu je schema. Tento atribut
obsahuje pole objektů, které definují data pro vytěžení. Každý objekt musí mít následující
atributy:
id: Unikátní identifikátor, pod kterým bude výsledek vrácen.
cell: Adresa konkrétní buňky ve formátu
A1.
range: Rozsah buněk ve formátu [A2, A10],
což může být řádek nebo sloupec.
V případě, že schéma nebude validní, vrátí server chybovou hlášku s popisem chyb.
Níže je uveden příklad schématu, které definuje data pro vytěžení z více listů Excelu:
[
{
"worksheet_name": "List1",
"schema": [
{
"id": "date_issue",
"cell": "B5"
},
{
"id": "type_customer",
"cell": "C4"
},
{
"id": "list_of_values",
"range": "[A5, A10]"
}
]
},
{
"worksheet_name": "List2",
"schema": [
{
"id": "order_number",
"cell": "A4"
},
{
"id": "delivery_note",
"cell": "C4"
},
{
"id": "list_of_values",
"range": "[B5, B10]"
}
]
}
]
Příklad odpovědi serveru na výše uvedený json - každý list reprezentuje vlastní objekt. Jsou seřazeny tak, jak byly zadány ve schématu:
{
"status": "ok",
"data": [
[
{
"id": "date_issue",
"value": "2024-11-11 12:30:17"
},
{
"id": "type_customer",
"value": "regular"
},
{
"id": "list_of_values",
"value": [
"10",
"20",
"30",
"40",
"50",
"55"
]
}
],
[
{
"id": "order_number",
"value": "PO2024-1245"
},
{
"id": "delivery_note",
"value": "DN20241345"
},
{
"id": "list_of_values",
"value": [
"abcd",
"efgh",
"ijkl",
"mnop",
"qrst",
"uvwy"
]
}
]
]
}
© 2024 Pavel Trnavský. Všechna práva vyhrazena.