Ferguson welcomes innovation and constantly continues to change the way we do business.. We decided to open up our APIs to be able to support you, the developer, in your never-ending journey of continuous improvement. Help us do things better. Help us help you.

Please refer to Ferguson’s Terms of Use for guidelines.

Please reach out to api.team@ferguson.com if you would like to evaluate potential partnership opportunities.

Please review this document that describes Apigee consumption requirements. Requests can be sent to api.team@ferguson.com. Approved requests will be backlogged and prioritized to meet business need.

If you would like additional access, (i.e. the ability to create your own developer app on this portal), please create a request through  Contact US  form and provide contact details about your request and include why you need access. Your request will be evaluated and handled accordingly.

Hard coding any information is strongly discouraged since data or data formats can be changed at any time. Instead, please consider checking our API documentation for any updates or changes so you can remain synchronously integrated with us.

APIs do not have default quota.However can we set quota limits,by using a quota policy in Apigee.

Apps can make multiple concurrent connections/calls to back end services. The number of concurrent connections can be limited/set by concurrent rate limit policy in Apigee.

We primarily support JSON format but please refer to our API documentation for specifics.

Ferguson APIs pull data from a variety of sources. Please refer to our API documentation for specifics.

Check if your access token is valid and not expired

Error 4xx

This series mainly addresses errors occurring on the client side.

Bad request- 400

Unauthorized- 401

Forbidden- 403

Not found -404

Conflict-409

Unsupported media type-415

Error 5xx

This series mainly addresses errors occurring on server side.

Internal Server Error-500

Not implemented-501

Bad Gateway-502

Service unavailable-503

Gateway timeout-504