GET/v1/cards
Pobieranie listy kart
list_cards
Zwraca karty z filtrami, sortowaniem i stronicowaniem. Z preview=1 (dla widoku kafelków) każda karta ma też preview (pierwsze 200 znaków tekstu) i preview_tables (arkusze z liczbą wierszy) – w granicach Twojego profilu dostępu.
Uwierzytelnianie
Wyślij klucz API w nagłówku Authorization: Authorization: Bearer <klucz>.
Parametry zapytania
collectionstring | nullfolderstring | null<folder ID>zwraca karty folderu i wszystkich jego podfolderów.nonezwraca karty kolekcji, które nie są w żadnym folderze, i wymagacollection(w przeciwnym razie400 cards.invalid_folder_filter). Jeśli folder nie istnieje lub nie jest dla Ciebie widoczny, żądanie zwraca404 folders.not_found.length ≤ 64
statusstring | nullDozwolone wartości:
processingreadyerrorarchivedallownerstring | nullme,nonelub ID użytkownika.owner_idinteger | nullverificationstring | nullDozwolone wartości:
verifiedneeds_verificationstalekindCardKindtypestring | nulltablezwraca karty z tabelami faktów,text– karty bez nich.Dozwolone wartości:
tabletexttagsstring | nullTagi rozdzielone przecinkami (karta musi mieć wszystkie).
idsstring | nullID kart rozdzielone przecinkami.
searchstring | nullcategorystring | nullsensitiveboolean | nullsortCardSortDomyślnie: "created_at"
orderstringDozwolone wartości:
ascdescDomyślnie: "desc"
limitintegerDomyślnie: 200
offsetintegerDomyślnie: 0
previewbooleantruedodajepreview(pierwsze 200 znaków) ipreview_tablesdla widoku kafelków.Domyślnie: false
updated_sincestring (date-time)Tylko karty z
updated_atw tym momencie lub później (RFC 3339 z przesunięciem strefy czasowej), do synchronizacji. Bez jawnychsortiorderlista jest sortowana rosnąco wedługupdated_at, a następnie wedługid. Usuniętych kart nie ma na liście: usunięcia przychodzą jako zdarzenia.metadatamap of stringFiltr według
metadata:metadata[<key>]=<value>oznacza dokładne dopasowanie. Do 3 warunków, wszystkie muszą być spełnione (?metadata[team]=support&metadata[crm_id]=A-1042). Więcej niż 3 warunki lub nieprawidłowy klucz zwracają400 api.metadata_invalid.collection_idintegerKolekcja według ID. Gdy przekazano też
collection, pierwszeństwo macollection_id. Kolekcja, która nie istnieje w organizacji lub nie jest widoczna, zwraca404 collections.not_found.external_idstringTylko karta z tym
external_id.cursorstringKursor następnej strony z
X-Next-Cursorlubnext_cursorpoprzedniej odpowiedzi z tymi samymi filtrami; zawiera rozmiar strony. Razem zoffset:422 validation.failed; kursor innej listy, innych filtrów lub uszkodzony:400 api.cursor_invalid.length ≤ 512
expand[]array of stringPowiązane obiekty, które mają się znaleźć w odpowiedzi (od wersji 1.62.0): ścieżka z listy
x-expandableoperacji. Parametr można powtórzyć do 10 razy. Ścieżka ma do 2 segmentów rozdzielonych kropką (collection.default_owner). Na liście ścieżka zaczyna się oddata.i dotyczy każdego elementu strony (expand[]=data.owner). Rozwinięty obiekt trafia do obiektuexpandedelementu, a pole ID pozostaje na miejscu. Obiekt, którego wywołujący nie może widzieć według kontroli jego własnej operacji odczytu, jest rozwijany jakonull. Nieznana ścieżka, więcej niż 10 ścieżek lub ścieżka głębsza niż 2 segmenty zwraca400 api.expand_invalid.items ≤ 10
Parametry nagłówka
X-View-AsstringTylko dla kluczy API z rolą
admin. Wykonuje żądanie jako profil dostępu<profile>[:viewer|verifier|editor], np.employee:viewer. Klucz instalacji nie może używać tego nagłówka (403).
Parametry cookie
kb_view_asstringPlik cookie trybu „View as” dla sesji.
POST /auth/view-asgo ustawia, aDELETE /auth/view-asusuwa.
Odpowiedzi
200Pomyślna odpowiedź
Nagłówki odpowiedzi
LinkAdres następnej strony,
<…>; rel="next". Brak nagłówka oznacza, że to ostatnia strona.X-Next-CursorKursor następnej strony dla parametru
cursor. Brak nagłówka oznacza, że to ostatnia strona.RateLimit-PolicyObowiązujące limity w formacie projektu IETF
draft-ietf-httpapi-ratelimit-headers: elementy rozdzielone przecinkami"<name>";q=<quota>;w=<window in seconds>.keyto częstotliwość żądań klucza API (przydział to wielkość chwilowego szczytu (burst), okno to czas jego pełnego odnowienia; dla sesji jest touser, bez danych uwierzytelniającychip);minute,dayimonthto przydziały organizacji na minutę, dzień i miesiąc kalendarzowy w UTC.RateLimitCo pozostało z każdego limitu w
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimit najbardziej restrykcyjnej pozycji w
RateLimit-Policy(tej, w której zostało najmniej żądań).X-RateLimit-RemainingLiczba żądań pozostałych w ramach najbardziej restrykcyjnego limitu.
X-RateLimit-ResetLiczba sekund do odnowienia najbardziej restrykcyjnego limitu.
application/json
expandedCardExpandedpermissionsObjectPermissionListaccessstringDozwolone wartości:
wholepartialaccess_contactstringZ kim kontaktować się w sprawie dostępu (tylko gdy
access=partial).aclobjectPola
verifybooleanwymaganewritebooleanwymagane
categorystringwymaganecategory_confidencenumber | nullwymaganecategory_lockedbooleanwymaganecategory_reviewbooleanwymaganecollectionstringwymaganecollection_idintegerwymaganecollection_titlestringcommentsarray of CardCommentcontent_jsonContentJSON | nullZawartość edytora najnowszej opublikowanej wersji. Pola może nie być; wtedy pobierz zawartość edytora ze szkicu (
POST /v1/draftszcard_id).editing_lockEditingLock | nullAktywna blokada edycji. Pola może nie być; wtedy edytor dowiaduje się, kto trzyma blokadę, z
409 cards.lockedprzyPOST /v1/cards/{card_id}/lock.created_atstring (date-time)wymaganedays_since_verifiedintegerwymaganeerrorstring | nullwymaganeeventsarray of CardEventfeedback_negintegerwymaganefeedback_posintegerwymaganefoldersarray of CardFolderRefTylko na liście kart: foldery zawierające kartę (te, które widzi użytkownik), ze ścieżkami od najwyższego poziomu kolekcji. Pusta lista oznacza, że karta nie jest w żadnym folderze.
has_tablesbooleanTylko na liście kart.
hidden_partsbooleanidstringwymaganejobJob | nullorg_idintegerwymaganeowner_activeboolean | nullowner_idinteger | nullwymaganeowner_namestring | nullwymaganepagesinteger | nullwymaganeparserstring | nullwymaganeParser dokumentu jako kod neutralny:
document(pełna struktura: strony, nagłówki, tabele, zeskanowane strony),pdf(warstwa tekstowa PDF),docx,xlsx,csv,markdown,html,text. Lista może się rozszerzać.sensitivebooleanwymaganesha256string | nullwymaganesizeintegerwymaganesnoozed_atstring (date-time) | nullsnoozed_byinteger | nullsnoozed_untilstring | nullsource_changedbooleanwymaganesource_pathstring | nullwymaganesource_urlstring | nullwymaganestatusstringwymaganeDozwolone wartości:
processingreadyerrorarchivedtablesarray of CardTabletagsarray of stringwymaganetitlestringwymaganetrustnumberwymaganetrust_if_verifiednumberupdated_atstring (date-time)wymaganeverified_atstring (date-time) | nullwymaganeverified_byinteger | nullwymaganeverified_by_namestring | nullverifier_idsarray of integerwymaganeverifiersarray of objectPola
activebooleanwymaganeidintegerwymaganenamestringwymagane
verify_interval_daysintegerwymaganeversionintegerwymaganeversionsarray of CardVersionsource_archiveArchiveSourcecreated_byinteger | nullmanual_optionsobjectRęczne ustawienia parsowania (podgląd).
doc_kindDocKind | nullTyp dokumentu.
null, jeśli typu nie określono (np. dla kart zindeksowanych przed wprowadzeniem typów dokumentów).doc_kind_confidencenumber | nullPoziom pewności typu dokumentu, od 0 do 1.
doc_kind_sourcestring | nullCo określiło typ: reguły (
rules), użytkownik (manual) lub automatyczna klasyfikacja. Lista może się rozszerzać: nieznaną wartość traktuj jako automatyczną klasyfikację.Dozwolone wartości:
rulesmanualnullinvoiceDocInvoiceExtraction | nullPola faktury, faktury korygującej lub paragonu (tylko dla tych typów i tylko w karcie, nie na liście).
null, jeśli nie masz dostępu do całego dokumentu, bo pola są wyodrębniane z całego dokumentu.warningsarray of ReviewWarningOstrzeżenia z parsowania dokumentu (
ReviewWarning; tylko w karcie, nie na liście).enrichmentCardEnrichmentStatus | nullStan wzbogacania (tylko w karcie, nie na liście). Typ dokumentu, pola faktury i wpisy finansowe są dodawane w tle po indeksowaniu i mogą zostać później przeliczone; pojawiają się w karcie, gdy są gotowe.
nulloznacza, że stan jest niedostępny (karta została zindeksowana bez wzbogacania w tle).external_idstring | nullID karty w systemie integratora. Jest unikalny w organizacji wśród kart, które nie pochodzą ze źródeł;
nulloznacza, że nie jest ustawiony./v1/cards-by-external-id/{external_id}odczytuje i zastępuje kartę według niego.length ≤ 512
metadataMetadata
400Żądanie jest nieprawidłowe: wartość parametru lub stan obiektu nie pozwala na to działanie (`detail` zawiera komunikat).
Nagłówki odpowiedzi
RateLimit-PolicyObowiązujące limity w formacie projektu IETF
draft-ietf-httpapi-ratelimit-headers: elementy rozdzielone przecinkami"<name>";q=<quota>;w=<window in seconds>.keyto częstotliwość żądań klucza API (przydział to wielkość chwilowego szczytu (burst), okno to czas jego pełnego odnowienia; dla sesji jest touser, bez danych uwierzytelniającychip);minute,dayimonthto przydziały organizacji na minutę, dzień i miesiąc kalendarzowy w UTC.RateLimitCo pozostało z każdego limitu w
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimit najbardziej restrykcyjnej pozycji w
RateLimit-Policy(tej, w której zostało najmniej żądań).X-RateLimit-RemainingLiczba żądań pozostałych w ramach najbardziej restrykcyjnego limitu.
X-RateLimit-ResetLiczba sekund do odnowienia najbardziej restrykcyjnego limitu.
application/json
401Nie przesłano danych uwierzytelniających (ani pliku cookie sesji, ani klucza API) lub nie znaleziono klucza.
Nagłówki odpowiedzi
RateLimit-PolicyObowiązujące limity w formacie projektu IETF
draft-ietf-httpapi-ratelimit-headers: elementy rozdzielone przecinkami"<name>";q=<quota>;w=<window in seconds>.keyto częstotliwość żądań klucza API (przydział to wielkość chwilowego szczytu (burst), okno to czas jego pełnego odnowienia; dla sesji jest touser, bez danych uwierzytelniającychip);minute,dayimonthto przydziały organizacji na minutę, dzień i miesiąc kalendarzowy w UTC.RateLimitCo pozostało z każdego limitu w
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimit najbardziej restrykcyjnej pozycji w
RateLimit-Policy(tej, w której zostało najmniej żądań).X-RateLimit-RemainingLiczba żądań pozostałych w ramach najbardziej restrykcyjnego limitu.
X-RateLimit-ResetLiczba sekund do odnowienia najbardziej restrykcyjnego limitu.
application/json
403Działanie jest niedozwolone: rola jest niewystarczająca, brak dostępu do kolekcji lub karty, żądanie jest wykonywane w trybie „View as” albo organizacja jest zawieszona lub usunięta (`detail` to obiekt z `code: org_suspended | org_deleted`).
Nagłówki odpowiedzi
RateLimit-PolicyObowiązujące limity w formacie projektu IETF
draft-ietf-httpapi-ratelimit-headers: elementy rozdzielone przecinkami"<name>";q=<quota>;w=<window in seconds>.keyto częstotliwość żądań klucza API (przydział to wielkość chwilowego szczytu (burst), okno to czas jego pełnego odnowienia; dla sesji jest touser, bez danych uwierzytelniającychip);minute,dayimonthto przydziały organizacji na minutę, dzień i miesiąc kalendarzowy w UTC.RateLimitCo pozostało z każdego limitu w
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimit najbardziej restrykcyjnej pozycji w
RateLimit-Policy(tej, w której zostało najmniej żądań).X-RateLimit-RemainingLiczba żądań pozostałych w ramach najbardziej restrykcyjnego limitu.
X-RateLimit-ResetLiczba sekund do odnowienia najbardziej restrykcyjnego limitu.
application/json
404Obiekt nie istnieje lub nie jest dla Ciebie dostępny. API nie potwierdza istnienia obiektu z ograniczonym dostępem.
Nagłówki odpowiedzi
RateLimit-PolicyObowiązujące limity w formacie projektu IETF
draft-ietf-httpapi-ratelimit-headers: elementy rozdzielone przecinkami"<name>";q=<quota>;w=<window in seconds>.keyto częstotliwość żądań klucza API (przydział to wielkość chwilowego szczytu (burst), okno to czas jego pełnego odnowienia; dla sesji jest touser, bez danych uwierzytelniającychip);minute,dayimonthto przydziały organizacji na minutę, dzień i miesiąc kalendarzowy w UTC.RateLimitCo pozostało z każdego limitu w
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimit najbardziej restrykcyjnej pozycji w
RateLimit-Policy(tej, w której zostało najmniej żądań).X-RateLimit-RemainingLiczba żądań pozostałych w ramach najbardziej restrykcyjnego limitu.
X-RateLimit-ResetLiczba sekund do odnowienia najbardziej restrykcyjnego limitu.
application/json
422Błąd walidacji: treść lub parametry nie odpowiadają schematowi (`detail` to lista błędów walidacji) albo wartość parametru jest poza zakresem (`detail` zawiera komunikat).
Nagłówki odpowiedzi
RateLimit-PolicyObowiązujące limity w formacie projektu IETF
draft-ietf-httpapi-ratelimit-headers: elementy rozdzielone przecinkami"<name>";q=<quota>;w=<window in seconds>.keyto częstotliwość żądań klucza API (przydział to wielkość chwilowego szczytu (burst), okno to czas jego pełnego odnowienia; dla sesji jest touser, bez danych uwierzytelniającychip);minute,dayimonthto przydziały organizacji na minutę, dzień i miesiąc kalendarzowy w UTC.RateLimitCo pozostało z każdego limitu w
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimit najbardziej restrykcyjnej pozycji w
RateLimit-Policy(tej, w której zostało najmniej żądań).X-RateLimit-RemainingLiczba żądań pozostałych w ramach najbardziej restrykcyjnego limitu.
X-RateLimit-ResetLiczba sekund do odnowienia najbardziej restrykcyjnego limitu.
application/json
429Zbyt wiele żądań (`api.rate_limited`), wyczerpano przydział organizacji na minutę, dzień lub miesiąc (`api.quota_exceeded`; `error.details` zawiera `quota`, `limit` i `reset_at`), osiągnięto limit organizacji albo usługa odpowiedzi jest zajęta (`answers.engine_busy`). Odczekaj czas podany w nagłówku `Retry-After`.
Nagłówki odpowiedzi
Retry-AfterLiczba sekund oczekiwania przed ponowieniem żądania.
RateLimit-PolicyObowiązujące limity w formacie projektu IETF
draft-ietf-httpapi-ratelimit-headers: elementy rozdzielone przecinkami"<name>";q=<quota>;w=<window in seconds>.keyto częstotliwość żądań klucza API (przydział to wielkość chwilowego szczytu (burst), okno to czas jego pełnego odnowienia; dla sesji jest touser, bez danych uwierzytelniającychip);minute,dayimonthto przydziały organizacji na minutę, dzień i miesiąc kalendarzowy w UTC.RateLimitCo pozostało z każdego limitu w
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimit najbardziej restrykcyjnej pozycji w
RateLimit-Policy(tej, w której zostało najmniej żądań).X-RateLimit-RemainingLiczba żądań pozostałych w ramach najbardziej restrykcyjnego limitu.
X-RateLimit-ResetLiczba sekund do odnowienia najbardziej restrykcyjnego limitu.
application/json
Kody błędów
Kody, które ta operacja może zwrócić w error.code, oprócz ogólnych kodów każdego żądania.
- 400api.expand_invalid
- 400api.metadata_invalid
- 401auth.not_authenticated
- 403auth.system_scope
- 400cards.invalid_folder_filter
- 400cards.invalid_kind_filter
- 400cards.invalid_order
- 400cards.invalid_owner_filter
- 400cards.invalid_sort
- 400cards.invalid_status_filter
- 400cards.invalid_type_filter
- 400cards.invalid_verification_filter
- 400categories.unknown
- 403collections.no_access
- 404collections.not_found
- 404folders.not_found
- 403org.deleted
- 403org.suspended
- 403view_as.read_only
Limity częstotliwości
Odpowiedzi zawierają nagłówki RateLimit i RateLimit-Policy oraz starsze X-RateLimit-Limit, X-RateLimit-Remaining i X-RateLimit-Reset. Odpowiedź 429 ma nagłówek Retry-After w sekundach: odczekaj i ponów żądanie.