{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"9d0cdaed-05d9-4c9f-a83e-b3eb39ef35f1","name":"PSW ACS Jan 22","description":"The Airport Community System (ACS) is a digital platform designed by Pakistan Single Window (PSW) to modernize air cargo data processing throughout Pakistan. It seamlessly integrates both public sector entities, such as customs authorities and regulatory bodies, and private sector participants, including airlines, freight forwarders, and ground handlers, into a unified digital ecosystem.\n\n## **The ACS address three specific challenges:**\n\n<img src=\"https://content.pstmn.io/51a234ff-ce76-4ec3-8e82-ff9a4d768066/U2NyZWVuc2hvdCBhdCBOb3YgMjcgMTItMDItMDkucG5n\">\n\n**1) Automated Submissions**\n\n> Currently, ground handlers must log into Weboc, a customs portal, to manually upload flight manifests on behalf of the airline. The ACS will automate these tasks, minimizing errors and enhancing operational efficiency. \n  \n\n**2) Faster Customs Clearance**\n\n> In Pakistan, airlines generally share their manifests with ground handlers rather than directly with customs authorities. This often causes delays, particularly when manifests are submitted late or with errors. The ACS integrates directly with the airline's cargo management system (CMS), allowing for earlier and more accurate manifest submissions, thereby speeding up the customs clearance process. \n  \n\n**3) Seamless Sales for Air Cargo Agents**\n\n> Air cargo agents in Pakistan are responsible for a variety of tasks, including tracking AWB stock, managing shipments, processing bookings, and issuing air waybills. The ACS simplifies these processes, allowing agents to perform their duties more efficiently and with greater accuracy. \n  \n\n---\n\n# **Questions about ACS**\n\n**What type of integration will be needed with the airline CMS?**\n\n> We support integrations with all CMS platforms (Cargospot, IBS iCargo, SmartKargo, CargoFlash, Accelya Skychain, Unisys, Wipro Croamis, etc). The integration required will depend on the airline's existing CMS (Cargo Management System). Typically, the ACS will need to connect with the airline's system for real-time data exchange, including flight status updates, manifest submissions, and cargo tracking. This integration can be achieved through APIs, and our team will work closely with your IT department to ensure seamless integration. \n  \n\n**What is the expected timeline for integration with our system?**\n\n> Integration with airlines will be starting in Q1 2026 and are expected to be completed with all airlines by Q4 2027. Our team will provide a detailed timeline based on your airline’s specific needs after conducting a system assessment. \n  \n\n**How will the ACS handle data security and privacy?**\n\n> The ACS adheres to the highest standards of data security, including encryption, secure data transfer protocols, and compliance with relevant regulations like GDPR and local data protection laws. We ensure that all sensitive information is securely stored and handled to protect the privacy of your data and passengers. \n  \n\n<img src=\"https://content.pstmn.io/b85f75bb-53da-49ce-995a-49f97af44ce2/Tm92IDIwMjVfIFBTVywgcmV2aWV3aW5nIHNjb3BlLmpwZw==\">\n\n---\n\n## Screenshots\n\nBelow are screenshots of the Airport Community System (ACS). Note that the ACS is currently being co-designed with various members of the air cargo community in Pakistan, and that these designs will likely change over the next several months.\n\n<img src=\"https://content.pstmn.io/7f1e9b23-38be-4f36-bad2-64fff221eed1/U2NyZWVuc2hvdCBhdCBOb3YgMjcgMTItMDktMzIucG5n\">\n\n<img src=\"https://content.pstmn.io/79e24868-8b1f-4204-9d26-a15f712b7755/c2NyZWVuc2hvdC5wbmc=\">\n\n---\n\n# Glossary & Standards\n\n## Standard Request Headers\n\nAll API requests must include the following standard headers:\n\n| Header Name | Type | Length | Condition | Description | Validation Rule |\n| --- | --- | --- | --- | --- | --- |\n| X-Request-ID | String | 36 | M (Mandatory) | Unique identifier for each API request (UUID v4 format) | Must be valid UUID v4. Used for request tracing, debugging, and idempotency |\n| X-Request-System | String | 1-50 | M (Mandatory) | Identifier of the calling system | Format: `{SYSTEM_TYPE}-{INSTANCE}`. Examples: `ACS-WEB`, `ACA-ERP-001`, `AIRLINE-PK-SYS` |\n| X-Request-Timestamp | String (ISO 8601) | 24 | M (Mandatory) | Timestamp when the request was initiated by the client | Format: `YYYY-MM-DDTHH:mm:ss.sssZ`. Must be within ±15 minutes of server time |\n| Authorization | String | Variable | M (Mandatory) | OAuth 2.0 Bearer token for authentication | Format: `Bearer {jwt_token}` |\n| Content-Type | String | \\- | M (Mandatory) | MIME type of the request body | `application/json`, `application/xml`, or `text/plain` |\n| Accept | String | \\- | M (Mandatory) | Expected response MIME type | `application/json` |\n\n---\n\n### Mandatory vs Optional vs Conditional\n\n| Condition | Symbol | Meaning |\n| --- | --- | --- |\n| Mandatory | M | Field must be provided, cannot be null/empty |\n| Optional | O | Field can be omitted or set to null |\n| Conditional | C | Required under specific business conditions |\n\n**Conditional Field Examples**:\n\n> `insuranceDetails`: Conditional (mandatory if `insuranceRequired` = true)\n    \n> `dangerousGoodsDetails`: Conditional (mandatory if `dangerousGoodsIndicator` = true)\n    \n> `temperatureRange`: Conditional (mandatory if commodity requires temperature control)\n    \n> `hawbNumbers`: Conditional (mandatory if `shipmentType` = \"CONSOLIDATED\")","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"36739597","team":7660340,"collectionId":"9d0cdaed-05d9-4c9f-a83e-b3eb39ef35f1","publishedId":"2sBXVigV3j","public":true,"publicUrl":"https://postman-test.belli.app","privateUrl":"https://go.postman.co/documentation/36739597-9d0cdaed-05d9-4c9f-a83e-b3eb39ef35f1","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"documentationLayout":"classic-double-column","customisation":{"metaTags":[{"name":"description","value":""},{"name":"title","value":""}],"appearance":{"default":"light","themes":[{"name":"dark","logo":null,"colors":{"top-bar":"212121","right-sidebar":"303030","highlight":"FF6C37"}},{"name":"light","logo":null,"colors":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"}}]}},"version":"8.10.0","publishDate":"2026-04-05T00:34:51.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{"title":"","description":""},"logos":{"logoLight":null,"logoDark":null}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/9d978cec34fb9be7cecb5b48bd5aeea2e24567c83756bfdcfb15a05eacaa6698","favicon":"https://belli.app/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://postman-test.belli.app/view/metadata/2sBXVigV3j"}