Integrate tools, build custom reports, automate tasks, and more with ConstructionOnline's API
The ConstructionOnline application programming interface (API) serves as the underlying framework for building any custom applications or integrations between ConstructionOnline and other software tools. By using the ConstructionOnline API, you can expand the functionality of your ConstructionOnline account and get the most value out of your company's construction project data.
Before diving into the specifics of the ConstructionOnline API, let's first go over some API basics.
What is an API?
An application programming interface, or API, is a software intermediary that allows two or more applications to communicate with each other. Specifically, an API is a set of defined rules and protocols that dictate how two applications can "talk" to each other. These defined protocols allow software applications to easily communicate with each other, enabling developers to build and integrate complex software applications.
Although they cannot be physically seen by users, APIs exist everywhere in the digital world—allowing you to sign into an app with your Google account, make a mobile payment, check the weather on your smartphone, and more. APIs are constantly running behind the scenes to power the modern, digital experiences we use every day. APIs are only intended to be used by software applications or machines, not real end users. The only people that will see and interact with an API are the developers building, connecting, or implementing the API.
How does an API work?
An API dictates specific protocols and definitions that determine how software components can interact with each other—allowing data to be shared between different applications, systems, and devices without any issues. An API works by retrieving data over the internet through a request and response cycle. First, a user's request for data is sent to the API. Then, the API retrieves the data and returns it to the user. Users cannot see an API at work, as all requests and responses are handled internally. Every exchange of data appears to users as a seamless, direct connection.
If this is your first time working with an API, the process of how an API works can be easily explained & imagined using a restaurant metaphor.
Imagine you're a customer at a restaurant ready to order. First, you tell the waiter your order. Then, the waiter relays your request to the kitchen. Next, the kitchen makes your order using ingredients and equipment from the kitchen. While making your order, the kitchen staff may use terms that only they know they meaning of. The waiter, however, does know the meaning of these terms and can translate for customers if necessary—for example, if a menu item is out. Once your order is ready, the waiter will get it and deliver it to you from the kitchen.
In this metaphor, you are the user interacting with a web application. The waiter represents the API, while the kitchen staff represents the application server and the kitchen itself the database. The user requests data from the server, which must be relayed by the API. Just like you can't directly order from the kitchen in a restaurant, a web application cannot obtain data directly from the server. The API serves as the middleman, allowing data to be translated and transferred from one application to another. If data cannot be retrieved, the API will also relay this information to the user—just like when a waiter tells you an item you ordered is out.
The following diagram represents the transaction of data from one application to another using the ConstructionOnline API.
ConstructionOnline API
The ConstructionOnline API is a RESTful API. REST, or "representational state transfer", is a software architectural style that imposes requirements on how an API should work. RESTful APIs conform to REST principles such as statelessness, client-server architecture, and uniform interface constraints. RESTful APIs are the most popular type of API used today, due to their fast performance, reliability, and scalability.
As a RESTful API, the ConstructionOnline API uses predictable resource-oriented URLS and uses standard HTTP features such as methods and response codes. Resources are identified using a URL, which specifies the exact path to the resource for the server. HTTP methods such as GET, POST, and PUT are used to tell the server what action it needs to do to the resource. Requests to the API may also include data in the form of a payload (for PUT and POST methods only) or parameters, which provide the server with more details.
⭐ All ConstructionOnline API endpoints are relative to the base URL:
https://api.constructiononline.com/
The ConstructionOnline API must authorize and authenticate requests before a response can be sent. You must include your ConstructionOnline username and password in every request; these credentials are encoded with base64 to ensure safe transmission. You must also include an API key with each call. All returned responses will include a status response code and a representation of the resource in JSON format.
To assist with making calls to the API, ConstructionOnline's development team provides developers with code snippets for cURL, C#, JavaScript, and Python. These code snippets can be found in the reference guides for each individual endpoint. Alternatively, API requests can be made with a third-party API tool like Postman.
Disclaimer: ConstructionOnline does not provide any support for Postman or other third-party API management tools. For assistance, see Postman's documentation.
Have more questions?
- Frequently asked questions (FAQs) regarding getting started with the ConstructionOnline API can be found here.
- If you need additional assistance, please contact the ConstructionOnline development team at api@uda1.com.
👍 Ready to start working with the ConstructionOnline API? Check out our Quick Start Guide here!