Utworzenie manifestu wymaga zorganizowania danych przesyłki w prawidłową strukturę. Interfejs API wykorzystuje podejście hierarchiczne, w którym najpierw tworzysz manifest, a następnie dodajesz linie manifestu zawierające szczegóły poszczególnych przesyłek.
Każdy komponent ma określone wymagane pola, aby zapewnić zgodność celną i dokładną dokumentację. Poniżej opisaliśmy podstawową strukturę danych i wymagane dane wejściowe.
Kluczowe typy danych wejściowych
Interfejs API manifestu wykorzystuje kilka typów danych wejściowych do organizacji danych przesyłki:
ManifestInput: Ogólne informacje o przesyłce, w tym lotniska, typ listu przewozowego i szczegóły lotu
ManifestLineInput: Szczegóły poszczególnych przesyłek połączone z manifestem
ManifestLineItemInput: Informacje o produkcie do klasyfikacji celnej
CreatePartyInput: Szczegóły strony i lokalizacji dla pochodzenia i przeznaczenia
W celu wydajności możesz dodać wiele linii manifestu w jednym żądaniu, korzystając z mutacji manifestLinesCreate. Każda linia wymaga własnej tablicy parties do zdefiniowania pochodzenia i przeznaczenia przesyłki.
W przypadku zmiany szczegółów lotu możesz aktualizować szczegóły manifestu za pomocą poniższej mutacji. Pole source jest wymagane i wskazuje źródło danych aktualizacji.
{"data":{"manifestUpdate":{"id":"manifest_abc123def456","amount":"150.50","arrivalDate":"2026-03-16T10:00:00.000Z","awbNumber":"5678","awbPrefix":"001","carrierCode":"BA","createdAt":"2026-01-06T12:00:00.000Z","createdBy":"organization_xyz789","destinationCode":"JFK","operatorDestination":"US","originCode":"LHR","postalOperatorCode":"J1CGBA","serviceNumber":"5678","source":"RESDIT","transportationMode":"AIR","updatedAt":"2026-01-06T14:30:00.000Z","updatedBy":"organization_xyz789","weight":"25.5","weightUnit":"KILOGRAM","statusTransitions":[{"createdAt":"2026-01-06T14:30:00.000Z","createdBy":"organization_xyz789","note":"Flight rescheduled due to weather","source":"RESDIT"}]}}}
Wartości źródła danych
Pole source w ManifestUpdateInput akceptuje następujące wartości:
Przygotowanie manifestu celnego
Przygotowanie manifestu celnego dla przesyłek do USA.
Podaj Zonos informacje o przychodzących przesyłkach pocztowych.
Zonos przygotuje kompleksowe manifesty celne zawierające wszystkie niezbędne informacje dotyczące przesyłek pocztowych do USA.
Przygotowanie żądania
Utworzenie manifestu wymaga zorganizowania danych przesyłki w prawidłową strukturę. Interfejs API wykorzystuje podejście hierarchiczne, w którym najpierw tworzysz manifest, a następnie dodajesz linie manifestu zawierające szczegóły poszczególnych przesyłek.
Każdy komponent ma określone wymagane pola, aby zapewnić zgodność celną i dokładną dokumentację. Poniżej opisaliśmy podstawową strukturę danych i wymagane dane wejściowe.
Kluczowe typy danych wejściowych
Interfejs API manifestu wykorzystuje kilka typów danych wejściowych do organizacji danych przesyłki:
ManifestInput: Ogólne informacje o przesyłce, w tym lotniska, typ listu przewozowego i szczegóły lotuManifestLineInput: Szczegóły poszczególnych przesyłek połączone z manifestemManifestLineItemInput: Informacje o produkcie do klasyfikacji celnejCreatePartyInput: Szczegóły strony i lokalizacji dla pochodzenia i przeznaczeniaWyświetl pełne definicje pól i opcje w naszym referencyjnym interfejsie API GraphQL.
Tworzenie manifestu poprzez interfejs API
Po zorganizowaniu danych przesyłki wyślij mutację GraphQL, aby utworzyć manifest.
Krok 1: Utwórz nagłówek manifestu
mutation ManifestCreate($input: ManifestInput!) {manifestCreate(input: $input) {idamountarrivalDateawbNumberawbPrefixcarrierCodecreatedAtcreatedBydestinationCodeoperatorDestinationoperatorOriginoriginCodepostalOperatorCodeserviceNumbersourcetransportationModeupdatedAtupdatedByweightweightUnitstatusTransitions {createdAtcreatedBynotesource}lines(first: 5) {totalCountedges {cursornode {idtrackingNumberendUsecurrencyCodecreatedAtcreatedByupdatedAtupdatedBylandedCost {id}}}}}}RESPONSE
json
{ "data": { "manifestCreate": { "id": "manifest_abc123def456", "amount": "0", "arrivalDate": "2026-03-15T14:30:00.000Z", "awbNumber": "1234", "awbPrefix": "001", "carrierCode": "AA", "createdAt": "2026-01-06T12:00:00.000Z", "createdBy": "organization_xyz789", "destinationCode": "JFK", "operatorDestination": "US", "originCode": "LHR", "postalOperatorCode": "J1CGBA", "serviceNumber": "1234", "source": "API", "transportationMode": "AIR", "updatedAt": "2026-01-06T12:00:00.000Z", "updatedBy": "organization_xyz789", "weight": "0", "weightUnit": "KILOGRAM", "statusTransitions": [], "lines": { "totalCount": 0, "edges": [] } } } }Krok 2: Dodaj linie manifestu
Korzystając z identyfikatora zwróconego z mutacji
manifestCreate, możesz teraz powiązać poszczególne przesyłki z manifestem.mutation ManifestLineCreate($manifestId: ID!, $input: ManifestLineInput!) {manifestLineCreate(manifestId: $manifestId, input: $input) {idmanifestIdtrackingNumberendUsecurrencyCodereferenceNumberarrivalDatecreatedAtcreatedByupdatedAtupdatedBylandedCost {id}}}RESPONSE
json
{ "data": { "manifestLineCreate": { "id": "manifest_line_def456ghi789", "manifestId": "manifest_abc123def456", "trackingNumber": "LX123456789GB", "endUse": "NOT_FOR_RESALE", "currencyCode": "USD", "referenceNumber": "ORDER-2026-001", "arrivalDate": "2026-03-15T14:30:00.000Z", "createdAt": "2026-01-06T12:05:00.000Z", "createdBy": "organization_xyz789", "updatedAt": "2026-01-06T12:05:00.000Z", "updatedBy": "organization_xyz789", "landedCost": null } } }Krok 3: Dodaj wiele linii manifestu (partia)
W celu wydajności możesz dodać wiele linii manifestu w jednym żądaniu, korzystając z mutacji
manifestLinesCreate. Każda linia wymaga własnej tablicypartiesdo zdefiniowania pochodzenia i przeznaczenia przesyłki.mutation ManifestLinesCreate($manifestId: ID!, $input: [ManifestLineInput!]!) {manifestLinesCreate(manifestId: $manifestId, input: $input) {idmanifestIdtrackingNumberendUsecurrencyCodecreatedAt}}RESPONSE
json
{ "data": { "manifestLinesCreate": [ { "id": "manifest_line_aaa111bbb222", "manifestId": "manifest_abc123def456", "trackingNumber": "LX123456789GB", "endUse": "NOT_FOR_RESALE", "currencyCode": "USD", "createdAt": "2026-01-06T12:10:00.000Z" }, { "id": "manifest_line_ccc333ddd444", "manifestId": "manifest_abc123def456", "trackingNumber": "LX987654321GB", "endUse": "GIFT", "currencyCode": "USD", "createdAt": "2026-01-06T12:10:00.000Z" } ] } }Krok 4: Aktualizuj manifest
W przypadku zmiany szczegółów lotu możesz aktualizować szczegóły manifestu za pomocą poniższej mutacji. Pole
sourcejest wymagane i wskazuje źródło danych aktualizacji.mutation ManifestUpdate($id: ID!, $input: ManifestUpdateInput!) {manifestUpdate(id: $id, input: $input) {idamountarrivalDateawbNumberawbPrefixcarrierCodecreatedAtcreatedBydestinationCodeoperatorDestinationoperatorOriginoriginCodepostalOperatorCodeserviceNumbersourcetransportationModeupdatedAtupdatedByweightweightUnitstatusTransitions {createdAtcreatedBynotesource}}}RESPONSE
json
{ "data": { "manifestUpdate": { "id": "manifest_abc123def456", "amount": "150.50", "arrivalDate": "2026-03-16T10:00:00.000Z", "awbNumber": "5678", "awbPrefix": "001", "carrierCode": "BA", "createdAt": "2026-01-06T12:00:00.000Z", "createdBy": "organization_xyz789", "destinationCode": "JFK", "operatorDestination": "US", "originCode": "LHR", "postalOperatorCode": "J1CGBA", "serviceNumber": "5678", "source": "RESDIT", "transportationMode": "AIR", "updatedAt": "2026-01-06T14:30:00.000Z", "updatedBy": "organization_xyz789", "weight": "25.5", "weightUnit": "KILOGRAM", "statusTransitions": [ { "createdAt": "2026-01-06T14:30:00.000Z", "createdBy": "organization_xyz789", "note": "Flight rescheduled due to weather", "source": "RESDIT" } ] } } }Wartości źródła danych
Pole
sourcewManifestUpdateInputakceptuje następujące wartości:CARDITPRECONPREDESRESDITCzy ta strona była pomocna?