Suppliers API
There are five methods available for suppliers :
- List all suppliers
- Return full detail on a single supplier by SupplierId or SupplierCode
- Add a supplier
- Update an existing supplier
- Delete (make inactive) a supplier
List all suppliers
End Point: https://api.myposconnect.com/api/v2/suppliers
Verb: GET
Example Call: https://api.myposconnect.com/api/v2/suppliers?liPage=1&liPageSize=100&sSortKey=LastEditDateUTCDESC&filt_LastEditDateUTC_dt_min=2020-oct-01%2009%3a00&filt_LastEditDateUTC_dt_max=2022-dec-31%2009%3a00
Return Codes: 200 for success, with the body containing the JSON for the supplier. For other possible (more general) return codes please see API Build Basics
Important: This call returns a restricted flat view of the supplier. The JSON objects in the array are not full supplier JSON objects as shown in the appendices of this document. If some of the deeper information is required then you will need to use the method for getting a single supplier object. There are several query string arguments that can be used with this call as follows (you may need to URL encode your argument values).
Filters:
liPage |
Optional Integer - defaults to 1 if not supplied |
liPageSize |
Optional Integer - defaults to 10 if not supplied |
sSortKey |
Optional String – acceptable values are the name of any returned field appended with ASC or DESC (eg “supplierNameASC” means sort the results by the name field in ascending order) |
sFieldList |
Optional String – use to limit which fields are returned. Acceptable value is the comma-separated names of any returnable field (eg “supplierId,supplierCode,supplierName”). It is a good idea to use this argument if you do not require all the fields in the returned JSON. Please note you will always receive the fields “customSortRowNumber” and “liTotalCount” which allow you to establish how many pages of results there are and where each row lies within the results. |
filt_LastEditDateUTC_dt_min |
Optional DateTime String (yyyy-MMM-dd HH:mm) – use to filter results by the “LastEditDateUTC” property. Example value of “2020-oct-06 11:10” would be URL encoded to “2020-oct-06%2011%3a10”. |
filt_LastEditDateUTC_dt_max |
Optional DateTime String (yyyy-MMM-dd HH:mm) – use to filter results by the “LastEditDateUTC” property. |
filt_XXXXXXX_XXX |
Other filtering query string arguments may be available if requested, please let us know at [email protected]. |
Return full detail on a single supplier
End Point: https://api.myposconnect.com/api/v2/suppliers/{identifier}
End Point: https://api.myposconnect.com/api/v2/suppliers/{suppliercode}
Verb: GET
Example Call: https://api.myposconnect.com/api/v2/suppliers/ef1b97c9-4c4e-4f76-9bf5-ce909e7539c0
Example Call: https://api.myposconnect.com/api/v2/suppliers/0004321
Return Codes: 200 for success, with the body containing the JSON for the supplier. For other possible (more general) return codes please see API Build Basics
Important: This call returns a view of a single supplier and related fields including custom fields tailored for individual MYPOS clients.
Example JSON Object
Single Supplier
|
---|
Add a Supplier
End Point: https://api.myposconnect.com/api/v2/suppliers
Verb: POST
Return Codes: 202 (Accepted) for success and the body will contain a copy of your JSON object with populated “supplierId” and “supplierCode” fields. 400 (BadRequest) for failure, see the body for more details. For other possible (more general) return codes please see API Build Basics
Important: Post a valid JSON object as shown in the appendices of this document. You can omit a lot of the fields from the JSON if you have no values for them. The “supplierId” and “supplierCode” fields will be automatically generated by the system when adding so do not supply in your JSON for this call as they will be ignored.
Update an existing Supplier
End Point: https://api.myposconnect.com/api/v2/suppliers/{supplierCode}
Verb: PUT
Return Codes: 200 (OK) for success. 400 (BadRequest) for failure, see the body for more details. For other possible (more general) return codes please see API Build Basics
Important: Replace the “{supplierCode}” marker in the given endpoint URL with the code of the supplier you wish to update – you must also ensure the “supplierId” and “supplierCode” fields are correctly populated for the supplier you wish to update. To ensure no data is lost please call the GET method to get the supplier first, make your modifications to it, and then use this PUT method to save the changes back. A future release of the API may introduce the PATCH verb but it is not available currently.
Delete a Supplier
End Point: https://api.myposconnect.com/api/v2/suppliers/{supplierCode}
Verb: DELETE
Return Codes: 204 (No content) for success. 404 if not found. 409 (Conflict) for failure (the body may indicate that the supplier has been set to inactive). For other possible (more general) return codes please see API Build Basics
Important: Replace the “{supplierCode}” marker in the given endpoint URL with the code of the supplier you wish to delete. If supplier has transactions such as purchase orders you can only make them inactive with this operation.
Troubleshooting Ideas
As with all API connections, you will need to have acquired a bearer token and the user that acquired the token will need to be assigned access permission to this table. If you are not receiving any results send the full endpoint together with any filters and the API user to us from a valid email address and we can advise if permissions have been authorised. You might be able to see data with one table and not another if specific permissions are not applied. Check your filter dates if collecting all rows.