{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"75b61dbd-d1c3-45d0-80d1-f692f4a20c7d","name":"Abzorb API Documentation - v6.3","description":"<img src=\"https://content.pstmn.io/eeaa367f-a366-41d3-8eb3-6b237e3dd982/QXBpIGJhbm5lckAyeC5wbmc=\">\n\n## **Introduction**\n\nWelcome to the Abzorb API documentation, designed for third-party integration with Abzorb’s CRM/ERP platform. Our API provides extensive capabilities to manage customers, oversee connections, facilitate mobile orders, handle ticket management, monitor data usage for active connections, and much more. It serves as a dynamic interface enabling developers to seamlessly integrate their systems with Abzorb's services.\n\nThe Abzorb API is architected around REST principles. Our API employs predictable resource-oriented URLs, returns JSON-encoded responses, and adheres to standard HTTP response codes and authentication methods.\n\n## Endpoint Details\n\nPlease see a list of deployments alongside the base API URL for each deployment below.\n\n| Description | Base URL |\n| --- | --- |\n| Production API | [https://abzorbapi.click2sign.co.uk:8075/api/](https://abzorbapi.click2sign.co.uk:8075/api/) |\n| Staging API | [https://abzorbapi.click2sign.co.uk:8074/api/](https://abzorbapi.click2sign.co.uk:8074/api/) |\n\n## **Authentication**\n\nThe Abzorb API utilises username/password authentication, where credentials are encoded as a Base64 string. Each API call requires an HTTP header with the key `Authorization`. The corresponding value should be `Basic` followed by your encoded username and password.\n\nTo start using the Abzorb API, please pay close attention to the following:\n\n1. You must use valid credentials to send requests to the API endpoints.\n    \n2. The API only responds to HTTPS-secured communications. Any requests sent via HTTP will return an HTTP 301 redirect to the corresponding HTTPS resources.\n    \n3. The API returns request responses in JSON format. When an API request returns an error, it is sent in the JSON response as an `error` key.\n    \n\n## Errors\n\nThe Abzorb API utilises standard HTTP response codes to convey the outcome of API requests. Typically:\n\n- Codes in the 2xx range signify successful operations.\n    \n- Codes in the 4xx range indicate client errors, such as missing required parameters or invalid requests.\n    \n- Codes in the 5xx range signify server errors, reflecting issues on Abzorb's end, which are infrequent.\n    \n\n| **HTTP Stauts Code** | **Status Code Name** | **Description** |\n| --- | --- | --- |\n| **200** | OK | The request was successful and everything worked as expected. |\n| **400** | Bad Request | The request could not be processed due to missing or incorrect parameters. |\n| **401** | Unauthorized | Access to the resource is denied due to missing or invalid API credentials. |\n| **402** | Request Failed | The request was valid but failed to be processed successfully. |\n| **403** | Forbidden | The request is forbidden due to lack of permissions with the provided API credentials. |\n| **404** | Not Found | The requested resource does not exist on the server. |\n| **409** | Conflict | The request conflicts with another request or resource state. |\n| **429** | Too Many Requests | The API rate limit has been exceeded. Implement an exponential backoff strategy for future requests. |\n| **500, 502, 503, 504** | Server Errors | An unexpected server error occurred on our side. These occurrences are rare. |\n\nWithin an API call, if the request is successfully but fails validation, a validation message will return as per the below example:\n\n``` json\n{    \n  \"response_message\": \"error_message\"\n}\n\n ```\n\n### Authentication error response\n\nIf invalid API credentials are provided, you will receive an HTTP 401 Unauthorized response code.\n\n## Parameter Usage\n\nCertain methods require a `contractId`instead of a `cli`. A `contractId`serves as a unique identifier for a `cli`. To obtain a CLI’s `contractId`, view the `cli`at `/api/Connections/?cli=XX`, etc. A ContractID may also be referred to as a ConnectionID—they are synonymous. In addition, `companyId` may also be referred to as `customerId`.\n\nSome method types necessitate parameters that cannot be supplied directly. These parameters, such as DiaryTypeID, DiaryTaskID, BarSuffix, and StatusID, are provided within seperate API calls within their appropriate controllers.\n\nAdditional information you may need to input can be accessed by querying CLIs using existing information. For instance, a `customerId` is associated with a CLI upon viewing it. This `customerId` is the unique identifier of the customer who owns that connection within our system. It is typically required for creating tasks to ensure they are correctly associated with the customer’s account and portal.\n\n### 503 response\n\nAn HTTP `503` response from our servers indicates there is an unexpected spike in API access traffic. The server is usually operational within the next five minutes. If the outage persists or you receive any other form of an HTTP `5XX` error, please contact Portal Support.\n\n### **Version Control**\n\n| **Version** | **Date** | **Editor** | **Description** |\n| --- | --- | --- | --- |\n| 1.0 | 14/06/2016 | Jak Barnes | Intitial Release  <br>  <br>\\- Request a sim swap  <br>\\- Toggle Bars  <br>\\- Request tariff changes |\n| 2.0 | 21/06/2016 | Jak Barnes | Second version released, adding the ability to emulate the portal’s draft order process.  <br>  <br>\\- Create/Return customers  <br>\\- Create/Submit/Return draft orders  <br>\\- Add/Remove mobile to draft order  <br>\\- Add/Remove bundle from draft order mobile |\n| 2.1 | 28/07/2016 | Jak Barnes | Minor update  <br>  <br>\\- Added MonitorOrder method to view order status from the submitted contracts table  <br>\\- Added the ability to Add/Remove bars from draft order mobile  <br>  <br>Added TariffLevelOptionID column to barring information |\n| 2.2 | 01/08/2016 | Jak Barnes | Minor update  <br>  <br>\\- Added validation into the Submit Order call to prevent erroneous data from being inputted.  <br>  <br>Added 1 new function relating to building orders, ReturnOrderToDraft, This will allow the API user to return incorrectly built orders to the draft stage so that they can then be amended and re-submitted. |\n| 2.3 | 08/08/2016 | Jak Barnes | \\- Added a GetTasksForCustomer method so the user can view a list of all tasks raised on that customer  <br>  <br>Added a GetCommentsForTask method so that the user can see comments associated with each task |\n| 2.4 | 22/08/2016 | Ben Sugden | Minor update  <br>  <br>Added a GetTicketsForOrder method so the user can check for associated tickets on an order id |\n| 2.5 | 07/10/2016 | Ben Sugden | Document revision  <br>  <br>Pulled into standard branding for distribution to prospective users. |\n| 2.6 | 19/10/2016 | Ben Sugden | Added document referencing. |\n| 2.7 | 19/06/2017 | Awais Hussain | \\- Added a ListTariffsForNetwork method so the user can view a list of Tariff ID’s, Tariff Name and Retail Cost on a particular Network  <br>  <br>Added a ListBundlesForTariff method so the user can view a list of Bundle ID’s, Bundle Name and Retail Cost for a specific tariff |\n| 2.8 | 19/02/2018 | Awais Hussain | Minor Update  <br>  <br>\\- Added a GetCommentsForTaskBulk method so that the user can see a bulk view of comments associated to tasks  <br>  <br>\\- Added a ViewTaskStatusBulk method so that the user can see a bulk view of task status  <br>  <br>\\- Added a GetTicketsForOrderBulk method so that the user can see a bulk view of DiaryEntryID’s and associated OrderID’s  <br>  <br>Added a MonitorOrderBulk method so that the user can see a bulk view of order statuses . |\n| 2.9 | 21/03/2018 | Awais Hussain | \\- Added validation into the Tariff change call to prevent users from performing tariff changes on certain tariffs under certain scenarios.  <br>\\- Added a GetTariffsForContract method so that the user can access the applicable tariffs for a given ContractID. |\n| 3.0 | 05/04/2018 | Awais Hussain | \\- Added a ListAvaialbleNumbers method which will return a list of available new mobile numbers for a given which can be used when adding placing new mobile order. The new method will only return new numbers for Vodafone and O2.  <br>  <br>\\- Also, changed logic within AddMobileToOrder method so that if the connection type is New and an empty string is passed through then a new mobile number is allocated. |\n| 3.1 | 30/05/2019 | Awais Hussain | \\- Added a BillCapOffered flag to the AddMobileToOrder call in order to determine whether Bill capping has been offered.  <br>\\- Added an EnableBillCap flag to the AddMobileToOrder call to toggle Bill capping for one or more connections.  <br>\\- Added a BillCapValue field to the AddMobileToOrder call against which a Bill Cap threshold can be set.  <br>\\- Added validation to ensure if user toggles Bill capping that the tariff selected is eligible for Bill capping  <br>\\- Added a BillCapEligibleTariffs method which will return a list of Bill cap eligible tariffs for a given Network provider (Vodafone, O2 or EE). |\n| 3.2 | 13/08/2019 | Awais Hussain | \\- Added a new Connection type for Disconnection in order to allow STAC connections to be added at the point of adding a new Mobile order.  <br>\\- Added new methods to allow the creation of PAC, STAC and INFO requests via the API.  <br>\\- Added a GetSwitchingRequests method to allow API users to query previous requests  <br>\\- Added a ListBundlesForNetwork method to allow a list of active bundles to be returned for a specific Network.  <br>\\- Added an API call for all information shown within Appendix pages of API documentation. This is to ensure that API users have the most recent information. |\n| 3.3 | 15/12/2019 | Awais Hussain | \\- API users can now provision abZ connections via the API  <br>\\- API users can now provision Bar and SIM requests for abZ connections  <br>\\- Added a GetCustomerDetails method to allow individual customer details to be queried and returned. |\n| 3.4 | 04/05/2021 | Awais Hussain | Added new methods to allow the creation of PAC, STAC requests via the API. |\n| 3.5 | 17/06/2021 | Awais Hussain | Added CoRegNumber field to GetCustomerDetails and CreateCustomer API calls. |\n| 3.6 | 25/11/2021 | Awais Hussain | Changed references to Abzorb API endpoint. The live endpoint is now only available via Port 8075. |\n| 5.0 | 01/09/2022 | Awais Hussain | Improved document formatting and changed versioning. |\n| 6.0 | 29/04/2024 | Awais Hussain | Breaking Changes:  <br>  <br>1\\. `Add or Remove Bar` - the endpoint response has been changed so that the response body now references a new return object.  <br>  <br>2.`Add Bundle` - the endpoint response has been changed so that the response body now references a new return object.  <br>  <br>3\\. `Remove Bundle` - the endpoint response has been changed so that the response body now references a new return object.  <br>  <br>4.`GetConnectionByCLI` - we have added attributes to this API call regarding CapZ.  <br>  <br>5\\. `SIMChange` - the endpoint response has been changed so that the response body now references a new return object.  <br>  <br>6\\. `AddMobileToOrder` - added functionality to allow Vodafone eSIMs to be requested at the point of order.  <br>  <br>7\\. `ChangeSIM` - `Mobile_No` parameter name changed to `cli`  <br>  <br>8\\. For all API calls that take parameters, the naming conventions have changed to `camelCase` from `PascalCase`.  <br>  <br>9\\. Changed `AddBundles` method name to `AddBundle` and changed parameter name from `TariffIDs`to `tariffOptionId`  <br>  <br>9\\. Changed `RemoveBundles` method name to `RemoveBundle`and changed parameter name from `TariffIDs`to `tariffOptionId`  <br>  <br>10\\. Changed `GetConnectionByCustomerID` method to `GetConnectionByCustomerId`  <br>  <br>11\\. Changed `AddBarToMobile` method name to `AddBarToMobileOrder`  <br>  <br>12\\. Changed `RemoveBarFromMobile` to `RemoveBarFromMobileOrder`  <br>  <br>13\\. Renamed `ReturnOrder` method to `GetOrderDetails`  <br>  <br>14\\. Renamed `ReturnOrders`to `GetOrdersForCustomer`  <br>  <br>API Changes:  <br>  <br>\\- Added a new API endpoint (`CreateEsimRequest`) to allow a Vodafone eSIM request to take place.  <br>\\- Improvements to order validation.  <br>\\-`GetConnectionByCLI` now returns core CapZ details.  <br>\\- A new 'alerting' controller has been created with multiple new endpoints.  <br>\\- Functionality to allow Vodafone eSIMs at the point of order. |\n| 6.1 | 01/10/2024 | Awais Hussain | Breaking Changes:  <br>  <br>1\\. Amended values returned within the `GetConnectionByCLI`API call.  <br>  <br>Core Changes:  <br>  <br>1\\. Amended the Alerting related attributes returned within the `GetConnectionByCLI`API call to include a greater number of attributes. |\n| 6.2 | 16/10/2024 | Awais Hussain | Core Changes:  <br>  <br>1\\. Added a new endpoint called `GetUsageInformationForCli`to allow Billing usage information to be retreived for a given connection. |\n| 6.3 | 28/10/2024 | Awais Hussain | Core Changes:  <br>  <br>1\\. Added a new endpointed called `GetCliAlertingBarStatus` to allow the bar status of a CLI to be viewed. |\n\n### **Need some help?**\n\nIn case you have questions or require assistance, please contact your Business Development Manager (BDM) who will be able to forward your query to the API development team.","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"49139871","team":10727615,"collectionId":"75b61dbd-d1c3-45d0-80d1-f692f4a20c7d","publishedId":"2sB3QRondn","public":true,"publicUrl":"https://abzorbapidocs.click2sign.co.uk","privateUrl":"https://go.postman.co/documentation/49139871-75b61dbd-d1c3-45d0-80d1-f692f4a20c7d","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.1","publishDate":"2025-10-23T13:12:58.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/19b0f659f66cae52c65e58848dc9f202d34f11f2b1238dfb144808199758b669","favicon":"https://click2sign.co.uk/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://abzorbapidocs.click2sign.co.uk/view/metadata/2sB3QRondn"}