To receive callbacks for particular container events, you need to create a subscription by posting a request the subscriptions endpoint. Version 1 requests a single container visit event type code per request, Version 2 supports multiple container visit event type codes in a single request. Version 2 also supports the use of “ALL” to subscribe to all events for one or more containers. Subscriptions can be created by Container Number or Booking Number. Callbacks can be sent as emails to multiple email addresses, or as HTTP requests.
Endpoint
POST https://api.portconnect.io/v1/subscriptions
Request example using Container Numbers
Request Body with Container Numbers
{ "containers": [ { "containerNumber": "MEDU3085895", "userDefinedReference" : "User ref 1"}, { "containerNumber": "APHU6303593", "userDefinedReference" : "User ref 2"}, { "containerNumber": "MEDU5129708", "userDefinedReference" : "User ref 3"} ], "webhookURI": "https://api.yourcompany.co.nz/webhooks/portconnect", // Optional if emailAddressList is present "webhookToken": "yoursecret", // Optional if emailAddressList is present "emailAddressList": ["me@test.com"], // Optional if webhookURI and webhookToken are present "portCode": "NZTRG", "category": "IMPORT", "eventTypeCode": "AVAILABLE", "facilityCode": null }
Response Body with containers:
{ "subscriptionId": 32, "containers": [ { "expirationDatetime": "2023-06-20T14:50:30.3+12:00", "containerNumber": "TCNU8050683", "userDefinedReference": "Azure Test 2" } ] }
Request example using Booking Numbers
When creating a subscription against a Booking Number, callbacks will be sent for any Export containers with the specified booking number.
Request Body with Booking Numbers
{ "bookings": [ { "bookingNumber": "LOPReference1", "userDefinedReference" : "User ref 1"} ], "webhookURI": "https://api.yourcompany.co.nz/webhooks/portconnect", // Optional if emailAddressList is present "webhookToken": "yoursecret", // Optional if emailAddressList is present "emailAddressList": ["me@test.com"], // Optional if webhookURI and webhookToken are present "portCode": "NZTRG", "category": "EXPORT", "eventTypeCode": "AVAILABLE", "facilityCode": null }
Response Body with bookings:
{ "subscriptionId": 32, "bookings": [ { "expirationDatetime": "2023-06-20T14:50:30.3+12:00", "bookingNumber": "LOPReference1", "userDefinedReference": "User Ref 1" } ] }