NAV Navbar
javascript

Introduction

Welcome

Welcome to the CINX API Documentation site

CINX is a platform product from Harrison Publishing House (HPH) serving the construction industry in North America.

The CINX API provides access to building material information, construction project information, and material transactions exchanged with product vendors.

The API requires a user to have a valid CINX account with an API subscription.

HPH will be pleased to work with any developer seeking to utilize the API. Please email us at: support@cinx.com

REST API

CINX REST API General Information

JSON formatted response

{
  "start_time": 1411574224.8083,
  "response": {
    "status_code": 200,
    "message": "OK",
    "record_count": 1,
    "server_response_time": 0,
    "total_elapsed_time": 0.02492094039917,
    "total_count": 0
  },
  "rows": []
}

XML formatted response

<cinx_api>
  <start_time>1414436492.2267</start_time>
  <response>
    <status_code>200</status_code>
    <message>OK</message>
    <record_count>2</record_count>
    <server_response_time>0</server_response_time>
    <total_elapsed_time>0.013047933578491</total_elapsed_time>
    <total_count>0</total_count>
  </response>
  <rows>
    <row> 
    </row>
  </rows>
</cinx_api> 

The CINX platform offers programmatic access to read and write data using REST web services and standard HTTP methods/verbs.

Authentication & Headers

HTTP Basic Authentication over HTTPS is used to control access to CINX platform resources.

With each API call, you’ll need to set request headers, including a CINX user’s email and password.

Account Authorization

CINX accounts are subscription based and have expiration dates. Accounts with expired subscriptions will not have access to CINX data.

API Server Paths

The production server is: https://api.cinx.com

The development server is: https://api.dev.cinx.biz

API Version

The CINX API is versioned. This documentation supports version 2.0 and higher. The API version will be added to the API server path and become part of the base URL.

API Token

The CINX API uses an API Token when submitting web service requests. The CINX API Token is retrieved from the subscription authorization API response. A company that has a CINX account must also be configured to permit API access before the API token will be returned in the authorization API response. The API token is valid for the duration of a company’s CINX subscription. The API token will be added to the base URL following the API Version number.

API Base URL

The CINX API Base URL is constructed from the components shown below:

API Response Formatting – Standard/JSON

All CINX API responses use a standardized format. By default, a JSON formatted response is provided. Please see below if you prefer XML.

The response object will contain meta data about the server’s response to the request.

The rows array will contain the query results.

API Response Formatting – XML

To receive an XML response, please add the following parameter to the URL: format=xml

Result Rows - Paging

For many HTTP GET requests you can use URL parameters to define the number of rows returned in the response. Valid input parameters are:

Documentation Notes

API Documentation Web Site Formating Notes

API URL References

The API calls documented on this site will contain two URL sections to assist in the construction of properly formatted URLs to be submitted to CINX.

Developer Resources

Additional API Resources for Developers

Demo Site

A simple demo site has been created to demonstrate the implementation of commonly used API calls. The URL for the demo site is: https://www.dev.cinx.biz/cinxjs/

Javascript Library

A Javascript library has been created to support the implementation of the API. The library is hosted on Github and can be accessed via this URL: https://github.com/cinx-api/js-library

Email Support

Email questions to support@cinx.com

App/Sub Model

CINX Application/Subscription Model Introduction

A CINX customer (organization) has the opportunity to subscribe to different applications available on the platform. An application can be a grouping of pages and functionality on the CINX web site or external applications that consume content from CINX. Each application on the CINX platform has a unique identifier and a range of fields that define its attributes. When an organization subscribes to an application, a new unique identifier is created to link the application to the subscribing organization. This application id will be used in API calls to identify and grant access to requested data operations.

Data Sources

CINX Data Source Introduction

CINX supports different “catalogs” (databases) of content. Companies subscribing to CINX can have access to multiple catalogs of content. Here are some common catalogs in CINX:

Another catalog that each CINX company can use is a Private catalog. This catalog of content is specific to the subscribing company and can contain material items. These items can be copied from another catalog on CINX or manually entered/uploaded by the company.

Estimating systems, CAD/BIM software systems, and other software partners that utilize CINX content will also have a separate CINX Catalogs. This allows each system to have a specific set of items that CINX maintains.

A good way to visualize this concept is to open the Catalog drop-down in the CINX Search app. Here is a screen shot that shows a company that has access to many catalogs. Note: each company’s private catalog will be listed using the company’s name as registered in CINX.

When working with the CINX API in conjunction with a company’s subscription a catalog is often named as Data Source in API responses.

App - Data Sources

CINX Application and Data Source Introduction

For software partner (external) applications that consume data from CINX there is an important attribute in the CINX subscription that defines which CINX catalog is used to acquire information for data outputs. This attribute is called a data source.

Importantly, a company can subscribe to an application multiple times provided that the data source is different. For example, a company using an industry estimating system may have CINX produce updates for different locations using different CINX Catalogs (data sources). One location may want standard list prices from the standard estimating database and another location may want update files to contain net buy prices based on their private catalog of content.

Please note that when working with the CINX Subscription/Authorization API response each combination of an application and a data source will be listed in separate blocks.

Below is a sample showing an App with two different data sources.

Data Source Name: Quotesoft

Data Source Name: My Private Catalog

Templates

CINX Data Object Templates

To assist developers in creating and modifying data objects on the CINX Platform, the API includes templates that define the data structure and provide other information that can be used to present data options to the end-user.

The templates are accessed via the API and use a standardized response structure containing the following data structures:

doc_info: identification and version info for the template

template: data structure that should be used when submitting a POST or PUT payload. Note: fields not used do not have to be submitted.

required_post: defines required fields when a POST is submitted.

required_put: defines required fields when a PUT is submitted

field_options: defines available options for data fields

api_calls: lists related API calls. The URL in the response is fully formed with the proper API Token and other variables. The API calls will include the web service to POST/PUT the data and any calls that can be used to access data that can be populated in the template.

Auto-Numbering

CINX Object Auto-Numbering

CINX provides a subscribing company with the option of automating the numbering of common objects when new instances are created. These numbers are the public values used by the company to define the objects. These are NOT system level ids.

Objects on the CINX Platform that can be auto-numbered for contractors are:

API calls for obtaining the next number for an object are provided and documented. Please note, that a number will only be provided if the company has activated the auto-numbering feature for the object. If the feature is not activated the API will return a 406 response.

Notes on other Transaction Numbering

PUT/POST Processing

PUT and POST Processing Options

By default some PUT and POST operations will be processed asynchronously. This is due to the fact that some transactions could include a large volume of items which could require longer processing times. These calls will be noted on the API Documentation pages.

If you would like to override the asynchronous default an optional URL parameter is provided. Using synchronous=1 in the URL will switch the processing mode to be synchronous.

CINX Ids

CINX Platform Unique Ids

The CINX platform stores many Ids for different object types from different sources. For example, an item on a PO may have Ids defined by the customer, vendor, and product manufacturer.

To clearly define CINX System Ids in API responses, the CINX Ids will be positioned at the top of response for the requested object. They will in most cases be named cinx_guid.

If a response contains child JSON objects or arrays that list multiple CINX Ids, then the CINX Id will contain the name of the object being referenced.

Commerce GUIDs

CINX Commerce Relationship GUIDs

When a relationship between the two parties is created in CINX, a new document that links the two parties is created. Examples relationships include:

The relationship document allows for the storage of important parameters that are required to deliver and process transactions, submittals, and other communications. This relationship is also assigned a new CINX GUID. This new Id is therefore used by the API as a URL parameter when fetching and updating relationship data. To clearly differentiate the Commerce GUID from a GUID assigned to an individual company (org), the API uses a different naming convention.

The Commerce GUIDs in API responses and requests will be named cinx_commerce_guid.

NULL Values

Submitting NULL values

When a NULL value is submitted in a PUT or POST request, any existing value in the data field will be replaced with a NULL. Please see the CINX demo for code to strip fields with NULL values before they are submitted to the API. However, please use caution if you implement code to remove NULLs as this is the only method for deleting an existing value.

Please see the External Refs and Attributes sections below for information regarding removing values in those arrays.

External Refs

CINX External References

To assist in the exchange of data between systems, CINX supports external references for most object types.

A common use for an external reference is a system id from a non-CINX application. The API supports setting and modifying of these references using a three-field array structure:

Processing Notes

Attributes

CINX Attributes

Attributes are also used to assist in the exchange of data between systems. Similar in concept to an external reference, attributes are intended to provide API users the ability to set and retrieve values relevant to another system.

In the API, attributes are used on objects that do not have external references. An important example is a BOM-ITEM.

The API supports setting and modifying of attributes using a two-field array structure:

Processing Notes

User Auth

User Auth

API Endpoint - User Subscription/Authorization

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getSubscriptions()
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_api_token": "dfed7d88-adf8-5356-8029-fe061c93d0fe",
            "user": {
                "cinx_user_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
                "first_name": "Will",
                "middle_name": "",
                "last_name": "Stone",
                "suffix": ""
            },
            "org": {
                "cinx_org_id": "org-0001-4030",
                "name": "WTS Mechanical -DEV"
            },
            "subscription": {
                "status_code": 200,
                "status_message": "OK",
                "status_message_reason": null,
                "start_date": "2017-10-20",
                "end_date": "2025-11-19",
                "catalog_ref": "c5919ab5-68e4-580a-ae1e-9f748abfb223",
                "apps": [
                    {
                        "cinx_app_guid": "3780a6b903937022c5649f5cd391744e",
                        "cinx_app_id": "d217f7b7-ef49-5ae1-adf3-3765160725a4",
                        "name": "Integrated Price Updates",
                        "type": "INTEGRATION : IMPORT-EXPORT",
                        "data_source": "My Private Catalog"
                    }
                ]
            }
        },
        {
            "cinx_api_token": "fde79d15-0a1b-5d51-a665-7b87ed341711",
            "user": {
                "cinx_user_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
                "first_name": "Will",
                "middle_name": "",
                "last_name": "Stone",
                "suffix": ""
            },
            "org": {
                "cinx_org_id": "org-0001-4032",
                "name": "Alpine Mechanical"
            },
            "subscription": {
                "status_code": 401,
                "status_message": "Unauthorized",
                "status_message_reason": "Subscription expired on [2017-11-22]",
                "start_date": "2017-10-23",
                "end_date": "2017-11-22",
                "catalog_ref": "d4r19ab5-68e4-580a-ae1e-9f748abfb223",
                "apps": [
                    {
                        "cinx_app_guid": "308-599736-f129d818-ca871bfb90-350af7",
                        "cinx_app_id": "f5e9f665-1239-5a1e-8c01-7afda01d6e3d",
                        "name": "Autodesk Fabrication Add-In",
                        "type": "INTEGRATION : IMPORT-EXPORT",
                        "data_source": "My Private Catalog"
                    }
                ]
            }
        }
    ]
}

GET

This endpoint will be used to get the applications/subscriptions that the user is authorized to access. The response will also contain account status and CINX Ids required to make additional API calls.

Notes

URL Pattern: {api path}/{api version}/subs

URL Sample: https://api.cinx.com/2.0/subs

RESPONSE FIELDS

Field Name Description
cinx_api_token Company-specific API token value that will be used in the URL of other CINX API calls. Token is valid for the duration of a company’s CINX subscription. Tokens will be different on the two different CINX servers (Dev and Production).
user.cinx_user_guid CINX unique Id for the user.
user.first_name User's first name.
user.middle_name User's middle name.
user.last_name User's last name.
user.suffix User's name suffix.
org.cinx_org_id CINX unique Id for the company/organization.
org.name Name of the company/organization.
subscription.status_code Status code for the subscription. Potential values are 200 and 401.
subscription.status_message Message relating to the status code. Potential values are OK or Unauthorized.
subscription.status_message_reason Reason for the status code. If the account is expired the account expiration date will be provided.
subscription.start_date Start date of the company's subscription.
subscription.end_date Expiration date of the company's subscription.
subscription.catalog_ref Reference Id to the orgnaization's private catalog.
apps.cinx_app_guid System constant value that is used to identify an application within the CINX platform. If you are a software company that requires data access to a specific catalog of content, a CINX app will be created and you will be provided the cinx_app_guid so that you can query the response for instances of your app.
apps.cinx_app_id Unique value that links a subscribing CINX company/org to the application. This value will be required when making API calls to access content.
apps.name Name of the application.
apps.type CINX application type. Current CINX App types include Integration (interactions with other software systems) and Data-Source (catalog of content).
apps.data_source Name of the source of the item content that will be used to create content update files (price updates).

View

Auth Response

Working with the GET User Subscription/Auth API Response

The Subscription/Authorization API response will provide the necessary information to make subsequent API requests.

Please keep the following CINX Platform attributes in mind as you begin to work with the Subscription response:

The JSON response uses the following structure:

Each Row array of the response will correspond to an Org to which the user is a member and will contain the following components:

CINX API Token: Token that will be used in API calls to access and insert data.

User: provides basic information about the user and his/her CINX Unique Id.

Org: basic information that can be used to identify a registered CINX org.

Subscription: defines the org’s subscription status which controls access to the API.

Subscription [Apps]: an array of applications that the org currently subscribes to and can access using the API. The structure of an app object is governed by its Type. Current CINX App types include Data-Source (catalog of content) and Integration (interactions with other software systems). The contents of this array will only be used if your app needs to access content of a specific CINX Data Source in a pre-defined data format. For example, price updates for an estimating system database.

The following sections contain important information about using the API and the CINX Unique Ids that will be required for making API calls.

Does the subscription response contain a CINX API Token? A CINX API Token is required to grant programmatic access to content on the CINX Platform. The API Token will appear at the top of the response object in a field named cinx_api_token. If there is not a value in this field, then access to content will be denied. A user can contact HPH, to have the necessary account modification made to allow for the generation of the token.

Is the subscription active? API-based access to CINX will also be controlled by the org’s subscription status. You will need to verify that the subscription is active. This is done by checking the subscription object of the response.

If the subscription is active the response will have the following information:

What is the user’s CINX Unique Id? The CINX User Unique Id (GUID) will be required by some API requests. These requests will generally be ones in which new information is created or existing content is updated.

Will you need to access price updates or other item content stored in a CINX Catalog in a specific pre-defined format?

The Apps array within the Subscription object in the response will provide a list of applications to which the org has subscribed.

The cinx_app_guid is a constant value that is used to identify an application within the CINX platform. If you are a software company that requires data access to a specific catalog of content, a CINX app will be created and you will be provided the cinx_app_guid so that you can query the response for instances of your app.

The cinx_app_id is a unique value that links a subscribing CINX org to your application. This value will be required when you are making API calls to access content.

The data_source name value will define the source of the item content that will be used to create content update files (price updates). For more information about the relationship between and app and a data source, please review the CINX Applications and Data Source page.

Org/Company

Org Definition

CINX Object Definition - Organization

An Organization in CINX defines a company or grouping of individuals (residential customers) that participate or is referenced on the platform.

Dependencies and Business Rules

Supported API Services

The above list is intended to represent the API endpoints related to an Org and it core entities and references. There are many other org-related endpoint types documented on this site. For example, an Org's Vendors, Projects, and Transactions.

Get Org Details

API Endpoint - Get an Organization's Details

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "is_hidden": "0",
            "is_private": "0",
            "role_primary": "CONTRACTOR",
        }  
    ]
}

GET

This endpoint will be used to get company’s CINX organization details.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Org Users

API Enpoint – Get an Organization's List of Users

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getOrgUsers(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "id": "4a23ff84-9d61-5ab3-95c9-3870cb2727bd",
            "name": "Karl Stone",
            "last_first": "Stone, Karl",
            "email": "karlstone@cinx.com",
            "cinx_role": "Administrator"
        },
        {
            "id": "185aabe1-3487-5f59-9ad5-c577a76bd392",
            "name": "Will Stone",
            "last_first": "Stone, Will",
            "email": "willstone@cinx.com",
            "cinx_role": "Administrator"
        }
    ]
}

GET

This endpoint will be used to get a company’s list of CINX users. The response of this API call will contain the CINX Id for each user.

URL Pattern: {api path}/{api_version}/sub/{api_token}/users

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/users

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Org Locations/Addresses

API Endpoint – Get an Organization's List of Locations/Addresses

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getOrgAddresses(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "guid": "4e1877b6-b485-5be6-9544-80bd2749d5e2",
            "type": "SHIPPING",
            "desc": "Littleton Fab Shop",
            "address1": "995 Industrial Park Road",
            "address2": "Building 2",
            "address3": "Suite 3",
            "country": "USA",
            "city": "Littleton",
            "state": "NH",
            "postal_code": "03561",
            "latitude": "",
            "longitude": ""
        }
    ]
}

GET

This endpoint will be used to get a company’s list of location types and their addresses. This list will be used when creating material transactions that require delivery to a specific location.

URL Pattern: {api path}/{api_version}/sub/{api_token}/addresses

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/addresses

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Customer Types

API Endpoint – Get an Organization’s List of Customer Types

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        "Industrial",
        "Commercial",
        "Medical",
        "Residential",
        "Hospitality"
    ]
}

GET

This endpoint will be used to get a company’s list of their Customer Types. In CINX, each company can define how it would like to classify its customers.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org-refs/types/customers

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org-refs/types/customers

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Vendor Types

API Endpoint – Get an Organization’s List of Vendor Types

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        "PVF",
        "Fixtures",
        "Hardware",
        "Office Supplies",
        "Equipment"
    ]
}

GET

This endpoint will be used to get a company’s list of their Vendor Types. In CINX, each company can define how it would like to classify its vendors.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org-refs/types/vendors

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org-refs/types/vendors

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Project Types

API Endpoint – Get an Organization’s List of Project Types

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        "New Construction",
        "Tenant Fit-Up",
        "Service"
    ]
}

GET

This endpoint will be used to get a company’s list of their Project Types. In CINX, each company can define how it would like to classify its projects.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org-refs/types/projects

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org-refs/types/projects

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Dispute Reasons

API Endpoint – Get an Organization’s List of Invoice Dispute Reasons

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "guid": "a9d3277e-6417-5458-98a6-08de16fa7c1b",
            "code": "01-item",
            "name": "Item Level Issue"
        },
        {
            "guid": "75ebe888-4649-50f5-9ccb-08ee82f801c6",
            "code": "02-badterm",
            "name": "Incorrect Terms"
        }
    ]
}

GET

This endpoint will be used to get a company’s list of their Invoice Dispute Types. In CINX, each company can define the list of reasons it can use to identify a dispute on an invoice. Dispute reasons can be at the transaction level and also on individual items. The company can define a code and name for the dispute reasons.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org-refs/invoices/dispute-reasons

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org-refs/invoices/dispute-reasons

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Return Reasons

API Endpoint – Get an Organization’s List of Return Reasons

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "guid": "36502c12-9e1b-56c8-a788-323c51b17a1f",
            "code": "21-damage",
            "name": "Damaged"
        },
        {
            "guid": "57d44251-1b29-5882-bedb-ac59fdc6b90a",
            "code": "22-item",
            "name": "Wrong Product"
        }
    ]
}

GET

This endpoint will be used to get a company’s list of their Return Reasons. In CINX, each company can define the list of the reasons it will return materials. The company can define a code and name for each reason.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org-refs/returns/reasons

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org-refs/returns/reasons

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Return Actions

API Endpoint – Get an Organization’s List of Return Actions

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "guid": "f51cc612-1f47-5f74-b47a-088e2f47d207",
            "code": "41-replace",
            "name": "Replace Item"
        },
        {
            "guid": "31e27fdd-c231-5521-8536-1cb22493db74",
            "code": "42-credit",
            "name": "Credit Account"
        }
    ]
}

GET

This endpoint will be used to get a company’s list of their Return Actions. In CINX, each company can define the list of the actions it would like the vendor to use when processing the return. The company can define a code and name for each action.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org-refs/returns/actions

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org-refs/returns/actions

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Catalog

Catalog Definition

CINX Object Definition - Private Catalog

A CINX catalog is a collection of items grouped together in a CINX database structure. Catalogs may contain construction materials, sub-contract services, rental equipment, and other content necessary for the execution of a construction project or maintenance of a building.

Every CINX organization can have their own private catalog that can be accessed by the organization's users in the CINX user interface or via the API. A private catalog can be populated by copying items from a CINX public catalog (HPH) or by creating new private items. Private items will not be linked to an HPH item and therefore will have to be managed and updated by the organization.

With a CINX private catalog, an organization can:

Catalog Lines

Each organization can create its own hierarchy system used to classify and group items together. This hierarchy system is called Lines. The CINX Line system allows a company to create as many levels as needed to group their items. The highest level of lines are named the root level lines in this API documentation. Children lines are those that are linked to a higher level line. The line API responses contain line children counts, this will allow you to determine if you are at the bottom level of the hierarchy. The response will also contain a count of items that belong to that level of the hierarchy.

Catalog Manufacturers

Each private catalog line can be linked to a manufacturer. A manufacturer is the company that produces the item. If the private catalog is copied from a CINX public catalog item, then the API can report information regarding that manufacturer. Using the Manufacturer name is often a convenient way to navigate the items in a catalog. This API provides several API calls to work with manufacturer information related to the items in the organization's private catalog.

Manufacturer Price Sheet Types

In construction sub-contracting trades it is common for product manufacturers to publish price sheets. A price sheet will contain a grouping of products and their corresponding prices. Some manufacturers publish multiple price sheets. It is relatively common for a manufacturer to have separate price sheets for products that are produced for a similar base material (Wrot copper fittings) or have different price sheets for the type of end product (Ball Valves). The CINX API refers to each type or version of the manufacturer price sheets as a Price Sheet Type.

Manufacturer Price Sheets

Manufacturers will frequently issue price sheet revisions with updated prices and product offerings. These revisions will be linked to a price sheet type and will normally have a price sheet number, name, and effective date that the prices will be implemented. In this API these individual instances of a price sheet type will be refereed to as Price Sheets.

Supported API Services

Get Catalog Line Roots

API Endpoint – Get a Private Catalog's Line Root Levels

{
  "response": {},
  "rows": [{
    "cinx_guid": "268625fa-38cf-5085-9e08-89be31e395e7",
    "name": "(Unassigned)",
    "description": "All items not currently assigned to a specific LINE.",
    "image_url": "http://cdn.dev.cinx.biz/assets/org-0000-7413/image-hier-no-image.jpg",
    "has_children": false,
    "children_count": 0,
    "item_count": 8,
    "parent": {
      "cinx_guid": null,
      "name": null,
      "description": null
    }
  }]
}

GET

This endpoint will be used to get a listing of a company's private catalog root level line hierarchies.

URL Pattern: {api path}/{api_version}/sub/{api_token}/lines/roots

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/lines/roots

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Catalog Line Children

API Endpoint – Get a Private Catalog Line's Children Levels

{
  "response": {},
  "rows": [{
    "cinx_guid": "012773c1-d75c-50d8-b53d-7af936fb9311",
    "name": "Fittings - Compression",
    "description": "Fittings - Compression",
    "image_url": "https://cdn.cinx.com/assets/org-0000-0001/image-hier-no-image.jpg",
    "has_children": true,
    "children_count": 2,
    "item_count": 317,
    "parent": {
      "cinx_guid": "3cfc2cdf-c96a-5b00-a572-33d8f343f0c6",
      "name": "Copper",
      "description": ""
    }
  }]
}

GET

This endpoint will be used to get a listing of a private catalog line's children (child lines).

URL Pattern: {api path}/{api_version}/sub/{api_token}/line/{line_cinx_guid}/children

The line_cinx_guid is the CINX Id of the parent line.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/line/3cfc2cdf-c96a-5b00-a572-33d8f343f0c6/children

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Catalog Line Items

API Endpoint – Get a Private Catalog's Items for a given Line

GET

This endpoint will be used to get a listing of a private catalog's items for a given line.

URL Pattern: {api path}/{api_version}/sub/{api_token}/line/{line_cinx_guid}/items

The line_cinx_guid is the CINX Id of the parent line.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/line/3cfc2cdf-c96a-5b00-a572-33d8f343f0c6/items

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
view Defines the level of content in the response. compact, details, list-price
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 20 will be used. Integer

View

Line Item View - Compact

API Line Item Response View Definition - Compact

{
  "response": {},
  "rows": [{
    "cinx_guid": "b0f01d82-b996-11e0-b635-00137268a1bf",
    "availability_status": "A",
    "size": "1\"",
    "category": "Copper Fittings & Flanges",
    "sub_category": "Pressure Wrot-Solder",
    "hph_code": "012NI0018",
    "org_item_id": null,
    "org_system_id": null,
    "mfr_part_number": "607",
    "description": "1\" WROT CXC 90 ELBOW",
    "mfr_name": "NIBCO, Inc.",
    "mfr_list_price": 18.11,
    "price_uom": "E"
  }]
}

When requesting the items for a catalog line from the CINX API there are three view options.

The table below defines the fields output using the compact view option.

Line Item View - Details

API Line Item Response View Definition - Details

{
  "response": {},
  "rows": [{
    "cinx_guid": "b0f01d82-b996-11e0-b635-00137268a1bf",
    "availability_status": "A",
    "size": "1\"",
    "category": "Copper Fittings & Flanges",
    "sub_category": "Pressure Wrot-Solder",
    "item_ids": {
      "hph_code": "012NI0018",
      "org_item_id": null,
      "org_system_id": null,
      "mfr_part_number": "607",
      "mfr_order_number": "9055750",
      "upc": "039923312969",
      "gtin": "00039923312969"
    },
    "descriptions": {
      "org": null,
      "cinx_long": "1\" WROT CXC 90 ELBOW",
      "cinx_short": "1 WROT CXC 90 ELL",
      "mfr": null
    },
    "mfr": {
      "cinx_org_id": "org-0000-1411",
      "name": "NIBCO, Inc.",
      "name_short": "NIBCO",
      "status": "A"
    },
    "weight": {
      "weight": 0.177,
      "uom": "lb"
    },
    "image": {
      "url": "http://cdn.dev.cinx.biz/assets/org-0000-1411/5bd9c604de78090ebd153512.jpg",
      "mime_type": "image/jpg"
    },
    "spec_sheet": {
      "url": null,
      "mime_type": null
    },
    "mfr_list_price": {
      "cinx_price_sheet_guid": "3d4c7bfc-49b0-11e9-9891-00137268a1bf",
      "price": 18.11,
      "uom": "E",
      "effective_date": "2019-04-01",
      "price_sheet_number": "WROT-0419",
      "price_sheet_name": "Wrot Copper Fittings"
    },
    "org_prices": [],
    "labor_units": [{
        "cinx_guid": "1b99b258-f362-5127-a354-8a56e1593a21",
        "hph_labor_code": "L02PP11500005201",
        "source": "PHCC",
        "method": "per fitting",
        "description": "Piping/Process | Copper | 1000 Degree Alloy Braze | Elbow | 1\"",
        "joint_quantity": null,
        "base_unit": 0.57,
        "total_unit": 0.57,
        "uom": "HOUR"
      },
      {
        "cinx_guid": "f77b4ca3-1b04-55b3-89cf-a5ada9891f6a",
        "hph_labor_code": "L01FTCU032000022",
        "source": "MCAA",
        "method": "component",
        "description": "Piping Systems (Component Method) | Fittings | Copper | Pressure | Silver Solder Joint (Brazing with Flux) | 90 Elbow Long Radius | 1.0000 Dia. (in)",
        "joint_quantity": null,
        "base_unit": 0.75,
        "total_unit": 0.75,
        "uom": "HOUR"
      }
    ],
    "packaging": [{
        "type": "Master Pack",
        "upc": "039923312969",
        "gtin": "039923312969",
        "quantity": 100,
        "depth": null,
        "height": null,
        "width": null,
        "cube": null,
        "dimension_uom": null,
        "weight": null,
        "weight_uom": null
      }
    ]
  }]
}

When requesting the items for a catalog line from the CINX API there are three view options.

The table below defines the fields output using the details view option.

Line Item View - List-Price

API Line Item Response View Definition - List Price

{
  "response": {},
  "rows": [{
    "cinx_guid": "b0f01d82-b996-11e0-b635-00137268a1bf",
    "mfr_list_price": 18.11,
    "price_uom": "E",
    "effective_date": "2019-04-01",
    "price_sheet_type": "WROT COPPER",
    "price_sheet_number": "WROT-0419",
    "price_sheet_name": "Wrot Copper Fittings",
    "cinx_price_sheet_guid": "3d4c7bfc-49b0-11e9-9891-00137268a1bf"
  }]
}

When requesting the items for a catalog line from the CINX API there are three view options.

The table below defines the fields output using the list-price view option.

Get Catalog Manufacturers

API Endpoint – Get a Private Catalog's Manufacturers

{
  "response": {},
  "rows": [{
    "cinx_org_id": "org-0000-1698",
    "name": "Aegis Technologies, Inc.",
    "short_name": "Aegis",
    "logo": "http://cdn.dev.cinx.biz/assets/org-0000-1698/logo/030_0000-0000.JPG",
    "item_count": 235
  }]
}

GET

This endpoint will be used to get a listing of a company's private catalog manufacturers.

URL Pattern: {api path}/{api_version}/sub/{api_token}/mfrs

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/mfrs

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Price Sheet Types

API Endpoint – Get a Manufacturer's Price Sheet Types

{
  "response": {},
  "rows": [{
      "price_sheet_type_guid": "90f7b284-4b7b-11e1-9e73-00137268a1bf",
      "name": "Brass Fittings",
      "description": "Brass Fittings",
      "status": "A",
      "manufacturer": {
        "name": "Brass-Craft",
        "cinx_org_id": "org-0000-1074"
      }
    }
  ]
}

GET

This endpoint will be used to get a listing of a specific manufacturer's price sheet types.

URL Pattern: {api path}/{api_version}/sub/{api_token}/mfr/{mfr_cinx_org_id}/price-sheet-types

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/mfr/org-0000-1074/price-sheet-types

The mfr_cinx_org_id is the CINX Org Id for the manufacturer and can be obtained from the Get Mfrs API response.

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Price Sheets

API Endpoint – Get a Manufacturer Price Sheet Type's Price Sheets

{
  "response": {},
  "rows": [{
    "price_sheet_guid": "154dae84-2150-11e8-9eb7-00137268a1bf",
    "name": "Brass Fittings",
    "number": "0302A",
    "date_effective": "2018-03-01",
    "date_release": "",
    "date_expiration": "",
    "sequence_number": "1",
    "version": "1",
    "status": "A"
  }]
}

GET

This endpoint will be used to get a listing of price sheet instances for a given price sheet type that are used on items in the company's private catalog.

URL Pattern: {api path}/{api_version}/sub/{api_token}/mfr/price-sheet-types/{price-sheet-type-cinx-guid}/price-sheets

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/mfr/price-sheet-type/90f7b284-4b7b-11e1-9e73-00137268a1bf/price-sheets

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Catalog Items Ids

API Endpoint – Get a Private Catalog Items' Ids

{
  "response": {},
  "rows": [{
    "cinx_guid": "a9c63fa4-ec0d-50eb-ac78-f7c279a996ba",
    "hph_code": "152BC4703",
    "org_item_id": null,
    "org_system_id": null
  }]
}

GET

This endpoint will be used to get a listing of a private catalog items' product identifiers.

URL Pattern: {api path}/{api_version}/sub/{api_token}/items/ids

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/items/ids?offset=50&limit=5

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Catalog Stats

API Endpoint – Get a Private Catalog Statistics

{
  "response": {},
  "rows": [{
    "items": {
      "private": 6,
      "total": 7457
    },
    "lines": {
      "root": 5,
      "total": 996
    },
    "manufacturers": {
      "total": 19
    }
  }]
}

GET

This endpoint will be used to get a private catalog's statistics for items, lines and manufacturers.

URL Pattern: {api path}/{api_version}/sub/{api_token}/catalog/stats

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/catalog/stats

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Catalog Item

Item Definition

CINX Object Definition - Catalog Item

A CINX Catalog Item is a building material product or construction related service that is stored within a CINX catalog.

A CINX catalog is a collection of items grouped together in a CINX database structure. Catalogs may contain construction materials, sub-contract services, rental equipment, and other content necessary for the execution of a construction project or maintenance of a building.

A CINX organization will have a private catalog where items can be stored. An organization's private CINX catalog can be built from the items from CINX public catalogs including the HPH Plumbing/Mechanical database. Private items not associated with a CINX public catalog can also be inserted into an organization's private catalog. Thus, the responsibility for maintaining that item will be the organization.

Labor Units

HPH has worked with industry labor unit providers (MCAA and PHCC) to store their labor units as CINX Catalogs. HPH has also linked labor units to our HPH Plumbing/Mechanical catalog items. The CINX Get Item API can return labor units when the details view is used. Adding a labor parameter to the URL will enable the output of labor units. Labor units will be returned ONLY if the organization is authorized by the labor unit author to access them.

For more information about labor units, please review the Labor Units pages on this site.

Dependencies and Business Rules

Supported API Services

Get Item - HPH Code

API Endpoint – Get an Item using an HPH Code

The above code returns JSON structured like this:


GET

This endpoint will be used to get a catalog item’s information using the HPH Code of an item.

URL Pattern: {api path}/{api_version}/sub/{api_token}/item/hph-code/{hph_code}?view={view_option}&labor={labor_type}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/item/hph-code/012EK0018?view=details

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
view Defines the level of content in the response. compact, details
labor Defines the type of labor units returned. mcaa, phcc, all
format Defines the response format type. If not specified, json will be used. json, xml

View

Labor

Get Item - Org Id

API Endpoint – Get an Item using an Org Item Id

The above code returns JSON structured like this:


GET

This endpoint will be used to get a catalog item’s information using the organization's item id.

URL Pattern: {api path}/{api_version}/sub/{api_token}/item/org-id/{org_item_id}?view={view_option}&labor={labor_type}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/item/org-id/C90114?view=details

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
view Defines the level of content in the response. compact, details
labor Defines the type of labor units returned. mcaa, phcc, all
format Defines the response format type. If not specified, json will be used. json, xml

View

Labor

Get Item - CINX Id

API Endpoint – Get an Item using the CINX Id

The above code returns JSON structured like this:


GET

This endpoint will be used to get a catalog item’s information using the item's CINX Id.

URL Pattern: {api path}/{api_version}/sub/{api_token}/item/guid/{cinx_guid}?view={view_option}&labor={labor_type}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/item/guid/b023b15c-b996-11e0-b635-00137268a1bf?view=details

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
view Defines the level of content in the response. compact, details
labor Defines the type of labor units returned. mcaa, phcc, all
format Defines the response format type. If not specified, json will be used. json, xml

View

Labor

Item View - Compact

API Item Response View Definition - Compact

{
  "response": {},
  "rows": [{
    "cinx_guid": "b0f01d82-b996-11e0-b635-00137268a1bf",
    "availability_status": "A",
    "size": "1\"",
    "category": "Copper Fittings & Flanges",
    "sub_category": "Pressure Wrot-Solder",
    "hph_code": "012NI0018",
    "org_item_id": null,
    "org_system_id": null,
    "mfr_part_number": "607",
    "description": "1\" WROT CXC 90 ELBOW",
    "mfr_name": "NIBCO, Inc.",
    "mfr_list_price": 18.11,
    "price_uom": "E"
  }]
}

When requesting a catalog from the CINX API there are two view options.

The table below defines the fields output using the compact view option.

Item View - Details

API Item Response View Definition - Details

{
  "response": {},
  "rows": [{
    "cinx_guid": "b0f01d82-b996-11e0-b635-00137268a1bf",
    "availability_status": "A",
    "size": "1\"",
    "category": "Copper Fittings & Flanges",
    "sub_category": "Pressure Wrot-Solder",
    "item_ids": {
      "hph_code": "012NI0018",
      "org_item_id": null,
      "org_system_id": null,
      "mfr_part_number": "607",
      "mfr_order_number": "9055750",
      "upc": "039923312969",
      "gtin": "00039923312969"
    },
    "descriptions": {
      "org": null,
      "cinx_long": "1\" WROT CXC 90 ELBOW",
      "cinx_short": "1 WROT CXC 90 ELL",
      "mfr": null
    },
    "mfr": {
      "cinx_org_id": "org-0000-1411",
      "name": "NIBCO, Inc.",
      "name_short": "NIBCO",
      "status": "A"
    },
    "weight": {
      "weight": 0.177,
      "uom": "lb"
    },
    "image": {
      "url": "http://cdn.dev.cinx.biz/assets/org-0000-1411/5bd9c604de78090ebd153512.jpg",
      "mime_type": "image/jpg"
    },
    "spec_sheet": {
      "url": null,
      "mime_type": null
    },
    "mfr_list_price": {
      "cinx_price_sheet_guid": "3d4c7bfc-49b0-11e9-9891-00137268a1bf",
      "price": 18.11,
      "uom": "E",
      "effective_date": "2019-04-01",
      "price_sheet_number": "WROT-0419",
      "price_sheet_name": "Wrot Copper Fittings"
    },
    "org_prices": [],
    "labor_units": [{
        "cinx_guid": "1b99b258-f362-5127-a354-8a56e1593a21",
        "hph_labor_code": "L02PP11500005201",
        "source": "PHCC",
        "method": "per fitting",
        "description": "Piping/Process | Copper | 1000 Degree Alloy Braze | Elbow | 1\"",
        "joint_quantity": null,
        "base_unit": 0.57,
        "total_unit": 0.57,
        "uom": "HOUR"
      },
      {
        "cinx_guid": "f77b4ca3-1b04-55b3-89cf-a5ada9891f6a",
        "hph_labor_code": "L01FTCU032000022",
        "source": "MCAA",
        "method": "component",
        "description": "Piping Systems (Component Method) | Fittings | Copper | Pressure | Silver Solder Joint (Brazing with Flux) | 90 Elbow Long Radius | 1.0000 Dia. (in)",
        "joint_quantity": null,
        "base_unit": 0.75,
        "total_unit": 0.75,
        "uom": "HOUR"
      }
    ],
    "packaging": [{
        "type": "Master Pack",
        "upc": "039923312969",
        "gtin": "039923312969",
        "quantity": 100,
        "depth": null,
        "height": null,
        "width": null,
        "cube": null,
        "dimension_uom": null,
        "weight": null,
        "weight_uom": null
      }
    ]
  }]
}

When requesting a catalog from the CINX API there are two view options.

The table below defines the fields output using the details view option.

Get Item Template

API Endpoint - Get a Catalog Item Template

{
  "doc_info": {},
  "template": {
    "cinx_guid": null,
    "availability_status": null,
    "size": null,
    "description": null,
    "mfr_name": null,
    "cinx_material_cost_code_guid": null,
    "product_ids": {
      "org_item_id": null,
      "org_system_id": null,
      "mfr_part_number": null,
      "mfr_order_number": null,
      "upc": null,
      "gtin": null
    },
    "cinx_catalog_parent": {
      "cinx_guid": null,
      "hph_code": null
    },
    "weight": {
      "value": null,
      "uom": null
    },
    "lines": [{
      "cinx_guid": null
    }],
    "org_prices": [{
      "type": null,
      "price": null,
      "uom": null
    }],
    "packaging": [{
      "type": null,
      "upc": null,
      "gtin": null,
      "quantity": null,
      "depth": null,
      "height": null,
      "width": null,
      "cube": null,
      "dimension_uom": null,
      "weight": null,
      "weight_uom": null
    }],
    "attributes": [{
      "name": null,
      "value": null
    }]
  },
  "field_options": {},
  "api_calls": []
}

GET

This endpoint will be used to get a CINX Template for a catalog item.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/item

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/item

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Dflt Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
availability_status String Yes (Non-HPH Item) A Manufacturer availability status of the item. Template has a list of optional values.
size String No Size or rating of the item.
description String Yes (Non-HPH Item) Organization-defined description for the item.
mfr_name String Yes (Non-HPH Item) Name of the item's manufacturer.
cinx_material_cost_code_guid String (GUID Format) No Default CINX Id for the Material Cost Code assigned to the item.
product_ids.org_item_id String No The organization's Item Id for the item . User-friendly code.
product_ids.org_system_id String No The organization's System Item Id for the item. Unique Id code.
product_ids.mfr_part_number String No Manufacturer-defined Part/Catalog Number for the item.
product_ids.mfr_order_number String No Manufacturer-defined Order Number for the item.
product_ids.upc String No Manufacturer-defined UPC Number for the item.
product_ids.gtin String No Manufacturer-defined GTIN for the item.
cinx_catalog_parent.cinx_guid String (GUID Format) No CINX System Id if the organization's item is linked to a public catalog (HPH) item.
cinx_catalog_parent.hph_code String No HPH Item Code if the organization's item is linked to a public catalog (HPH) item.
weight.value Real No Weight of the item.
weight.uom String No Measurement type in which the weight value is expressed.
line.cinx_guid String (GUID Format) No CINX System Id of the Line to which an item is linked.
org_prices.type String Yes Type of item price. Template has a list of optional values.
org_prices.price Real Yes 0 Unit price of the item.
org_prices.uom String Yes (Non-HPH Item) E Price unit-of-measure. Template has a list of optional values.
packaging.type String No Description of the type of packaging unit. Template has a list of optional values.
packaging.upc String No Manufacturer-defined UPC Number for the item package.
packaging.gtin String No Manufacturer-defined GTIN for the item package.
packaging.quantity Real No Number of items in the package.
packaging.depth Real No Depth of the item package.
packaging.height Real No Height of the item package.
packaging.width Real No Width of the item package.
packaging.cube Real No Cube of the item package.
packaging.dimension_uom String No Measurement type in which the dimension values are expressed.
packaging.weight Real No Weight of the item's package.
packaging.weight_uom String No Measurement type in which the weight value is expressed.
attributes.name String No Name of the attribute.
attributes.value String No Value of the attribute.

Create Item

API Endpoint - Create a New Catalog Item

POST

This endpoint will be used to insert a new item into the organization's private CINX catalog.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-item-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload. json
synchronous Switch to have the payload processed synchronously. 1

Modify Item

API Endpoint - Modify a CINX Catalog Item

PUT

This endpoint will be used to modify an organization's private catalog item.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-item-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-item-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload. json

Catalog Item Prices

Catalog Item Prices

CINX Catalog Item Prices Discussion

This section of the site describes endpoints relating to different price types that can be associated with a catalog item. There are four different types of prices that can be linked to a catalog item. Each price type is defined below.

List Price

Base price for a product that is normally set by the product's manufacturer. The List price is similar in concept to a car's MSRP price. For items in the HPH Plumbing/Mechanical catalog, HPH continuously updates the manufacturer list price as revisions are issued by the manufacturer. Each List price also has the Name and Number of the Manufacturer Price Sheet from which the price was obtained as well as the price's effective date. The Effective Date is the published date upon which the manufacturer implemented the new price.

Buy Price

Price paid to a vendor for the purchase of a product or service. The Buy Price is often a discounted price from a previously established base price - which is commonly referred to as a List Price or a MSRP. Each catalog item in an organization's private catalog can have a Buy Price.

CINX also tracks buy prices that are used on transactions with vendors. Prices from Purchase Orders, Quotes, and Invoices are archived to allow for use by the organization when creating new transactions or performing analytics.

Sell Price

Price charged to a customer for a product or service. A Sell Price is normally related to a Buy Price or an established base price. Each catalog item in an organization's private catalog can have a Sell Price.

Estimate Price

Price for a product or service used in the estimating/bidding phase of a project. An Estimate Price is normally related to a Buy Price or an established base price. Each catalog item in an organization's private catalog can have a Estimate price.

Supported API Services

Get List Prices - HPH Code

API Endpoint – Get an Item's List Prices using an HPH Code

The above code returns JSON structured like this:

{
  "response": {},
  "rows": [{
      "cinx_guid": "04b7673a-eb84-11e0-8ba1-00137268a1bf",
      "current_price": false,
      "mfr_list_price": 22,
      "price_uom": "E",
      "effective_date": "2011-07-22",
      "price_sheet_type": "Wrot Solder Joint Fittings",
      "price_sheet_number": "W-162",
      "price_sheet_name": "Wrot Solder Joint Fittings",
      "cinx_price_sheet_guid": "773549d8-b995-11e0-b635-00137268a1bf"
    }]
}

GET

This endpoint will be used to get a catalog item’s manufacturer list prices using the HPH Item Code of the item.

URL Pattern: {api path}/{api_version}/sub/{api_token}/item/hph-code/{hph_code}/list-prices

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/item/hph-code/012EK0018/list-prices

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
which Defines how many list prices are returned. The all option is the default. current, all
format Defines the response format type. If not specified, json will be used. json, xml

Which Parameter Option Definitions

Get List Prices - CINX Id

API Endpoint – Get an Item's List Prices using the CINX Id

The above code returns JSON structured like this:

{
  "response": {},
  "rows": [{
      "cinx_guid": "04b7673a-eb84-11e0-8ba1-00137268a1bf",
      "current_price": false,
      "mfr_list_price": 22,
      "price_uom": "E",
      "effective_date": "2011-07-22",
      "price_sheet_type": "Wrot Solder Joint Fittings",
      "price_sheet_number": "W-162",
      "price_sheet_name": "Wrot Solder Joint Fittings",
      "cinx_price_sheet_guid": "773549d8-b995-11e0-b635-00137268a1bf"
    }]
}

GET

This endpoint will be used to get a catalog item’s manufacturer list prices using the CINX Id of the item.

URL Pattern: {api path}/{api_version}/sub/{api_token}/item/guid/{cinx_guid}/list-prices

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/item/guid/b023b15c-b996-11e0-b635-00137268a1bf/list-prices

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
which Defines how many list prices are returned. The all option is the default. current, all
format Defines the response format type. If not specified, json will be used. json, xml

Which Parameter Option Definitions

Get Price History - HPH Code

API Endpoint – Get an Item's Transaction Buy Price History using an HPH Code

GET

This endpoint will be used to get a catalog item’s buy price history using the HPH Item Code of the item. The response will contain a listing of the prices used on transactions.

URL Pattern: {api path}/{api_version}/sub/{api_token}/analytics/item/hph-code/{hph_code}/price-history

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/analytics/item/hph-code/012EK0018/price-history

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
source Limits the prices to a specific transaction type. po, poco, quote, invoice
project Limits the prices to a specific project. {cinx_project_guid}
vendor Limits the prices to a specific vendor. {cinx_commerce_guid}
include Indicator if the same product from a different manufacturer should be included. xrefs
view Defines the content contained in the response. Summary is the default. summary, list
format Defines the response format type. If not specified, json will be used. json, xml

View Parameter Option Definitions

Get Price History - Org Id

API Endpoint – Get an Item's Transaction Buy Price History using an Org Item Id

GET

This endpoint will be used to get a catalog item’s buy price history using the Org Id of the item. The response will contain a listing of the prices used on transactions.

URL Pattern: {api path}/{api_version}/sub/{api_token}/analytics/item/org-id/{org_item_id}/price-history

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/analytics/item/org-id/C90114/price-history

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
source Limits the prices to a specific transaction type. po, poco, quote, invoice
project Limits the prices to a specific project. {cinx_project_guid}
vendor Limits the prices to a specific vendor. {cinx_commerce_guid}
include Indicator if the same product from a different manufacturer should be included. xrefs
view Defines the content contained in the response. Summary is the default. summary, list
format Defines the response format type. If not specified, json will be used. json, xml

View Parameter Option Definitions

Get Price History - CINX Id

API Endpoint – Get an Item's Transaction Buy Price History using a CINX Id

GET

This endpoint will be used to get a catalog item’s buy price history using the CINX Id of the item. The response will contain a listing of the prices used on transactions.

URL Pattern: {api path}/{api_version}/sub/{api_token}/analytics/item/guid/{cinx_guid}/price-history

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/analytics/item/guid/b023b15c-b996-11e0-b635-00137268a1bf/price-history

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
source Limits the prices to a specific transaction type. po, poco, quote, invoice
project Limits the prices to a specific project. {cinx_project_guid}
vendor Limits the prices to a specific vendor. {cinx_commerce_guid}
include Indicator if the same product from a different manufacturer should be included. xrefs
view Defines the content contained in the response. Summary is the default. summary, list
format Defines the response format type. If not specified, json will be used. json, xml

View Parameter Option Definitions

Item Price History View - Summary

API Item Price History Response View Definition - Summary

{
  "response": {},
  "rows": [{
    "include_xrefs": false,
    "counts": {
      "total": 2,
      "primary": 2,
      "xrefs": 0
    },
    "dates": {
      "first": "2019-08-29",
      "last": "2019-09-04"
    },
    "average": {
      "price": 13.18,
      "currency": "USD"
    },
    "low": {
      "item": {
        "is_xref": false,
        "cinx_guid": "b023b15c-b996-11e0-b635-00137268a1bf",
        "hph_code": "012EK0018",
        "org_item_id": null,
        "org_system_id": null,
        "description": "1\" WROT CXC 90 ELBOW",
        "manufacturer": {
          "cinx_org_id": "org-0000-1179",
          "name": "Elkhart Products Corporation"
        }
      },
      "price": 8.25,
      "price_uom": "E",
      "currency": "USD",
      "quantity": 100,
      "date": "2019-08-29",
      "bom": {
        "cinx_guid": "df8a088c-1fd6-5b8f-99f3-ba6d38d8cd82",
        "type": "BOM-PO",
        "number": "",
        "name": "PO-000006",
        "cinx_bom_item_guid": "9cf3ec4f-c162-5262-bb7e-f3bcbec8550d"
      },
      "project": {
        "cinx_guid": "0929772a-fbaf-59ae-bf9b-0a5275f4a847",
        "number": "PRJ-2019-10",
        "name": "PRJ-2019-10"
      },
      "vendor": {
        "cinx_commerce_guid": "9a13fcca-e6ae-524f-95dd-0f4d7d26930f",
        "number": "99999",
        "name": "Keegan Supply"
      }
    },
    "high": {
      "item": {
        "is_xref": false,
        "cinx_guid": "b023b15c-b996-11e0-b635-00137268a1bf",
        "hph_code": "012EK0018",
        "org_item_id": null,
        "org_system_id": null,
        "description": "1\" WROT CXC 90 ELBOW",
        "manufacturer": {
          "cinx_org_id": "org-0000-1179",
          "name": "Elkhart Products Corporation"
        }
      },
      "price": 18.11,
      "price_uom": "E",
      "currency": "USD",
      "quantity": 15,
      "date": "2019-09-04",
      "bom": {
        "cinx_guid": "d15c0678-f8dc-5a03-a9b9-c7a303cd9837",
        "type": "BOM-PO",
        "number": "PO-000007",
        "name": "PO-000007",
        "cinx_bom_item_guid": "a0532c2c-adf3-5190-8aaf-4be57bf3928a"
      },
      "project": {
        "cinx_guid": null,
        "number": null,
        "name": null
      },
      "vendor": {
        "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
        "number": "V101",
        "name": "Hilti-6"
      }
    },
    "last": {
      "item": {
        "is_xref": false,
        "cinx_guid": "b023b15c-b996-11e0-b635-00137268a1bf",
        "hph_code": "012EK0018",
        "org_item_id": null,
        "org_system_id": null,
        "description": "1\" WROT CXC 90 ELBOW",
        "manufacturer": {
          "cinx_org_id": "org-0000-1179",
          "name": "Elkhart Products Corporation"
        }
      },
      "price": 18.11,
      "price_uom": "E",
      "currency": "USD",
      "quantity": 15,
      "date": "2019-09-04",
      "bom": {
        "cinx_guid": "d15c0678-f8dc-5a03-a9b9-c7a303cd9837",
        "type": "BOM-PO",
        "number": "PO-000007",
        "name": "PO-000007",
        "cinx_bom_item_guid": "a0532c2c-adf3-5190-8aaf-4be57bf3928a"
      },
      "project": {
        "cinx_guid": null,
        "number": null,
        "name": null
      },
      "vendor": {
        "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
        "number": "V101",
        "name": "Hilti-6"
      }
    }
  }]
}

When requesting an item's price history from the CINX API there are two view options.

The table below defines the fields output using the summary view option.

Item Price History View - List

API Item Price History Response View Definition - List

{
  "response": { },
  "rows": [{
    "include_xrefs": false,
    "counts": {
      "total": 2,
      "primary": 2,
      "xrefs": 0
    },
    "dates": {
      "first": "2019-08-29",
      "last": "2019-09-04"
    },
    "average": {
      "price": 13.18,
      "currency": "USD"
    },
    "prices": [{
        "cinx_item_guid": "b023b15c-b996-11e0-b635-00137268a1bf",
        "hph_code": "012EK0018",
        "org_item_id": null,
        "org_system_id": null,
        "description": "1\" WROT CXC 90 ELBOW",
        "mfr_name": "Elkhart Products Corporation",
        "price": 8.25,
        "uom": "E",
        "currency": "USD",
        "quantity": 100,
        "date": "2019-08-29",
        "bom_cinx_guid": "BOM-PO",
        "bom_type": "BOM-PO",
        "bom_number": "",
        "bom_name": "PO-000006",
        "vendor_number": "99999",
        "vendor_name": "Keegan Supply",
        "project_number": "PRJ-2019-10",
        "project_name": "PRJ-2019-10",
        "is_xref": false,
        "is_low_price": true,
        "is_high_price": true,
        "is_first_date": true,
        "is_last_date": true
      },
      {
        "cinx_item_guid": "b023b15c-b996-11e0-b635-00137268a1bf",
        "hph_code": "012EK0018",
        "org_item_id": null,
        "org_system_id": null,
        "description": "1\" WROT CXC 90 ELBOW",
        "mfr_name": "Elkhart Products Corporation",
        "price": 18.11,
        "uom": "E",
        "currency": "USD",
        "quantity": 15,
        "date": "2019-09-04",
        "bom_cinx_guid": "BOM-PO",
        "bom_type": "BOM-PO",
        "bom_number": "PO-000007",
        "bom_name": "PO-000007",
        "vendor_number": "V101",
        "vendor_name": "Hilti-6",
        "project_number": null,
        "project_name": null,
        "is_xref": false,
        "is_low_price": false,
        "is_high_price": true,
        "is_first_date": false,
        "is_last_date": true
      }
    ]
  }]
}

When requesting an item's price history from the CINX API there are two view options.

The table below defines the fields output using the list view option.

Catalog/App Updates - Prices

Update Intro

CINX Catalog/Application Update Introduction - Price Update Service

CINX allows a company to define their own catalog of material content. This Private Catalog can contain items from the Harrison Plumbing/Mechanical database, vendor catalogs that are hosted on CINX, and items created and maintained by the company. In addition, a company can have access to CINX software partner catalogs. For example, databases used by industry estimating systems are available as CINX catalogs.

As part of CINX’s integration services, a company can request catalog updates formatted for industry software or develop a customized format. The company can have unlimited subscriptions to CINX Import-Export Applications.

Each subscription will define the catalog of items and the output format. This subscription has an app_id that will be required to create API requests. This Id can be obtained from the CINX Subscriptions/Authorizations response.

File Format

As noted above, CINX can produce update files according to the specifications of leading industry software systems. Custom formats are also supported.

In addition to specifying the catalog and format, a subscription has additional settings that are used to manage the update process. Examples include a schedule for when updates are produced, who is notified when updates are ready, and what prices types (sources) to include in the updates.

Schedule

CINX has the ability to define when catalog updates are processed for subscriptions based on a Private CINX catalog. Schedule options include:

Notifications

When a catalog update is posted, CINX checks the subscription settings and notifies the defined users. Notification types include:

Price Types/Sources

CINX has the ability to include four price types in a catalog update file.

Catalog Update File Types

Each CINX catalog update file has field that defines its Type. Catalog update types are:

Catalog Update File Consumption Status Types

Each CINX catalog update file has field that defines its Status. When an API call is made to retrieve catalog updates a Status filter can be submitted. Catalog update status filters are:

Apply Update Files in Chronological Order

Catalog Update files of type=Update should always be processed in chronological order starting with the earliest date.

CINX UI – Catalog Updates

The CINX UI provides extensive capabilities to manage the catalog updates. Admin settings can be defined that will allow for the creation of update files that can be accessed via the API. Custom update files can be requested. Updates can be downloaded and a history of activity can be viewed.

Supported API Services

Get Update List

API Endpoint – Get a List of Catalog Updates

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '');

cinxApi.getCatalogUpdates(application_guid, update_type)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
  "response": {},
  "rows": [{
    "cinx_guid": "7b13257e-25ff-3a03-5d7d-9f4dbe30e091",
    "title": "QuoteExpress Mechanical Legacy FULL 08/13/2019",
    "type": "FULL",
    "published": "2019-08-13 21:12:35",
    "range_start": "2001-01-01",
    "range_end": "2019-08-13",
    "documents": [{
        "type": "DATA-FILE",
        "format": "upd",
        "formatter": "generic",
        "size": 80954160
      },
      {
        "type": "BULLETIN",
        "format": "xls",
        "formatter": "excel_bulletin",
        "size": 184320
      },
      {
        "type": "BULLETIN",
        "format": "js",
        "formatter": "json_bulletin",
        "size": 197514
      }
    ],
    "consumed": "Yes",
    "downloads": [{
      "downloaded": "2019-09-23",
      "applied": "2019-09-23",
      "user": "Will Stone",
      "meta": {},
      "reports": []
    }]
  }]
}

GET

This endpoint will be used to retrieve catalog updates for a given subscription.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/price-updates

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/2494df92-e855-5563-826c-05907f9cca22/price-updates?status=all

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
status Limits results based on the consumption status. NEW, APPLIED, ALL
type Limits results based on type of update file. UPDATE, FULL, CUSTOM
after Limits results to files published after the submitted date. YYYY-MM-DD
format Defines the response format type. If not specified, json will be used. json, xml

Notes

Download Update

API Endpoint – Download a Catalog/App Update File

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '');

cinxApi.getCatalogUpdateFile(application_guid, update_guid)
    .then(function(response) {
        console.log(response);
    });

GET

This endpoint will be used to download a catalog update file.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/price-update/{update_guid}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/2494df92-e855-5563-826c-05907f9cca22/price-update/7b13257e-25ff-3a03-5d7d-9f4dbe30e091

Notes

Download Bulletin

API Endpoint – Download a Catalog/App Update Bulletin File ONLY

GET

This will stream back the update bulletin file in the requested format.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/price-update/{update_guid}/bulletin

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/2494df92-e855-5563-826c-05907f9cca22/price-update/7b13257e-25ff-3a03-5d7d-9f4dbe30e091/bulletin?type=xls

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
type Defines the file type to be returned. XLS, JS

Notes

Mark Update Applied

API Endpoint – Mark Catalog/App Price Update File As Applied

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '');

var values = `{"applied_date":"2019-06-21", "download_date":"2019-06-21"}`;

cinxApi.setCatalogUpdateFileApplied(application_guid, file_guid, values)
    .then(function(response) {
        console.log(response);
    });

PUT

This will mark the update as Applied and it will no longer show up in the New update list.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/price-update/{update_guid}/apply

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/2494df92-e855-5563-826c-05907f9cca22/price-update/7b13257e-25ff-3a03-5d7d-9f4dbe30e091/apply

Catalog/App Updates - Labor

Update Intro

CINX Catalog/Application Update Introduction - Labor Unit Update Service

CINX allows a company to define their own catalog of material content. This Private Catalog can contain items from the Harrison Plumbing/Mechanical database, vendor catalogs that are hosted on CINX, and items created and maintained by the company. The items in a private catalog can also be linked to labor units.

In construction, a labor unit is the estimated time it takes to install an item under good working conditions.

In the Plumbing/Mechanical industry there are two primary sources of labor unit standards. They are both contractor industry trade organizations:

Each organization has two two choices or methods for laboring common Pipe, Valves, and Fittings.

HPH has license agreements with both of these trade organizations which allow us to store their labor units as CINX catalogs and provide API services to access their content.

The CINX API has two different labor unit update options:

File Format

By default CINX offers to standard file format options: JSON and CSV. Custom formats can also be developed.

The contents of the files are based on the HPH Item Code. Therefore, if an item in the private catalog has multiple labor units their will be multiple rows/entries of the HPH Item Code in the file.

Labor Update File Types

Each CINX catalog labor update file has field that defines its Type. Catalog labor update types are:

Notifications

When a labor update is posted, CINX checks the subscription settings and notifies the defined users. Notification types include:

Catalog Update File Consumption Status Types

Each CINX catalog labor update file has field that defines its Status. When an API call is made to retrieve catalog labor updates a Status filter can be submitted. Catalog update status filters are:

NOTES

Supported API Services

Get Labor Update List

API Endpoint – Get a List of Catalog Labor Unit Updates

The above code returns JSON structured like this:

{
  "response": {},
  "rows": [{
    "cinx_guid": "1c0c6c28-ebe5-5423-b3be-c86d8640f24d",
    "title": "Integrated Labor Updates",
    "type": "FULL",
    "published": "2020-06-01 19:00:09",
    "range_start": "2000-01-01",
    "range_end": "2020-06-02",
    "documents": [{
        "type": "DATA-FILE",
        "format": "zip",
        "size": 101205
      },
      {
        "type": "BULLETIN",
        "format": "xls",
        "size": 20480
      },
      {
        "type": "BULLETIN",
        "format": "json",
        "size": 18018
      }
    ],
    "consumed": "No",
    "downloads": []
  }]
}

GET

This endpoint will be used to retrieve catalog labor updates for a given subscription.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/labor-updates

The app_id is the cinx_app_id value for the Integrated Labor Updates Import-Export app found in the API's subscription response.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/c5919ab5-68e4-580a-ae1e-9f748abfb223/labor-updates?status=all

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
status Limits results based on the consumption status. NEW, APPLIED, ALL
type Limits results based on type of update file. UPDATE, FULL, CUSTOM
after Limits results to files published after the submitted date. YYYY-MM-DD
format Defines the response format type. If not specified, json will be used. json, xml

Notes

Download Labor Update

API Endpoint – Download a Catalog/App Labor Update File

GET

This endpoint will be used to download a catalog update file.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/price-update/{update_guid}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/2494df92-e855-5563-826c-05907f9cca22/price-update/7b13257e-25ff-3a03-5d7d-9f4dbe30e091

Notes

Mark Labor Update Applied

API Endpoint – Mark Catalog/App Labor Update File As Applied

PUT

This will mark the labor update as Applied and it will no longer show up in the New update list.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/labor-update/{update_guid}/apply

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/2494df92-e855-5563-826c-05907f9cca22/price-update/7b13257e-25ff-3a03-5d7d-9f4dbe30e091/apply

Labor Units

Labor Units Intro

CINX Introduction to Industry Labor Units

In construction, a labor unit is the estimated time it takes to install an item under good working conditions.

In the Plumbing/Mechanical industry there are two primary sources of labor unit standards. They are both contractor industry trade organizations:

Each organization has two two choices or methods for laboring common Pipe, Valves, and Fittings.

HPH has license agreements with both of these trade organizations which allow us to store their labor units as CINX catalogs and provide API services to access their content. Every labor unit has been assigned a unique HPH Labor Code. The code can stored in local database and used in API calls to access the actual labor unit values.

The CINX API has two different labor unit update options:

NOTES

Supported API Services

Get Labor - HPH Code

API Endpoint – Get a Labor Unit using an HPH Labor Code

The above code returns JSON structured like this:

{
  "response": {},
  "rows": [{
    "cinx_guid": "e3944e24-5fa5-5880-b140-2e0cbf3d5a6c",
    "hph_labor_code": "L01FTCU030000025",
    "source_unit_id": "533501",
    "source": "MCAA",
    "source_logo": "http://cdn.dev.cinx.biz/assets/apps/app-v2-mcaa.png",
    "method": "component",
    "description": "Piping Systems (Component Method) | Fittings | Copper | Pressure | 95/5 Solder | 90 Elbow Long Radius | 1.0000 Dia. (in)",
    "joint_quantity": null,
    "base_unit": 0.63,
    "total_unit": 0.63,
    "uom": "HOUR",
    "date_effective": "2008-03-01"
  }]
}

GET

This endpoint will be used to get a labor unit’s information using the HPH Labor Code.

URL Pattern: {api path}/{api_version}/sub/{api_token}/labor/hph/{hph_labor_code}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/labor/hph/L01FTCU030000025

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Labor - Source Id

API Endpoint – Get a Labor Unit using the Source's (Trade Organization) Unit Id

The above code returns JSON structured like this:

{
  "response": {},
  "rows": [{
    "cinx_guid": "e3944e24-5fa5-5880-b140-2e0cbf3d5a6c",
    "hph_labor_code": "L01FTCU030000025",
    "source_unit_id": "533501",
    "source": "MCAA",
    "source_logo": "http://cdn.dev.cinx.biz/assets/apps/app-v2-mcaa.png",
    "method": "component",
    "description": "Piping Systems (Component Method) | Fittings | Copper | Pressure | 95/5 Solder | 90 Elbow Long Radius | 1.0000 Dia. (in)",
    "joint_quantity": null,
    "base_unit": 0.63,
    "total_unit": 0.63,
    "uom": "HOUR",
    "date_effective": "2008-03-01"
  }]
}

GET

This endpoint will be used to get a labor unit’s information using the source's (trade organization) Id for the unit.

URL Pattern: {api path}/{api_version}/sub/{api_token}/labor/{labor_source}/{labor_source_unit_id}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/labor/mcaa/533501

LABOR SOURCE URL COMPONENT OPTIONS

Parameter Name Description Value Type or Options
labor_source Defines the labor unit organization. mcaa, phcc
format Defines the response format type. If not specified, json will be used. json, xml

Get Item Labor - HPH Item Code

API Endpoint – Get an Item's Labor Units using an HPH Item Code

The above code returns JSON structured like this:

{
  "response": {},
  "rows": [{
    "cinx_guid": "edc36af3-0c18-5f43-88d8-912525226084",
    "availability_status": "A",
    "size": "1\"",
    "category": "Copper Fittings",
    "sub_category": "Pressure Wrot-Solder",
    "item_ids": {},
    "descriptions": {},
    "mfr": {},
    "weight": {},
    "material_cost_code": {},
    "image": {},
    "spec_sheet": {},
    "mfr_list_price": {},
    "org_prices": [],
    "labor_units": [{
        "cinx_guid": "1b99b258-f362-5127-a354-8a56e1593a21",
        "hph_labor_code": "L02PP11500005201",
        "source_unit_id": "3.9.50.220.3.2054",
        "source": "PHCC",
        "method": "per fitting",
        "description": "Piping/Process | Copper | 1000 Degree Alloy Braze | Elbow | 1\"",
        "joint_quantity": null,
        "base_unit": 0.57,
        "total_unit": 0.57,
        "uom": "HOUR",
        "date_effective": "2012-02-13"
      },
      {
        "cinx_guid": "9d79c10d-4cc9-5a7c-9d59-85268928184d",
        "hph_labor_code": "L02PP21400009539",
        "source_unit_id": "3.9.50.221.3.2054",
        "source": "PHCC",
        "method": "per joint",
        "description": "Piping/Process (Per Joint Method) | Copper | 1000 Degree Alloy Braze | Joint | 1\"",
        "joint_quantity": 3,
        "base_unit": 0.28,
        "total_unit": 0.8400000000000001,
        "uom": "HOUR",
        "date_effective": "2012-02-13"
      }
    ]
  }]
}

GET

This endpoint will be used to get a catalog item’s labor units and descriptive information using the HPH Item Code of an item. The API response contains a labor units array to allow for the inclusion of all available labor units assigned to the item given the org's authorizations in CINX.

URL Pattern: {api path}/{api_version}/sub/{api_token}/item/hph-code/{hph_code}?view=details&labor={labor_type}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/item/hph-code/012EK0018?view=details&labor=all

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
view Defines which API response format will be returned. details
labor Defines which organization's units are to be returned. mcaa, phcc, all
format Defines the response format type. If not specified, json will be used. json, xml

Get Labor Update List

API Endpoint – Get a List of Labor Updates

The above code returns JSON structured like this:

{
  "response": {},
  "rows": [{
    "cinx_guid": "13e33a1f-6363-541d-b7f7-8bd23ce7a301",
    "title": "MCAA Labor",
    "type": "FULL",
    "published": "2020-05-20 15:37:16",
    "range_start": "2000-01-01",
    "range_end": "2020-05-21",
    "documents": [{
      "type": "DATA-FILE",
      "format": "zip",
      "size": 5850414
    }],
    "consumed": "Yes",
    "downloads": [{
        "downloaded": "2020-05-21",
        "applied": "2020-05-21",
        "user": "Will Stone"
      },
      {
        "downloaded": "2020-05-21",
        "applied": "2020-05-21",
        "user": "Will Stone"
      }
    ]
  }]
}

GET

This endpoint will be used to retrieve labor updates for a given labor unit catalog.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/labor-updates

The app_id is the cinx_app_id value for the desired labor unit source found in the API's subscription response.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/3df33ce2-a5f5-5c39-8da1-0a969c23f444/labor-updates

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
status Limits results based on the consumption status. NEW, APPLIED, ALL
type Limits results based on type of update file. UPDATE, FULL
after Limits results to files published after the submitted date. YYYY-MM-DD
format Defines the response format type. If not specified, json will be used. json, xml

Notes

Download Labor Update

API Endpoint – Download a Labor Update File

GET

This endpoint will be used to download a labor unit update file.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/labor-update/{update_guid}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/3df33ce2-a5f5-5c39-8da1-0a969c23f444/labor-update/13e33a1f-6363-541d-b7f7-8bd23ce7a301

Notes

Mark Labor Update Applied

API Endpoint – Mark Labor Unit Update File As Applied

PUT

This will mark the update as Applied and it will no longer show up in the New update list.

URL Pattern: {api path}/{api_version}/sub/{api_token}/app/{app_id}/labor-update/{update_guid}/apply

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/app/3df33ce2-a5f5-5c39-8da1-0a969c23f444/labor-update/13e33a1f-6363-541d-b7f7-8bd23ce7a301/apply

Job Costing Setup

Job Costing Intro

CINX Job Costing Introduction

To allow for the proper reporting of project items and integration of transactions with contractor accounting systems, CINX has the ability for a company to define its job costing attributes. CINX supports the following job cost information types:

PHASES

A Phase is construction management concept that allows a company to break-down a project into a smaller group of tasks commonly used for scheduling, sequencing, and reporting purposes. A Phase is also referred to as a Sub-Job, Area, or Extra by other software systems. Example phases include, Site Work, First Floor, and System.

COST CODES

A Cost Code is an accounting and construction management concept that allows a company to track material and labor for cost reporting purposes. Other systems refer to cost codes as Item Groups. Example cost codes are 200-Sanitary Sewer, 400-Domestic Water, and 600-Gas.

CATEGORIES

A Category is an accounting concept that allows a company to classify project costs for expensing purposes. Categories are also known as Cost Classes. For example, Material, Labor, Sub-Contractor, and Rental.

TAX GROUPS

A Tax Group is a collection of tax fields defined in an accounting system that allows for the proper identification and processing of taxes.

Get Phases

API Endpoint - Get an Organization's List of Phases

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getPhases(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "3b61f993-69b5-5db3-a367-2d204321c857",
            "name": "First Floor",
            "description": "First Floor",
            "material_cost_code_guid": "df8f4e93-3d04-5379-948a-0b3f5319cbd2",
            "material_cost_code_name": "23-854",
            "reference_id": null,
            "modified_by": "Will Stone",
            "date_modified": "2019-06-04",
            "status": "A"
        }
    ]
}

GET

This endpoint will be used to get a company’s list of project phases. In CINX, each company can define the list of standard phases that they use on projects. The company can define a name and description for each phase as well as a default material cost code.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org/job-costing/phases

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org/job-costing/phases

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Phase Template

API Endpoint - Get a Phase Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getPhaseTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    })

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "name": null,
            "description": null,
            "status": "A",
            "reference_id": null,
            "cinx_material_cost_code_guid": null,
            "material_cost_code_name": null
        },
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for a job costing phase.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/phase

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/phase

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
name String Yes Full name of the phase.
description String Yes Description of the phase. Can be Null.
status String Yes A Status of the phase.
reference_id String Yes Reference id field that can be used to store an ERP code for the phase. Can be Null.
cinx_material_cost_code_guid String (GUID Format) Yes CINX Id for the default material cost code assigned to the phase. Can be Null.
material_cost_code_name String Yes Name of the default material cost code assigned to the phase. Can be Null.

Create Phase

API Endpoint - Create a Phase

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//phaseObject can be created based on the template retrieved from cinxApi.getPhaseTemplate(cinx_api_token) call
cinxApi.postPhase(cinx_api_token, phaseObject, isSynchronous)
            .then(function (response) {
            console.log(response);
            }); 

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "name": "A",
            "description": "A",
            "status": "A",
            "guid": "ac004964-39f3-5487-8e4f-41d567e083ce",
            "date_modified": "2019-07-26 15:38:05Z",
            "reference_id": null,
            "material_cost_code": "",
            "is_default": 0,
            "modifier": {
                "name": "Will Stone",
                "cinx_id": {
                    "type": "USER",
                    "domain": "users",
                    "id": "185aabe1-3487-5f59-9ad5-c577a76bd392"
                }
            },
            "cinx_id": {
                "type": "ORG-PHASES",
                "domain": "org-0001-4030",
                "id": "d596b228-1b0a-5658-806c-0b5bd2f426ed"
            }
        }
    ]
}

POST

This URL will be used to create a new Phase in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-phase-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-phase-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Modify Phase

API Endpoint - Modify a Phase

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//phaseObject can be created based on the template retrieved from cinxApi.getPhaseTemplate(cinx_api_token) call
cinxApi.putPhase(cinx_api_token, phaseObject, isSynchronous)
            .then(function (response) {
                console.log(response);
            }); 

The above code returns JSON structured like this:

{

}

PUT

This URL will be used to modify an existing Phase in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-phase-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-phase-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Get Mat Cost Codes

API Endpoint - Get an Organization's List of Material Cost Codes

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getMaterialCostCodes(cinx_api_token)
       .then(function(response) {
            console.log(response);
        });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "314f6a13-56b3-5c3f-b14e-10d159e4c5c0",
            "name": "101-1025",
            "description": "W",
            "category_guid": "31d57bb1-156e-5cf2-a1ce-05b57232e643",
            "category_name": "MAT",
            "reference_id": null,
            "modified_by": "Will Stone",
            "date_modified": "2019-07-26",
            "status": "A"
        }
    ]
}

GET

This endpoint will be used to get a company’s list of material cost codes. In CINX, each company can define the list of cost codes that can be assigned to materials in a project. The company can define a name and description for each cost code as well as a default category.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org/job-costing/material-cost-codes

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org/job-costing/material-cost-codes

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Mat Cost Code Template

API Endpoint - Get a Material Cost Code Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getMaterialCostCodeTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    })

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "name": null,
            "description": null,
            "status": "A",
            "reference_id": null,
            "cinx_category_guid": null,
            "category_name": null
        },
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for a job costing material cost code.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/material-cost-code

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/material-cost-code

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
name String Yes Full name of the material cost code.
description String Yes Description of the material cost code. Can be Null.
status String Yes A Status of the material cost code.
reference_id String Yes Reference id field that can be used to store an ERP code for the material cost code. Can be Null.
cinx_category_guid String (GUID Format) Yes CINX Id for the default category assigned to the material cost code. Can be Null.
category_name String Yes Name of the default category assigned to the material cost code. Can be Null.

Create Mat Cost Code

API Endpoint - Create a Material Cost Code

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//ccObject can be created based on the template retrieved from cinxApi.getMaterialCostCodeTemplate(cinx_api_token) call
cinxApi.postMaterialCostCode(cinx_api_token, ccObject, isSynchronous)
       .then(function(response) {
            console.log(response);
        });

The above code returns JSON structured like this:

{

}

POST

This URL will be used to create a new Cost Code in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-material-cost-code-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-material-cost-code-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Modify Mat Cost Code

API Endpoint - Modify a Material Cost Code

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//ccObject can be created based on the template retrieved from cinxApi.getMaterialCostCodeTemplate(cinx_api_token) call
cinxApi.putMaterialCostCode(cinx_api_token, ccObject, isSynchronous)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{

}

PUT

This URL will be used to modify an existing Cost Code in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-material-cost-code-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-material-cost-code-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Get Labor Cost Codes

API Endpoint - Get an Organization's List of Labor Cost Codes

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "314f6a13-56b3-5c3f-b14e-10d159e4c5c0",
            "name": "101-1025",
            "description": "W",
            "category_guid": "31d57bb1-156e-5cf2-a1ce-05b57232e643",
            "category_name": "MAT",
            "reference_id": null,
            "modified_by": "Will Stone",
            "date_modified": "2019-07-26",
            "status": "A"
        }
    ]
}

GET

This endpoint will be used to get a company’s list of labor cost codes. In CINX, each company can define the list of cost codes that can be assigned to labor activities associated with material products. The company can define a name and description for each cost code as well as a default category.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org/job-costing/labor-cost-codes

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org/job-costing/labor-cost-codes

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Labor Cost Code Template

API Endpoint - Get a Labor Cost Code Template

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "name": null,
            "description": null,
            "status": "A",
            "reference_id": null,
            "cinx_category_guid": null,
            "category_name": null
        },
        "required_post": [],
        "required_put": [],
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for a job costing labor cost code.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/labor-cost-code

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/labor-cost-code

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
name String Yes Full name of the labor cost code.
description String Yes Description of the labor cost code. Can be Null.
status String Yes A Status of the labor cost code.
reference_id String Yes Reference id field that can be used to store an ERP code for the labor cost code. Can be Null.
cinx_category_guid String (GUID Format) Yes CINX Id for the default category assigned to the labor cost code. Can be Null.
category_name String Yes Name of the default category assigned to the labor cost code. Can be Null.

Create Labor Cost Code

API Endpoint - Create a Labor Cost Code

{

}

POST

This URL will be used to create a new Cost Code in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-labor-cost-code-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-labor-cost-code-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Modify Labor Cost Code

API Endpoint - Modify a Labor Cost Code

{

}

PUT

This URL will be used to modify an existing Cost Code in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-labor-cost-code-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-labor-cost-code-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Get Categories

API Endpoint - Get an Organization's List of Categories

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getCategories(cinx_api_token)
       .then(function(response) {
            console.log(response);
        });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "31d57bb1-156e-5cf2-a1ce-05b57232e643",
            "name": "MAT",
            "description": "Material",
            "reference_id": null,
            "modified_by": "Will Stone",
            "date_modified": "2019-06-04",
            "status": "A"
        }
    ]
}

GET

This endpoint will be used to get a company’s list of accounting categories. In CINX, each company can define the list of standard categories. The company can define a name and description for each category.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org/job-costing/categories

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org/job-costing/categories

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Category Template

API Endpoint - Get a Category Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getCategoryTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    })

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "name": null,
            "description": null,
            "status": "A",
            "reference_id": null,
            "cinx_category_guid": null,
            "category_name": null
        },
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for an accounting category.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/category

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/category

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
name String Yes Full name of the category.
description String Yes Description of the category. Can be Null.
status String Yes A Status of the category.
reference_id String Yes Reference id field that can be used to store an ERP code for the category. Can be Null.

Create Category

API Endpoint - Create a Category

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//cObject can be created based on the template retrieved from cinxApi.getCategoryTemplate(cinx_api_token) call
cinxApi.postCategory(cinx_api_token, cObject, isSynchronous)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {

        }
    ]
}

POST

This URL will be used to create a new Category in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-category-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-category-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Modify Category

API Endpoint - Modify a Job Cost Category

PUT

This URL will be used to modify an existing Category in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-category-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-category-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Get Tax Groups

API Endpoint - Get an Organization's List of Tax Groups

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getTaxGroups(cinx_api_token)
       .then(function(response) {
            console.log(response);
        });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "7c42f24f-766e-5220-bc7e-cce8048dbb57",
            "name": "TAX-12",
            "description": "state Tax",
            "rate": 8,
            "tax_type": "Sales",
            "reference_id": null,
            "modified_by": "Will Stone",
            "date_modified": "2017-10-20",
            "status": "A"
        }
    ]
}

GET

This endpoint will be used to get a company’s list of tax groups. In CINX, each company can define the list of standard tax groups.

URL Pattern: {api path}/{api_version}/sub/{api_token}/org/job-costing/tax-groups

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/org/job-costing/tax-groups

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Tax Group Template

API Endpoint - Get a Tax Group Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getTaxGroupTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    })

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "name": null,
            "description": null,
            "rate": null,
            "tax_type": null,
            "status": "A",
            "reference_id": null

        },
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for a tax group.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/tax-group

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/tax-group

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
name String Yes Full name of the tax group.
description String Yes Description of the tax group. Can be Null.
rate Real Yes Value of the tax group rate.
tax_type String Yes Type of the tax. Template has a list of optional values. Can be Null.
status String Yes A Status of the tax group. Template has a list of optional values.
reference_id String Yes Reference id field that can be used to store an ERP code for the tax group. Can be Null.

Create Tax Group

API Endpoint - Create a Job Cost Tax Group

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//tObject can be created based on the template retrieved from cinxApi.getTaxGroupTemplate(cinx_api_token) call
cinxApi.postTaxGroup(cinx_api_token, tObject, isSynchronous)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {

        }
    ]
}

POST

This URL will be used to create a new Tax Group in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-tax-group-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-tax-group-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Modify Tax Group

API Endpoint - Modify a Job Cost Tax Group

PUT

This URL will be used to modify an existing Tax Group in the company’s CINX job costing library.

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-org-tax-group-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-org-tax-group-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Vendors

Vendor Definition

CINX Object Definition - Vendor

Vendor is a generic term that refers to any organization that sells/distributes products or services that are consumed by a customer. Vendors refer to different organization types within the construction vertical market.

For contractors on the CINX platform, a Vendor is a Wholesale Distributor or other entities that provide products or services. As a web-based platform CINX has the ability for contractors and distributors to connect with one another if they are both already members of the CINX site. Similar to LinkedIn and Facebook, a request is sent by the requesting party to create a relationship whereby CINX activities and transactions can be shared between the two companies.

When a relationship between the two parties is created, CINX creates a Commerce GUID that links the two parties. This GUID is the key that allows for the storage of important transaction parameters that are required to deliver and process transactions. It is therefore also used by the API as a URL parameter when fetching and updating relationship data.

CINX also has the ability for a contractor to create a Private vendor. This is a vendor that is not a member of the CINX site. A private vendor is unique to the contractor and will still be linked using a Commerce GUID.

Dependencies and Business Rules

Supported API Services

Get Vendor List

API Endpoint - Get List of Vendors

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getVendors(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_commerce_guid": "9a13fcca-e6ae-524f-95dd-0f4d7d26930f",
            "name": "PVF Supply",
            "number": "P-45677",
            "status": "A",
            "type": "PVF",
            "counts": {
                "all_branches": 1315,
                "selected_branches": 0,
                "account_reps": 1
            },
            "address": {
                "type": "SHIPPING",
                "address1": "Address 001",
                "address2": "",
                "address3": "",
                "city": "City 001",
                "state": "AL",
                "postal_code": "00122",
                "country": "USA"
            }
        }
    ]
}

GET

This endpoint will be used to get a list of the organization's vendors.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendors

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendors

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Vendor

API Endpoint - Get a Vendor

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getVendorDetails(cinx_api_token, vendor_guid)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_commerce_guid": "de0cf849-6f7b-5df6-9ae9-f924659f2d25",
        "number": "CXV101",
        "name": "ABS Supply Company",
        "short_name": null,
        "description": "Full Service PVF Distributor.",
        "type": null,
        "web_site": null,
        "logo": "http://cdn.dev.cinx.biz/assets/org-0000-5814/logo/org-0000-5814_logo_1.jpg",
        "status": "A",
        "counts": {
            "all_branches": 1315,
            "selected_branches": 0,
            "account_reps": 1
        },
        "location": {
            "number": null,
            "type": null,
            "emergency_info": "Call night watchman at 314.555.1452"
        },
        "terms": {
            "account_number": "CX101",
            "payment_days_type": "Number of Days",
            "payment_due_days": 15,
            "late_fee_percent": 1,
            "discount_days_type": null,
            "discount_days": 0,
            "discount_percent": 0
        },
        "accounting_defaults": {
            "cinx_material_cost_code_guid": null,
            "material_cost_code_name": null,
            "cinx_category_guid": null,
            "category_name": null,
            "cinx_tax_group_guid": null,
            "tax_group_name": null,
            "gl_account": null
        },
        "addresses": [{
            "type": "SHIPPING",
            "address1": "1533 Delmar Avenue",
            "address2": "",
            "address3": "",
            "country": "USA",
            "city": "St. Louis",
            "state": "AL",
            "postal_code": "63103",
            "description": "1533 Delmar Avenue"
        }],
        "phone_numbers": [{
            "type": "OFFICE",
            "number": "314.555.3200"
        }],
        "fax_numbers": [],
        "email_addresses": [{
            "type": "CORPORATE",
            "address": "sales@abssupply1.com"
        }],
        "id_numbers": [],
        "branches": [],
        "account_reps": [{
            "cinx_guid": "e9bf728d-021c-5644-b934-43c193751f2d",
            "name": "David Farnsworth",
            "email": "dmcpahul@hphguide.com",
            "phone_number": "603.444.0820",
            "role": "User",
            "is_primary": false
        }]
    }]
}

GET

This endpoint will be used to get the details of a specific vendor using the CINX Commerce Id.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendor/{cinx_commerce_guid}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendor/512d5a2f-1d6c-21ca-9b97-9299ac9c802a

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Vendor Template

API Endpoint - Get a Vendor Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getVendorTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
           "doc_info": {},
           "template": {
                "cinx_commerce_guid": null,
                "number": null,
                "name": null,
                "short_name": null,
                "description": null,
                "type": null,
                "web_site": null,
                "status": "A",
                "location": {
                    "number": null,
                    "type": null,
                    "emergency_info": null
                },
                "terms": {
                    "account_number": null,
                    "payment_days_type": null,
                    "payment_due_days": null,
                    "late_fee_percent": null,
                    "discount_days_type": null,
                    "discount_days": null,
                    "discount_percent": null
                },
                "accounting_defaults": {
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code_name": null,
                    "cinx_category_guid": null,
                    "category_name": null,
                    "cinx_tax_group_guid": null,
                    "tax_group_name": null,
                    "gl_account": null
                },
                "addresses": [
                    {
                        "type": null,
                        "address1": null,
                        "address2": null,
                        "address3": null,
                        "city": null,
                        "state": null,
                        "postal_code": null,
                        "country": "USA"
                    }
                ],
                "phone_numbers": [
                    {
                        "type": null,
                        "number": null
                    }
                ],
                "fax_numbers": [
                    {
                        "type": null,
                        "number": null
                    }
                ],
                "email_addresses": [
                    {
                        "type": null,
                        "address": null
                    }
                ],
                "id_numbers": [
                    {
                        "type": null,
                        "number": null
                    }
                ]
            },
            "field_options": {},
            "api_calls": {}
        }
    ]
}

GET

This endpoint will be used to get a CINX Template for a vendor.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/vendor

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/vendor

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_commerce_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
number String No Public number for the object.
name String Yes Full name of the vendor.
short_name String No Short or abbreviated name of the vendor.
description String No Description of the vendor.
type String No Organization-defined type assigned to the vendor.
web_site String No Primary web site address of the vendor.
status String Yes A Status of the vendor.
location.number String No Number identifying the vendor's location.
location.type String No Type of location. Template has a list of optional values.
location.emergency_info String No Information for contacting the vendor in-case of an emergency.
terms.account_number String No Vendor's system number for the customer.
terms.payment_days_type String No Vendor's payment terms days type.
terms.payment_due_days Real No Vendor's payment terms due days.
terms.late_fee_percent Real No Vendor's payment terms late payment fee percentage.
terms.discount_days_type String No Vendor's payment terms early pay discount days type.
terms.discount_days Real No Vendor's payment terms early pay discount days.
terms.discount_percent Real No Vendor's payment terms early pay discount percentage.
accounting_defaults.cinx_material_cost_code_guid String (GUID Format) No Default CINX Id for the Material Cost Code assigned to the vendor.
accounting_defaults.material_cost_code_name String No Default name for the Material Cost Code assigned to the vendor.
accounting_defaults.cinx_category_guid String (GUID Format) No Default CINX Id for the Category assigned to the vendor.
accounting_defaults.category_name String No Default name for the Category assigned to the vendor.
accounting_defaults.cinx_tax_group_guid String (GUID Format) No Default CINX Id for the Tax Group assigned to the vendor
accounting_defaults.tax_group_name String No Default name for the Tax Group assigned to the vendor.
accounting_defaults.gl_account String No Default name for the General Ledger account assigned to the vendor.
addresses.type String No Type of vendor location address. Template has a list of optional values.
addresses.address1 String No Address 1 value for the vendor location.
addresses.address2 String No Address 2 value for the vendor location.
addresses.address3 String No Address 3 value for the vendor location.
addresses.city String No City value for the vendor location.
addresses.state String No State value for the vendor location. Two-character alpha abbreviation.
addresses.postal_code String No Postal/Zip Code value for the vendor location.
addresses.country String Yes USA Country value for the vendor location. Three-character alpha abbreviation.
phone_numbers.type String No Type of phone number. Template has a list of optional values.
phone_numbers.number String No Value of the phone number.
fax_numbers.type String No Type of fax number. Template has a list of optional values.
fax_numbers.number String No Value of the fax number.
email_addresses.type String No Type of email address. Template has a list of optional values.
email_addresses.address String No Email address.
id_numbers.type String No Type of Id number. Template has a list of optional values.
id_numbers.number String No Id number value.

Get Vendor Number

API Endpoint - Get a New Vendor Number

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getVendorNumber(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "vendor": "V-0001"
        }
    ]
}

GET

This endpoint will be used to get a value to be used in the number field of a new vendor.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/auto-number/vendor

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/auto-number/vendor

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Create Vendor

API Endpoint - Create a New Vendor

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//vendorObject can be created based on the template retrieved from cinxApi.getVendorTemplate(cinx_api_token) call
cinxApi.postVendor(cinx_api_token, vendorObject, isSynchronous)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [

    ]
}

POST

This endpoint will be used to insert a new private vendor for an organization.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-vendor-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-vendor-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Modify Vendor

API Endpoint - Modify a Vendor

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//vendorObject can be created based on the template retrieved from cinxApi.getVendorTemplate(cinx_api_token) call
cinxApi.putVendor(cinx_api_token, vendorObject, isSynchronous)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [

    ]
}

PUT

This endpoint will be used to modify a vendor.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-vendor-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-vendor-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Vendor Transactions

Get Vendor RFQs

API Endpoint - Get a List of RFQs Submitted to a Vendor

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "f823d544-15dc-551f-94f9-f04283bfddb0",
            "number": "RFQ-1254",
            "name": "RFQ-1254",
            "description": "Sample RFQ Description Text",
            "workflow_status": "SUBMITTED",
            "submitter": "Will Stone",
            "date_submitted": "2019-06-01",
            "date_respond_by": "2019-06-03",
            "vendors": [
                {
                    "number": "H125",
                    "name": "Hilti"
                }
            ],
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "OFFICE",
            "delivery_location_name": null,
            "date_need_by": "2019-06-08",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "req_number": null,
            "req_name": null,
            "phase": null,
            "material_cost_code": null,
            "category": null,
            "external_references": [],
            "item_count": 113
        }
    ]
}

GET

This endpoint will be used to get a list of RFQs submitted to a specified vendor. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendor/{cinx_commerce_guid}/rfqs

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendor/7880c854-017f-5359-96de-fdef626c33cf/rfqs

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, QUOTED
project Limits results to a single project. {cinx_project_id}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Vendor Quotes

API Endpoint - Get a List of Quotes Submitted by a Vendor

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "1eb08930-8744-5213-90f0-3ad63a216b20",
        "number": "Q19-789456",
        "name": "Q19-789456",
        "description": "",
        "workflow_status": "RECEIVED",
        "vendor_number": "99999",
        "vendor_name": "Keegan Supply",
        "submitter": "eb stone",
        "date_received": "2019-07-25",
        "date_expires": "2019-08-26",
        "date_requested": "",
        "project_number": "WTS-2019-06",
        "project_name": "HPH HQ Renovation",
        "rfq_number": "RFQ-456464",
        "rfq_name": "RFQ-456464",
        "links": [],
        "item_count": 11
    }]
}

GET

This endpoint will be used to get a list of Quotes submitted by a specified vendor. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendor/{cinx_commerce_guid}/quotes

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendor/7880c854-017f-5359-96de-fdef626c33cf/quotes

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ERP PENDING, ERP ACCEPTED, ERP FAILED
project Limits results to a single project. {cinx_project_id}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Vendor POs

API Endpoint - Get a List of POs Submitted to a Vendor

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "80e6d9c8-d2e4-5aaa-9bd3-3957430741dd",
            "number": "PO-123",
            "name": "PO123",
            "description": null,
            "workflow_status": "SUBMITTED",
            "procurement_status": "ORDERED",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "date_order_by": "2019-06-07",
            "date_submitted": "2019-06-06",
            "submitter": "Will Stone",
            "date_need_by": "2019-06-11",
            "date_received": "",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "phase": "First Floor",
            "material_cost_code": "101-1025",
            "category": null,
            "tax_group": "TAX-03",
            "terms": "0/0",
            "quote_number": null,
            "quote_name": null,
            "erp_status": "NOT SUBMITTED",
            "external_references": [],
            "item_count": 15
        }
    ]
}

GET

This endpoint will be used to get a list of POs submitted to a specified vendor. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendor/{cinx_commerce_guid}/pos

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendor/7880c854-017f-5359-96de-fdef626c33cf/pos

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
procurement Limits results to a specific procurement status. NOT ORDERED, ORDER PENDING, ORDERED, BACK-ORDERED, DELIVERED, RETURNED, CANCELLED, CLOSED, ON-HOLD, INVOICE-APPROVED
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, ERP PENDING, ERP ACCEPTED, ERP FAILED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
project Limits results to a single project. {cinx_project_id}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Vendor POCOs

API Endpoint - Get a List of PO Change Orders Submitted to a Vendor

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "a9863525-d926-5441-9f9c-aa47a285a19b",
            "number": "-01",
            "name": "PO123-01",
            "description": null,
            "workflow_status": "SUBMITTED",
            "procurement_status": "ORDERED",
            "po_number": "PO-123",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "date_submitted": "2019-06-06",
            "submitter": "Will Stone",
            "date_need_by": "2019-06-14",
            "phase": "First Floor",
            "material_cost_code": "101-1025",
            "category": null,
            "tax_group": "TAX-03",
            "terms": "0/0",
            "erp_status": "NOT SUBMITTED",
            "external_references": [],
            "item_count": 2
        }
    ]
}

GET

This endpoint will be used to get a list of PO Change Orders submitted to a specified vendor. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendor/{cinx_commerce_guid}/pocos

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendor/7880c854-017f-5359-96de-fdef626c33cf/pocos

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
procurement Limits results to a specific procurement status. NOT ORDERED, ORDER PENDING, ORDERED, BACK-ORDERED, DELIVERED, RETURNED, CANCELLED, CLOSED, ON-HOLD, INVOICE-APPROVED
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, ERP PENDING, ERP ACCEPTED, ERP FAILED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
project Limits results to a single project. {cinx_project_id}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Vendor Deliveries

API Endpoint - Get a List of Deliveries for a Vendor

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "f116ad07-ab08-5b87-ad42-18cab454e086",
            "number": "D000012",
            "name": "D000012",
            "description": null,
            "workflow_status": "INCOMPLETE",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "location_type": "FABRICATION SHOP",
            "location_name": null,
            "date_received": "2019-06-07",
            "receiver": "Will Stone",
            "total_weight": "456",
            "packing_slip_number": "54654645",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "po_number": "PO-123",
            "po_name": "PO123",
            "date_need_by": "2019-06-11",
            "external_references": [],
            "item_count": 15
        }
    ]
}

GET

This endpoint will be used to get a list of Deliveries for a vendor. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendor/{cinx_commerce_guid}/deliveries

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendor/7880c854-017f-5359-96de-fdef626c33cf/deliveries

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
project Limits results to a single project. {cinx_project_id}
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
po-guid Limits results to a specific purchase order. {cinx_po_id}
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Vendor Invoices

API Endpoint - Get a List of Invoices from a Vendor

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "8ead0386-496b-571c-b14f-09eafeeb6758",
        "number": "I456123",
        "name": "I456123",
        "workflow_status": "PENDING E-INVOICE",
        "erp_status": "NOT SUBMITTED",
        "assigned_to": "Will Stone",
        "entry_type": "MANUAL",
        "entered_by": null,
        "date_entered": "",
        "accept_type": "MANUAL",
        "accepted_by": null,
        "date_accepted": "",
        "date_issued": "2019-06-08",
        "date_payment_due": "2019-07-08",
        "vendor_number": "H125",
        "vendor_name": "Hilti",
        "po_number": "PO123",
        "po_name": "PO123",
        "project_number": "WTS-2017-03",
        "project_name": "HPH HQ Renovation",
        "external_references": [],
        "item_count": 15
    }]
}

GET

This endpoint will be used to get a list of Invoices from a vendor. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendor/{cinx_commerce_guid}/invoices

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendor/7880c854-017f-5359-96de-fdef626c33cf/invoices

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
po-guid Limits results to a specific purchase order. {cinx_po_id}
status Limits results to a specific status. PENDING E-INVOICE, ENTERED, REVIEWED, ACCEPTED, IN-DISPUTE, ON-HOLD, REJECTED, SUBMITTED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
project Limits results to a single project. {cinx_project_id}
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Vendor Returns

API Endpoint - Get a List of Returns for a Vendor

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "03dfb081-fc43-5196-8b58-d8277278bc59",
            "number": "R000001",
            "name": "R000001",
            "workflow_status": "RMA REQUESTED",
            "rma_number": null,
            "date_rma_expires": null,
            "reason_name": "Wrong Product",
            "action_name": "Replace Item",
            "assigned_to": "Will Stone",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "po_number": "PO-123",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "external_references": [],
            "item_count": 1
        }
    ]
}

GET

This endpoint will be used to get a list of Returns for a vendor. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendor/{cinx_commerce_guid}/returns

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendor/7880c854-017f-5359-96de-fdef626c33cf/returns

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
project Limits results to a single project. {cinx_project_id}
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
po-guid Limits results to a specific purchase order. {cinx_po_id}
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Vendor Back-Orders

API Endpoint - Get a List of Back-Orders from a Vendor

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "076bd4bb-d6d9-5096-96f2-ec105d0562b1",
            "date_expected_delivery": null,
            "date_po_deliver_by": null,
            "date_informed": null,
            "date_last_updated": null,
            "reason": null,
            "quantity_backordered": 1,
            "quantity_shipped": 0,
            "quantity_po": 1,
            "org_item_id": null,
            "vendor_item_id": null,
            "mfr_part_number": null,
            "mfr_order": null,
            "hph_code": "326ZU6542",
            "upc": "67024006745",
            "org_description": "Floor, Z1400 Adjustable, 4",
            "cinx_description": null,
            "mfr_description": null,
            "mfr_name": null,
            "delivery_location_type": null,
            "delivery_location_name": "",
            "vendor_number": "",
            "vendor_name": "Hilti",
            "work_order_id": null,
            "work_order_name": null,
            "spool_id": null,
            "spool_name": null,
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "po_number": "P19-062819",
            "po_name": "P19-062819",
            "po_submitted_by": "Will Stone"
        }
    ]
}

GET

This endpoint will be used to get a list of Back-Orders for a vendor. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/vendor/{cinx_commerce_guid}/back-orders

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/vendor/7880c854-017f-5359-96de-fdef626c33cf/back-orders

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
project Limits results to a single project. {cinx_project_id}
po-guid Limits results to a specific purchase order. {cinx_po_id}
format Defines the response format type. If not specified, json will be used. json, xml

Projects

Project Definition

CINX Object Definition - Project

A CINX project is a job that is being performed for a customer/client on building, structure, or other asset.

Dependencies and Business Rules

Supported API Services

Get Project List

API Endpoint - Get List of Projects

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getProjects(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "e8c5dc6b-e95a-5009-ad89-a11520f55493",
            "number": "A",
            "name": "A",
            "description": "A",
            "project_manager": "Will Stone",
            "status": "CONCEPTUAL",
            "customer": {
                "cinx_commerce_guid": null,
                "customer_name": null,
                "cinx_building_guid": null,
                "building_name": null,
                "project_number": null
            },
            "external_references": [],
            "item_count": 7
        }
    ]
}

GET

This endpoint will be used to get a list of the organization's projects.

URL Pattern: {api path}/{api_version}/sub/{api_token}/projects

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/projects

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
number Limits results to a specific project number. {project number}
status Limits results to a specific status. CONCEPTUAL, BID, DESIGN, CONSTRUCTION, CLOSEOUT, COMPLETED, NOT SPECIFIED
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Project

API Endpoint - Get a Project

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getProjectDetails(cinx_api_token, project_guid)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "e1e3cb54-b00a-55ae-a079-072732542bf4",
        "locked": "0",
        "number": "WTS-2017-04",
        "name": "WTS-2017-04 - ATC Denver",
        "description": "17243",
        "project_manager": "Will Stone",
        "status": "DESIGN",
        "item_count": 241,
        "status_counts": {
            "active": 230,
            "discontinued": 10,
            "poa": 1
        },
        "dates": {
            "contract_award": null,
            "scheduled_start": null,
            "actual_start": null,
            "scheduled_complete": null,
            "actual_complete": null
        },
        "customer": {
            "cinx_commerce_guid": "b65d1355-e1f7-55bc-b44a-5dc441989235",
            "customer_name": "Team O'Neil",
            "cinx_building_guid": "070eb515-65d7-5430-9e09-24eb9af9dcd1",
            "building_name": "motorsports",
            "project_number": null
        },
        "classifications": {
            "delivery_method": "INTEGRATED PROJECT DELIVERY",
            "is_leed": "1",
            "org_defined_type": "Industrial",
            "construction_type": "NEW",
            "industry_type": "COMMERCIAL",
            "cinx_type": "PROJECT",
            "sector_type": "PRIVATE - FOR PROFIT"
        },
        "contract": {
            "budget_amount": null,
            "budget_currency": "USD"
        },
        "taxes": {
            "taxable": true,
            "cinx_guid": "7c42f24f-766e-5220-bc7e-cce8048dbb57",
            "tax_group_name": "TAX-12",
            "tax_exempt_id": null
        },
        "size_square": {
            "value": null,
            "uom": "FEET"
        },
        "external_references": []
    }]
}

GET

This endpoint will be used to get the details of a specific project.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/e8c5dc6b-e95a-5009-ad89-a11520f55493

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Project Template

API Endpoint - Get a Project Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getProjectTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "number": null,
            "name": null,
            "description": null,
            "status": "NOT SPECIFIED",
            "dates": {
                "contract_award": null,
                "scheduled_start": null,
                "actual_start": null,
                "scheduled_complete": null,
                "actual_complete": null
            },
            "customer": {
                "cinx_commerce_guid": null,
                "customer_name": null,
                "cinx_building_guid": null,
                "building_name": null,
                "project_number": null
            },
            "classifications": {
                "delivery_method": null,
                "is_leed": false,
                "org_defined_type": null,
                "construction_type": "NOT SPECIFIED",
                "industry_type": "NOT SPECIFIED",
                "cinx_type": "PROJECT",
                "sector_type": "NOT SPECIFIED"
            },
            "contract": {
                "budget_amount": null,
                "budget_currency": "USD"
            },
            "taxes": {
                "taxable": true,
                "cinx_guid": null,
                "tax_group_name": null,
                "tax_exempt_id": null
            },
            "size_square": {
                "value": null,
                "uom": "FEET"
            },
            "external_references": [{
                "type": null,
                "description": null,
                "value": null
            }],
            "items": [{
                "cinx_guid": null,
                "quantity": 1,
                "currency": "USD",
                "order_lead_time": null,
                "allow_substitutes": true,
                "procurement_status": "NOT ORDERED",
                "construction_status": null,
                "hph_code": null,
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": null,
                "upc": null,
                "size": null,
                "description": null,
                "mfr_name": null,
                "item_type": null,
                "weight": {
                    "value": null,
                    "uom": null
                },
                "dates": {
                    "need_by": null,
                    "order_by": null,
                    "installed": null
                },
                "vendor": {
                    "cinx_commerce_guid": null,
                    "number": null,
                    "item_id": null,
                    "system_id": null,
                    "availability_type": null,
                    "availability_location": null
                },
                "delivery": {
                    "deliver_to": null,
                    "location_type": null,
                    "location_name": null,
                    "instructions": null,
                    "labeling_instructions": null,
                    "packaging_instructions": null
                },
                "work_breakdown": {
                    "trade": null,
                    "work_order_id": null,
                    "work_order_name": null,
                    "spool_id": null,
                    "spool_name": null,
                    "building_name": null,
                    "level": null,
                    "space": null,
                    "sub_space": null,
                    "system": null,
                    "arch_symbol": null,
                    "tag": null
                },
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": null,
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code_name": null,
                    "cinx_labor_cost_code_guid": null,
                    "labor_cost_code_name": null,
                    "cinx_category_guid": null,
                    "category_name": null
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": null,
                    "tax_group_name": null,
                    "tax_type": null
                },
                "design": {
                    "model_item_guid": null,
                    "model_name": null,
                    "model_file": null,
                    "drawing_number": null,
                    "drawing_name": null
                },
                "buy_price": {
                    "base_price": null,
                    "multiplier_code": null,
                    "multiplier_value": null,
                    "unit_price": null,
                    "price_uom": null,
                    "price_source_type": null
                },
                "sell_price": {
                    "base_price": null,
                    "multiplier_code": null,
                    "multiplier_value": null,
                    "unit_price": null,
                    "price_uom": null,
                    "price_source_type": null
                },
                "labor_unit": {
                    "cinx_guid": null,
                    "source": null,
                    "base_unit": null,
                    "uom": null,
                    "multiplier_value": null,
                    "unit": null
                },
                "labor_cost": {
                    "labor_rate": null,
                    "sub_total": null,
                    "adjustment": null,
                    "total": null
                },
                "attributes": [{
                    "name": null,
                    "value": null
                }]
            }]
        },
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for a project.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/project

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/project

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Dflt Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
number String Yes Public number for the object.
name String Yes Public name for the object.
description String No Public description for the object.
status String Yes NOT SPECIFIED Status used to track the project. Template has a list of optional values.
dates.contract_award Date (YYYY-MM-DD) No Date the contract was awarded to the contractor.
dates.scheduled_start Date (YYYY-MM-DD) No Date the project was scheduled to start.
dates.actual_start Date (YYYY-MM-DD) No Date the project began construction.
dates.scheduled_complete Date (YYYY-MM-DD) No Date the project was scheduled to finish.
dates.actual_complete Date (YYYY-MM-DD) No Date the project was finished.
customer.cinx_commerce_guid String (GUID Format) No CINX Commerce Id for the customer that commissioned the project.
customer.name String No The name of the customer that commissioned the project.
customer.cinx_building_guid String (GUID Format) No CINX Id for the building or structure.
customer.cinx_building_name String No Name of the building or structure.
customer.project_number String No The project number assigned by the customer for the project.
classifications.delivery_method String Yes NOT SPECIFIED Project delivery method being used on the project. Template has a list of optional values.
classifications.is_leed Boolean Yes FALSE Indicator if the project is a LEED project.
classifications.org_defined_type String No Organization-defined type of project
classifications.construction_type String Yes NOT SPECIFIED The construction type for the project. Template has a list of optional values.
classifications.industry_type String Yes NOT SPECIFIED The construction type for the project. Template has a list of optional values.
classifications.cinx_type String Yes PROJECT The industry type for the project. Template has a list of optional values.
classifications.sector_type String Yes NOT SPECIFIED The sector type for the project. Template has a list of optional values.
contract.budget_amount String No The budgeted amount for the project.
contract.budget_currency String Yes USD The currency in which the budget is defined.
taxes.taxable Boolean Yes TRUE Indicator defining if the project is taxable.
taxes.cinx_guid String (GUID Format) No CINX Id for the Tax Group assigned to the items on the project.
taxes.tax_group_name String No Name for the Tax Group assigned to the items on the project.
taxes.tax_exempt_id String No Tax-Exempt Id.
size_square.value String No Size of the project.
size_square.uom String Yes FEET Unit-of-measure that the size of the project is defined.
external_references.type String No Non-CINX system reference type.
external_references.description String No Non-CINX system reference description.
external_references.value String No Non-CINX system reference value.
items.cinx_guid String (GUID Format) POST = No; Put = Yes CINX System Id.
items.quantity Real Yes 1 Quantity of the item that is being ordered.
items.currency String Yes USD Currency in which the price is being defined. Three-character alpha abbreviation.
items.order_lead_time Real No Number of days required for the material vendor to acquire the item.
items.allow_substitutes Boolean Yes TRUE Indicator if the product can be sourced from an alternate manufacturer.
items.procurement_status String Yes NOT ORDERED Status used to track the procurement activities of the item. Template has a list of optional values.
items.construction_status String Yes NOT INSTALLED Status used to track the installation of the item. Template has a list of optional values.
items.hph_code String No HPH Item Code for the item that is being ordered.
items.org_item_id String No The requesting company's Org Item Id for the product that is being ordered. User-friendly code.
items.org_system_id String No The requesting company's Org System Item Id for the product that is being ordered. Unique Id code.
items.mfr_part_number String No Manufacturer-defined Part/Catalog Number for the product that is being ordered.
items.upc String No Manufacturer-defined UPC Number for the product that is being ordered.
items.size String No Size of the item that is being ordered.
items.description String No Description of the item that is being ordered.
items.mfr_name String No Name of the manufacturer or fabricator that produces the item that is being ordered.
items.item_type String No Classification name of the item that is being ordered.
items.weight.value Real No Weight of the item.
items.weight.uom String No Measurement type in which the weight value is expressed.
items.dates.need_by Date (YYYY-MM-DD) No Date the product needs to be delivered to the specified delivery location.
items.dates_order_by Date (YYYY-MM-DD) No Date the product needs to be ordered from the vendor.
items.dates_installed Date (YYYY-MM-DD) No Date the product was installed.
items.vendor.cinx_commerce_guid String (GUID Format) No CINX Commerce Id for the vendor.
items.vendor.number String No The public number of the vendor from whom the product is being sourced.
items.vendor.item_id String No The vendor's Org Item Id for the product that is being ordered. User-friendly code.
items.vendor.system_id String No The vendor's Org System Item Id for the product that is being ordered. Unique Id code.
items.vendor.availability_type String No Vendor stocking type for the item. Template has a list of optional values.
items.vendor.availability_location String No Vendor stocking location for the item.
items.delivery.deliver_to String No Deliver To text.
items.delivery.location_type String No Where the requester would like the product to be delivered. Template has a list of optional values.
items.delivery_location_name String No Name of the location where the item is to be delivered.
items.delivery.instructions String No Delivery instructions to be submitted to the vendor responsible for delivering the item.
items.delivery.labeling_instructions String No Labeling instructions to be submitted to the vendor responsible for delivering the item.
items.delivery.packaging_instructions String No Packaging instructions to be submitted to the vendor responsible for delivering the item.
items.work_breakdown.trade String No Contractor defined trade related to the installation of the item.
items.work_breakdown.work_order_id String No Contractor defined Work Order Id that was assigned to the product.
items.work_breakdown.work_order_name String No Contractor defined Work Order Name that was assigned to the product.
items.work_breakdown.spool_id String No Contractor defined Spool Id that was assigned to the product.
items.work_breakdown.spool_name String No Contractor defined Spool Name that was assigned to the product.
items.work_breakdown.building_name String No Name of the building in which the product will be installed.
items.work_breakdown.level String No Level of the building in which the product will be installed.
items.work_breakdown.space String No Space of the building in which the product will be installed.
items.work_breakdown.sub_space String No Sub-space of the building in which the product will be installed.
items.work_breakdown.system String No Name of the system in which the product will be installed.
items.work_breakdown.arch_symbol String No Architectural symbol of the product.
items.work_breakdown.tag String No Text of what should appear on a tag for the item.
items.job_cost.cinx_phase_guid String (GUID Format) No CINX Id for the Phase/Sub-Job assigned to the item.
items.job_cost.phase_name String No Name for the Phase/Sub-Job assigned to the item.
items.job_cost.cinx_material_cost_code_guid String (GUID Format) No CINX Id for the Material Cost Code assigned to the item.
items.job_cost.material_cost_code_name String No Name for the Material Cost Code assigned to the item.
items.job_cost.cinx_labor_cost_code_guid String (GUID Format) No CINX Id for the Labor Cost Code assigned to the labor reqruired to install the item.
items.job_cost.labor_cost_code_name String No Name for the Labor Cost Code assigned to the labor required to install the item.
items.job_cost.cinx_category_guid String (GUID Format) No CINX Id for the Category assigned to the item.
items.job_cost.category_name String No Name for the Category assigned to the item.
items.taxes.taxable Boolean Yes TRUE Indicator defining if the product is taxable.
items.taxes.cinx_guid String (GUID Format) No CINX Id for the Tax Group assigned to the item.
items.taxes.tax_group_name String No Name of the Tax Group assigned to the item.
items.taxes.tax_type String No Name of the type of tax. Template has a list of optional values.
items.design.model_item_guid String (GUID Format) No Id assigned by the authoring system that placed the item in the model.
items.design.model_name String No Name of the model in which the item is located.
items.design.model_file String No File name of the model in which the item is located.
items.design.drawing_number String No Number of the drawing on which the item is located.
items.design.drawing_name String No Name of the drawing on which the item is located.
items.buy_price.base_price Real No Base price of the item.
items.buy_price.multiplier_code String No Code identifying the multiplier code/class.
items.buy_price.multiplier_value Real No Multiplier to be applied to the base price of the item.
items.buy_price.unit_price Real No Unit price of the item.
items.buy_price.price_uom String Yes E Price unit-of-measure. Template has a list of optional values.
items.buy_price.price_source_type String No Source from which the price was obtained. Template has a list of optional values.
items.sell_price.base_price Real No Base price of the item.
items.sell_price.multiplier_code String No Code identifying the multiplier code/class.
items.sell_price.multiplier_value Real No Multiplier to be applied to the base price of the item.
items.sell_price.unit_price Real No Unit price of the item.
items.sell_price.price_uom String Yes E Price unit-of-measure. Template has a list of optional values.
items.sell_price.price_source_type String No Source from which the price was obtained. Template has a list of optional values.
items.labor_unit.cinx_guid String (GUID Format) No CINX System Id for the labor unit from its source catalog.
items.labor_unit.source String No Name of the source that created the labor unit.
items.labor_unit.base_unit Real No Base labor unit for the item.
items.labor_unit.uom String YES HOUR Unit-of-measure in which the labor unit is expressed.
items.labor_unit.multiplier_value Real No Multiplier to be applied to the base labor unit for the item.
items.labor_unit.unit Real No The labor unit value to be used for the item.
items.labor_cost.labor_rate Real No Labor rate ($) to be used when billing for the installation of the item.
items.labor_cost.sub_total Real No Labor sub-total to be used when billing for the installation of the item.
items.labor_cost.adjustment Real No Adjustment amount ($) applied to the sub-total.
items.labor_cost.total Real No Total amount ($) used when billing for the installation of the item.
items.attributes.name String No Name of the attribute.
items.attributes.value String No Value of the attribute.

Get Project Number

API Endpoint - Get a New Project Number

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getProjectNumber(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "project": "PRJ-2019-01"
        }
    ]
}

GET

This endpoint will be used to get a value to be used in the number field of a new project.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/auto-number/project

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/auto-number/project

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Create Project

API Endpoint - Create a New Project

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//projectObject can be created based on the template retrieved from cinxApi.getProjectTemplate(cinx_api_token) call
cinxApi.postProject(cinx_api_token, projectObject, isSynchronous)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_id": {
                "type": "PROJECT",
                "domain": "org-0001-4030",
                "id": "4b4d08c7-7edf-57d2-b632-2371f8a18496"
            }
        }
    ]
}

POST

This endpoint will be used to insert a new project.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-project-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload. json
synchronous Switch to have the payload processed synchronously. 1

Modify Project

API Endpoint - Modify a CINX Project

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//projectObject can be created based on the template retrieved from cinxApi.getProjectTemplate(cinx_api_token) call
cinxApi.putProject(cinx_api_token, projectObject, isSynchronous)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{

}

PUT

This endpoint will be used to modify a project.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-project-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-project-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload. json

Project Job Costing

Job Cost Intro

CINX Project Job Costing Introduction

To allow for the proper reporting of project items and integration of transactions with contractor accounting systems, CINX has the ability for a company to define their job costing attributes or each project.

CINX supports the following Job Cost information at the project level:

PHASES

A Phase is construction management concept that allows a company to break-down a project into a smaller group of tasks commonly used for scheduling, sequencing, and reporting purposes. A Phase is also referred to as a Sub-Job, Area, or Extra by other software systems. Examples Phases include, Site Work, Floor, and System.

MATERIAL COST CODES

A Cost Code is an accounting and construction management concept that allows a company to track materials for cost reporting purposes. Other systems refer to Cost Codes as Item Groups. Example Cost Codes are Sanitary Sewer, Domestic Water, and Gas.

CATEGORIES

A Category is an accounting concept that allows a company to classify project costs for expensing purposes. Categories are also known as Cost Classes. For example, Material, Labor, Sub-Contractor, and Rental.

ESTIMATED VALUES

CINX supports the entry of estimated values for a project’s phase/cost code for the following data types: Material Costs, Labor Units, and Labor Costs.

BUDGET VALUES

CINX supports the entry of budget values for a project’s phase/cost code for the following data types: Material Costs, Labor Units, and Labor Costs.

ACTUAL VALUES

CINX supports the entry of actual values for a project’s phase/cost code for the following data types: Material Costs, Labor Units, and Labor Costs.

DATES

CINX supports the entry of the following key date types related to the project’s phase/cost code: Scheduled Start, Actual Start, Scheduled Completion, and Actual Completion.

CONSTRUCTION STATUS

The following statuses can be used to track a project’s phase/cost code: Not Installed, In-Process, Installed, Tested, Commissioned, and Operational.

PERCENT COMPLETE

Each CINX project phase/cost code has a field to track the percent complete.

Phases, Cost Codes, and Categories must be established in the company’s CINX account before they can be attached to a project. Please see Job Costing Setup for information about creating job cost information in CINX:

Get Project Job Costing

API Endpoint - Get a Project’s Job Costing List

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getProjectJobCosting(cinx_api_token, project_guid)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "676a95fb-3903-5e01-9f0d-2a31a426a76e",
            "construction_status": "NOT INSTALLED",
            "percent_complete": null,
            "project": {
                "cinx_guid": "3b61f993-69b5-5db3-a367-2d204321c857",
                "number": "WTS-2017-06",
                "name": "HPH HQ Renovation",
                "description": "Sample project description."
            },
            "phase": {
                "cinx_guid": "8e441211-45ca-5c84-b34b-a93cd4cdf853",
                "name": "1",
                "description": "First Floor",
                "status": "A"
            },
            "material_cost_code": {
                "cinx_guid": "df8f4e93-3d04-5379-948a-0b3f5319cbd2",
                "name": "23-850",
                "description": "23-850 Cost Code",
                "status": "A"
            },
            "category": {
                "cinx_guid": "b7c8125e-6048-5085-a02c-8dd645012eda",
                "name": "MAT",
                "description": "Material",
                "status": "A"
            },
            "material_cost": {
                "estimated": null,
                "budgeted": null,
                "actual": null
            },
            "labor_units": {
                "estimated": null,
                "budgeted": null,
                "actual": null
            },
            "labor_cost": {
                "estimated": null,
                "budgeted": null,
                "actual": null
            },
            "dates": {
                "scheduled_start": "2017-10-23",
                "actual_start": "2017-10-28",
                "scheduled_complete": "2019-01-23",
                "actual_complete": "2019-05-02"
            }
        }
    ]
}

GET

This endpoint will be used to get a list of a project’s job costing information – phases and cost codes. The response will contain full details for each phase/cost code.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/job-costing

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/e1e3cb54-b00a-55ae-a079-072732542bf4/job-costing

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Project Job Cost Template

API Endpoint - Get a Project Job Costing Breakdown Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getProjectJobCostTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "construction_status": "NOT INSTALLED",
            "percent_complete": null,
            "project": {
                "number": null,
                "cinx_guid": null
            },
            "phase": {
                "cinx_guid": null,
                "name": null
            },
            "material_cost_code": {
                "cinx_guid": null,
                "name": null
            },
            "category": {
                "cinx_guid": null,
                "name": null
            },
            "material_cost": {
                "estimated": null,
                "budgeted": null,
                "actual": null
            },
            "labor_units": {
                "estimated": null,
                "budgeted": null,
                "actual": null
            },
            "labor_cost": {
                "estimated": null,
                "budgeted": null,
                "actual": null
            },
            "dates": {
                "scheduled_start": null,
                "actual_start": null,
                "scheduled_complete": null,
                "actual_complete": null
            }
        },
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for a project job costing breakdown.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/project-job-costing

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/project-job-costing

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
construction_status String Yes NOT INSTALLED Status of the project job costing breakdown. Template has a list of optional values.
percent_complete Real No Value of the percent complete for the project job costing breakdown.
project.cinx_guid String (GUID Format) Yes CINX Project Id.
project.number String No The public number of the project.
phase.cinx_guid String (GUID Format) No CINX Id for the phase or sub-job.
phase.name String No Name for the phase or sub-job.
material_cost_code.cinx_guid String (GUID Format) No CINX Id for the material cost code.
material_cost_code.name String No Name for the material cost code.
category.cinx_guid String (GUID Format) No CINX Id for the category.
category.name String No Name for the category.
material_cost.estimated Real No Estimated amount for the cost of the materials.
material_cost.budgeted Real No Budgeted amount for the cost of the materials.
material_cost.actual Real No Actual amount for the cost of the materials.
labor_units.estimated Real No Estimated labor units.
labor_units.budgeted Real No Budgeted labor units.
labor_units.actual Real No Actual labor units.
labor_cost.estimated Real No Estimated amount for the cost of the labor.
labor_cost.budgeted Real No Budgeted amount for the cost of the labor.
labor_cost.actual Real No Actual amount for the cost of the labor.
dates.scheduled_start Date (YYYY-MM-DD) No Date the project breakdown was scheduled to start.
dates.actual_start Date (YYYY-MM-DD) No Date the project breakdown began construction.
dates.scheduled_complete Date (YYYY-MM-DD) No Date the project breakdown was scheduled to finish.
dates.actual_complete Date (YYYY-MM-DD) No Date the project breakdown was finished.

Create Project Job Costing

API Endpoint - Create a Project’s Phase and Cost Code List

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//projectCostObject can be created based on the template retrieved from cinxApi.getProjectJobCostTemplate(cinx_api_token) call
cinxApi.postProjectJobCosting(cinx_api_token, projectCostObject, isSynchronous)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{

}

POST

This endpoint will be used to create a project’s job costing attributes.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-project-job-cost-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-project-job-cost-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Modify Project Job Costing

API Endpoint - Modify a Project’s Phase and Cost Code


The above code returns JSON structured like this:

{

}

PUT

This endpoint will be used to modify a project’s phase and cost code attributes.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-project-job-cost-import?body=json

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/partner/exec/cinx/json-project-job-cost-import?body=json

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json

Project Items

Project Items Definition

CINX Object Definition - Project Items

CINX Project Items are building material products or construction related services that are used on a project.

A CINX project item is linked to its source item in a CINX Catalog. Note: If a project is imported into CINX and its items are not yet linked to a catalog item a new catalog item will be created.

In addition to the catalog-level information, a project item has a large number of fields that can used to manage the item through the different project and procurement workflows. Some important examples include: project job-costing, taxes, order conditions, construction status, work-breakdowns, and ERP integration.

Project items are also tracked on every transaction to which they have been attached.

Dependencies and Business Rules

Supported API Services

Get Project Items

API Endpoint – Get a Project Items

The above code returns JSON structured like this:


GET

This endpoint will be used to get a listing of a specific project's item.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/items?view={view_option}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/bb613aff-4256-5359-b7cd-391505d19e01/items?view=ids

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
view Defines the level of content in the response. ids, compact, details
guid Limits the response to a single CINX Project Item GUID. {cinx_guid}
hph-code Limits the response to a single HPH Item Code. {hph_item_code}
model-guid Limits the response to a single Model Item GUID. {model_guid}
org-id Limits the response to a single organization's item id {org_id}
org-sys Limits the response to a single organization's item system id. {org_system_id}
mfr-part Limits the response to a single Manufacturer Part Number. {mfr_part_number}
upc Limits the response to a single Manufacturer UPC Number. {upc__number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 10 will be used. Integer

View

Project Items View - Ids

API Project Items Response View Definition - Ids

{
  "response": {},
  "rows": [{
    "cinx_guid": "dc7517d8-6e8c-5bfd-927f-1b784d401143",
    "hph_code": "012NI0018",
    "upc": "039923312969",
    "org_item_id": null,
    "org_system_id": null,
    "model_item_guid": "234234q32fqw5324f3232"
  }]
}

When requesting listing of a project's items from the CINX API there are three view options.

The table below defines the fields output using the ids view option.

NOTE: Limit and Offset information is included in the Response object.

Project Items View - Compact

API Project Items Response View Definition - Compact

{
  "response": {},
  "rows": [{
    "cinx_guid": "dc7517d8-6e8c-5bfd-927f-1b784d401143",
    "hph_code": "012NI0018",
    "upc": "039923312969",
    "org_item_id": null,
    "org_system_id": null,
    "mfr_part_number": "607",
    "model_item_guid": "234234q32fqw5324f3232",
    "size": null,
    "description": "1\" WROT CXC 90 ELBOW",
    "mfr_name": "NIBCO, Inc.",
    "quantity": 3,
    "unit_price": 18.11,
    "price_uom": "E",
    "weight": 0.177,
    "weight_uom": "lb",
    "phase_name": null,
    "material_cost_code": "UG-123",
    "labor_cost_code": null,
    "taxable": "Yes",
    "availability_status": "A",
    "procurement_status": "NOT ORDERED",
    "construction_status": "NOT INSTALLED"
  }]
}

When requesting listing of a project's items from the CINX API there are three view options.

The table below defines the fields output using the compact view option.

NOTE: Limit and Offset information is included in the Response object.

Project Items View - Details

API Project Items Response View Definition - Details

{
  "response": {},
  "rows": [{
    "cinx_guid": "dc7517d8-6e8c-5bfd-927f-1b784d401143",
    "hph_code": "012NI0018",
    "upc": "039923312969",
    "org_item_id": null,
    "org_system_id": null,
    "mfr_part_number": "607",
    "model_item_guid": "234234q32fqw5324f3232",
    "size": null,
    "description": "1\" WROT CXC 90 ELBOW",
    "mfr_name": "NIBCO, Inc.",
    "unit_price": 18.11,
    "price_uom": "E",
    "image_url": "",
    "spec_sheet_url": null,
    "item_type": "MATERIAL",
    "weight": 0.177,
    "weight_uom": "lb",
    "labor_unit": 0,
    "labor_cost": 0,
    "availability_status": "A",
    "procurement_status": "NOT ORDERED",
    "construction_status": "NOT INSTALLED",
    "quantities": {
      "entered": 3,
      "ordered": 3,
      "received": 0,
      "invoiced": 0,
      "back_ordered": 0
    },
    "order_conditions": {
      "allow_substitutes": "Yes",
      "order_lead_time": 10,
      "order_by_date": null
    },
    "delivery": {
      "deliver_to": "Site Forman",
      "location_type": "HPH",
      "instructions": "Handle with double extra care",
      "labeling_instructions": "HPH-789879",
      "packaging_instructions": "Wrapped pallets"
    },
    "work_breakdown": {
      "work_order_name": "WO-8774512",
      "spool_name": null,
      "building_name": "HPH1",
      "level": "1",
      "space": "Lobby",
      "sub_space": "Female Restroom",
      "system": "Domestic Cold Water",
      "arch_symbol": "ELB-045"
    },
    "job_cost": {
      "phase_name": "First Floor",
      "material_cost_code": "UG-123",
      "labor_cost_code": null,
      "category_name": null
    },
    "taxes": {
      "taxable": "Yes",
      "tax_group_name": "TAX-12"
    }
  }]
}

When requesting listing of a project's items from the CINX API there are three view options.

The table below defines the fields output using the details view option.

NOTE: Limit and Offset information is included in the Response object.

Create or Modify a Project Item

API Endpoint - Create or Modify a New Project Item

Project Transactions

Get Project Reqs

API Endpoint - Get a List of Requisitions for a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "e98e2fc5-f59b-5091-8b05-54edaa9284cc",
            "number": "R-101",
            "name": "req-101",
            "description": "Sample Req Description",
            "tx_sub_type": "FIELD",
            "assigned_to": "Karl Stone",
            "procurement_status": "SUBMITTED",
            "submitter": "Will Stone",
            "date_submitted": "2019-06-12",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "JOB SITE",
            "delivery_location_name": null,
            "date_need_by": "2019-06-14",
            "vendor_number": "N-123",
            "vendor_name": "National Sales Company",
            "project_number": "WTS-2017-04",
            "project_name": "HPH Fab Shop Air System",
            "phase": "First Floor",
            "material_cost_code": "101-1025",
            "category": "MAT",
            "work_order": null,
            "spool": null,
            "allow_substitutes": true,
            "external_references": [],
            "item_count": 4
        }
    ]
}

GET

This endpoint will be used to get a list of Requisitions linked to a project. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/reqs

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/reqs

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
procurement Limits results to a specific procurement status. OPEN, SUBMITTED, IN-REVIEW, APPROVED, APPROVED W/MODS, REJECTED, PENDING ORDER, COMPLETE, CLOSED, CANCELLED, RESUBMITTED
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Project RFQs

API Endpoint - Get a List of RFQs Linked to a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "f823d544-15dc-551f-94f9-f04283bfddb0",
            "number": "RFQ-1254",
            "name": "RFQ-1254",
            "description": "Sample RFQ Description Text",
            "workflow_status": "SUBMITTED",
            "submitter": "Will Stone",
            "date_submitted": "2019-06-01",
            "date_respond_by": "2019-06-03",
            "vendors": [
                {
                    "number": "H125",
                    "name": "Hilti",
                    "tx_docs": [{
                            "type": "XLS RFQ",
                            "description": "Excel (xls) version of RFQ",
                            "value": "https://api.cinx.com/sub/12021401-f5e9-5326-b0bc-49a869ae5f23/ncds/c25fba39-50ff-5876-91ea-fcd2c1447500/54f45909-9cc3-50dd-b103-a51d5905df0e/247f71e1-84ed-54af-9e3c-6d994349cf4d"
                    }]
                }
            ],
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "OFFICE",
            "delivery_location_name": null,
            "date_need_by": "2019-06-08",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "req_number": null,
            "req_name": null,
            "phase": null,
            "material_cost_code": null,
            "category": null,
            "external_references": [],
            "item_count": 113
        }
    ]
}

GET

This endpoint will be used to get a list of RFQs linked to a project. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/rfqs

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/rfqs

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, QUOTED
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Project Quotes

API Endpoint - Get a List of Quotes for a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "1eb08930-8744-5213-90f0-3ad63a216b20",
            "number": "Q19-789456",
            "name": "Q19-789456",
            "description": "",
            "workflow_status": "RECEIVED",
            "vendor_number": "99999",
            "vendor_name": "Keegan Supply",
            "submitter": "eb stone",
            "date_received": "2019-07-25",
            "date_expires": "2019-08-26",
            "date_requested": "",
            "project_number": "WTS-2019-06",
            "project_name": "HPH HQ Renovation",
            "rfq_number": "RFQ-456464",
            "rfq_name": "RFQ-456464",
            "links": [],
            "item_count": 11
        }
    ]
}

GET

This endpoint will be used to get a list of Quotes linked to a project. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid/quotes

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/quotes

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ERP PENDING, ERP ACCEPTED, ERP FAILED
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Project POs

API Endpoint - Get a List of POs for a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "80e6d9c8-d2e4-5aaa-9bd3-3957430741dd",
            "number": "PO-123",
            "name": "PO123",
            "description": null,
            "workflow_status": "SUBMITTED",
            "procurement_status": "ORDERED",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "date_order_by": "2019-06-07",
            "date_submitted": "2019-06-06",
            "submitter": "Will Stone",
            "date_need_by": "2019-06-11",
            "date_received": "",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "phase": "First Floor",
            "material_cost_code": "101-1025",
            "category": null,
            "tax_group": "TAX-03",
            "terms": "0/0",
            "quote_number": null,
            "quote_name": null,
            "erp_status": "NOT SUBMITTED",
            "external_references": [],
            "item_count": 15
        }
    ]
}

GET

This endpoint will be used to get a list of POs linked to a specified project. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/pos

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/pos

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
procurement Limits results to a specific procurement status. NOT ORDERED, ORDER PENDING, ORDERED, BACK-ORDERED, DELIVERED, RETURNED, CANCELLED, CLOSED, ON-HOLD, INVOICE-APPROVED
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, ERP PENDING, ERP ACCEPTED, ERP FAILED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Project POCOs

API Endpoint - Get a List of PO Change Orders for a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "a9863525-d926-5441-9f9c-aa47a285a19b",
            "number": "-01",
            "name": "PO123-01",
            "description": null,
            "workflow_status": "SUBMITTED",
            "procurement_status": "ORDERED",
            "po_number": "PO-123",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "date_submitted": "2019-06-06",
            "submitter": "Will Stone",
            "date_need_by": "2019-06-14",
            "phase": "First Floor",
            "material_cost_code": "101-1025",
            "category": null,
            "tax_group": "TAX-03",
            "terms": "0/0",
            "erp_status": "NOT SUBMITTED",
            "external_references": [],
            "item_count": 2
        }
    ]
}

GET

This endpoint will be used to get a list of PO Change Orders linked to a specified project. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/pocos

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/pocos

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
procurement Limits results to a specific procurement status. NOT ORDERED, ORDER PENDING, ORDERED, BACK-ORDERED, DELIVERED, RETURNED, CANCELLED, CLOSED, ON-HOLD, INVOICE-APPROVED
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, ERP PENDING, ERP ACCEPTED, ERP FAILED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Project Deliveries

API Endpoint - Get a List of Deliveries for a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "f116ad07-ab08-5b87-ad42-18cab454e086",
            "number": "D000012",
            "name": "D000012",
            "description": null,
            "workflow_status": "INCOMPLETE",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "location_type": "FABRICATION SHOP",
            "location_name": null,
            "date_received": "2019-06-07",
            "receiver": "Will Stone",
            "total_weight": "456",
            "packing_slip_number": "54654645",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "po_number": "PO-123",
            "po_name": "PO123",
            "date_need_by": "2019-06-11",
            "external_references": [],
            "item_count": 15
        }
    ]
}

GET

This endpoint will be used to get a list of Deliveries for a project. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/deliveries

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/deliveries

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
vendor Limits results to a single vendor. {organization's vendor number}
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
po-guid Limits results to a specific purchase order. {cinx_po_id}
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Project Invoices

API Endpoint - Get a List of Invoices for a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "8ead0386-496b-571c-b14f-09eafeeb6758",
            "number": "I456123",
            "name": "I456123",
            "workflow_status": "PENDING E-INVOICE",
            "erp_status": "NOT SUBMITTED",
            "assigned_to": "Will Stone",
            "entry_type": "MANUAL",
            "entered_by": null,
            "date_entered": "",
            "accept_type": "MANUAL",
            "accepted_by": null,
            "date_accepted": "",
            "date_issued": "2019-06-08",
            "date_payment_due": "2019-07-08",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "po_number": "PO123",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "external_references": [],
            "item_count": 15
        }
    ]
}

GET

This endpoint will be used to get a list of Invoices linked to a project. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/invoices

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/invoices

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
po-guid Limits results to a specific purchase order. {cinx_po_id}
status Limits results to a specific status. PENDING E-INVOICE, ENTERED, REVIEWED, ACCEPTED, IN-DISPUTE, ON-HOLD, REJECTED, SUBMITTED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
vendor Limits results to a single vendor. {organization's vendor number}
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Project Returns

API Endpoint - Get a List of Returns for a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "03dfb081-fc43-5196-8b58-d8277278bc59",
            "number": "R000001",
            "name": "R000001",
            "workflow_status": "RMA REQUESTED",
            "rma_number": null,
            "date_rma_expires": null,
            "reason_name": "Wrong Product",
            "action_name": "Replace Item",
            "assigned_to": "Will Stone",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "po_number": "PO-123",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "external_references": [],
            "item_count": 1
        }
    ]
}

GET

This endpoint will be used to get a list of Returns linked to a Project. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/returns

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/returns

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
vendor Limits results to a single vendor. {organization's vendor number}
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
po-guid Limits results to a specific purchase order. {cinx_po_id}
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Project Back-Orders

API Endpoint - Get a List of Back-Orders for a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "076bd4bb-d6d9-5096-96f2-ec105d0562b1",
            "date_expected_delivery": null,
            "date_po_deliver_by": null,
            "date_informed": null,
            "date_last_updated": null,
            "reason": null,
            "quantity_backordered": 1,
            "quantity_shipped": 0,
            "quantity_po": 1,
            "org_item_id": null,
            "vendor_item_id": null,
            "mfr_part_number": null,
            "mfr_order": null,
            "hph_code": "326ZU6542",
            "upc": "67024006745",
            "org_description": "Floor, Z1400 Adjustable, 4",
            "cinx_description": null,
            "mfr_description": null,
            "mfr_name": null,
            "delivery_location_type": null,
            "delivery_location_name": "",
            "vendor_number": "",
            "vendor_name": "Hilti-6",
            "work_order_id": null,
            "work_order_name": null,
            "spool_id": null,
            "spool_name": null,
            "project_number": "WTS-2017-03",
            "project_name": "WTS-2017-03",
            "po_number": "P19-062819",
            "po_name": "P19-062819",
            "po_submitted_by": "Will Stone"
        }
    ]
}

GET

This endpoint will be used to get a list of Back-Orders linked to a project. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/back-orders

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/back-orders

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
vendor Limits results to a single vendor. {organization's vendor number}
po-guid Limits results to a specific purchase order. {cinx_po_id}
format Defines the response format type. If not specified, json will be used. json, xml

Get Project Lead-Times

API Endpoint - Get a List of Lead-Times for a Project

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "fe30ea8b-78bf-5dc4-962b-1fb034061b08",
        "lead_time": 5,
        "date_need_by": "2019-09-27",
        "date_order_by": "2019-09-22",
        "quantity": 1,
        "org_item_id": null,
        "vendor_item_id": null,
        "mfr_part_number": null,
        "hph_code": "505VC2080",
        "upc": null,
        "description": "10\" EPDM GASKET",
        "mfr_name": "Victaulic Company",
        "delivery_location_type": "JOB SITE",
        "delivery_location_name": null,
        "vendor_number": null,
        "vendor_name": null,
        "work_order_id": null,
        "work_order_name": null,
        "spool_id": null,
        "spool_name": null,
        "project_number": "PRJ-2019-04",
        "project_name": "Snow-making Pump House",
        "requisition_number": null,
        "requisition_name": null,
        "po_number": null,
        "po_name": null
    }]
}

GET

This endpoint will be used to get a list of items with a lead-time. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/lead-times

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/lead-times

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Project Submittals

Project Submittal Definition

CINX Object Definition - Project Submittal

A project submittal is a document that is prepared and submitted to an engineer or other entity for approval.

For larger projects, a project specification or manual is created and provided to all the project participants. The specification defines everything on a project from bidding requirements to product specifications and installation practices. Engineers normally define the sections of the specification relating to products used by contractors on the project.

Prior to the installation of products, contractors may have to submit documents relating to the products to the engineer or other responsible party for approval. Each document required by the specification and submitted for approval is called a submittal. Typically, the submittal will go through an approval process which may require several iterations.

The CINX web application has functionality to help a contractor create and manage submittals. User's can select product documentation to add as submittals and also upload new documents that needed to be provided to the approving entity.

Currently, the API supports working with documents defined as submittals within CINX.

Supported API Services

Get Project Submittals

API Endpoint – Get a Project's Submittals

{
 "response": {},
 "rows": [{
  "cinx_guid": "3dcecae7-c25e-5cc6-8bf9-609f2df56b61",
  "number": "SUB-4579",
  "description": "600WOG SDR BRS LOW LEAD 2PC BALL VLV",
  "type": "Specification Sheet",
  "workflow_status": "CREATED",
  "approval_status": "NOT APPROVED",
  "project_number": "PRJ-2019-13",
  "project_name": "PRJ-2019-13",
  "date_due": "2020-03-04",
  "date_approved": null,
  "date_created": "2020-03-02",
  "date_modified": "2020-03-02",
  "document": {
   "mime_type": "application/pdf",
   "url": "http://cdn.dev.cinx.biz/submittals/org-0001-4030/5bd8a7fbde7809766143984e.pdf"
  }
 }]
}

GET

This endpoint will be used to get a listing of a project's submittals.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/submittals

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/submittals

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
type Limits results to a specific submittal document type. SPECIFICATION SHEET, OPERATION MANUAL, SDS, WARRANTY, INSTALL INSTRUCTIONS, PARTS, MILL TEST REPORT, TECHNICAL BULLETIN, TECHNICAL DRAWING, WIRING DIAGRAM, SHOP DRAWING, AS-BUILT-PLAN, BROCHURE, OTHER
approval Limits results to a specific approval status. NOT APPROVED, APPROVED, APPROVED WITH CHANGES, REVISE AND RESUBMIT, REJECTED-NOT SPECIFIED DOCUMENT, REJECTED-INCOMPLETE, REJECTED-OTHER, INFORMATIONAL ONLY-FOR RECRORDS, NOT REQUIRED-NOT REVIEWED
workflow Limits results to a specific workflow status. CREATED, RECEIVED FROM VENDOR, APPLIED BY CINX, UPLOADED, APPROVED BY ORG, SUBMITTED, PENDING APPROVAL, APPROVED
number Limits results to a specified submittal number. {submittal_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 10 will be used. Integer

Get Submittal

API Endpoint – Get a Project Submittal

{
  "response": {},
  "rows": [{
    "cinx_guid": "3dcecae7-c25e-5cc6-8bf9-609f2df56b61",
    "locked": "0",
    "number": "SUB-4579",
    "description": "125SWP/200WOG THD BZ CHECK VLV| MV",
    "type": "Specification Sheet",
    "source": "CINX",
    "workflow_status": "CREATED",
    "approval_status": "REJECTED-OTHER",
    "dates": {
      "created": "2020-03-02",
      "last_modified": "2020-03-02",
      "due": "2020-03-04",
      "approved": null
    },
    "project": {
      "guid": "eac76f6c-a988-5b53-a987-58e4bc01bd66",
      "name": "PRJ-2019-13",
      "number": "PRJ-2019-13"
    },
    "project_spec": {
      "page_number": "45",
      "page_paragraph": "5"
    },
    "reference_ids": {
      "architect": "ArchRef-1245",
      "drawing_symbol": null,
      "engineer": "ArchRef-1245",
      "general_contractor": "GCRef-4578",
      "serial_number": null,
      "mfr_part_number": null,
      "mfr_order_number": null
    },
    "master_format": {
      "division_number": "22",
      "division_name": "Plumbing",
      "section_number": "22-05-23",
      "section_name": "General Duty Valves for Plumbing Piping"
    },
    "documents": [{
        "revision": "2",
        "is_current": true,
        "description": "509/509T - Ver2",
        "url": "http://cdn.dev.cinx.biz/submittals/org-0001-4030/1583180007RLSProductCatalog.pdf",
        "mime_type": "application/pdf",
        "date_created": "2020-03-02",
        "creator": {
          "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
          "name": "Will Stone",
          "email": "willstone@cinx.com"
        }
      },
      {
        "revision": "1",
        "is_current": false,
        "description": "Autogeneration File",
        "url": "http://cdn.dev.cinx.biz/submittals/org-0001-4030/5bd88151de780971827e7079.pdf",
        "mime_type": "application/pdf",
        "date_created": "2020-03-02",
        "creator": {
          "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
          "name": "Will Stone",
          "email": "willstone@cinx.com"
        }
      }
    ],
    "participants": [{
      "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
      "name": "Will Stone",
      "email": "willstone@cinx.com",
      "phone": "",
      "org_name": "WTS Mechanical -DEV",
      "org_type": "CONTRACTOR"
    }],
    "attributes": []
  }]
}

GET

This endpoint will be used to get the details of a specific project submittal.

URL Pattern: {api path}/{api_version}/sub/{api_token}/submittal/{submittal_guid}/

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/submittal/cd204035-368e-5677-838b-17d7506c4523

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Project Transmittals

Project Transmittal Definition

CINX Object Definition - Project Transmittal

A CINX project transmittal consists of two components. The transmittal cover page provides identification and submission information. Also included on the cover page is a listing of documents included in the package.

The second section contains the actual documents that are being submitted.

Today, transmittals are often referred to as submittal packages.

The CINX web application has functionality to help a contractor create and manage transmittals. User's can select documents from the project's submittals and add them to a transmittal. Each transmittal can have a recipients list which will be used when the transmittal is electronically submitted.

Currently, the API supports working with documents defined as transmittals within CINX.

Supported API Services

Get Project Transmittals

API Endpoint – Get a Project's Transmittals

{
 "response": {},
 "rows": [{
  "cinx_guid": "0229f4de-65bf-531a-be48-d1aebc372f07",
  "number": "TRAN-030220",
  "revision": "1",
  "name": "TRAN-030220",
  "description": "Valve Spec Sheets",
  "workflow_status": "SUBMITTED",
  "project_number": "PRJ-2019-13",
  "project_name": "PRJ-2019-13",
  "date_due": "2020-03-12",
  "date_submitted": "2020-03-02",
  "date_created": "2020-03-02",
  "date_modified": "2020-03-02",
  "document": {
    "mime_type": "application/pdf",
    "url": "http://5f062a51145e77536a19-9611898491c752c3179a567caf577a77.r87.cf1.rackcdn.com/TRAN_030220__20200302160457.pdf",
    "submittal_count": 7
 }}]
}

GET

This endpoint will be used to get a listing of a project's transmittals.

URL Pattern: {api path}/{api_version}/sub/{api_token}/project/{project_guid}/transmittals

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/project/7880c854-017f-5359-96de-fdef626c33cf/transmittals

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
workflow Limits results to a specific workflow status. CREATED, APPROVED FOR SUBMISSION, SUBMITTED
number Limits results to a specified transmittal number. {transmittal_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 10 will be used. Integer

Get Transmittal

API Endpoint – Get a Project Transmittal

{
  "response": {},
  "rows": [{
    "cinx_guid": "2dc90e17-bbdc-59fa-8845-ee80bdfdec74",
    "locked": "0",
    "number": "TRAN-200301A",
    "revision": "1",
    "name": "TRAN-200301A",
    "description": "Valve Spec Sheets",
    "workflow_status": "SUBMITTED",
    "delivery_type": "CINX",
    "remarks": "Please review ASAP.  We need to order these soon.",
    "dates": {
      "created": "2020-03-02",
      "last_modified": "2020-03-02",
      "due": "2020-03-20",
      "submitted": "2020-03-02"
    },
    "project": {
      "guid": "eac76f6c-a988-5b53-a987-58e4bc01bd66",
      "name": "PRJ-2019-13",
      "number": "PRJ-2019-13"
    },
    "document": {
      "cinx_guid": "c3ea0b9b-5e6d-5caa-bcb3-4a42344bc9d1",
      "url": "http://5f062a51145e77536a19-9611898491c752c3179a567caf577a77.r87.cf1.rackcdn.com/TRAN_200301A__20200302210151.pdf",
      "mime_type": "application/pdf",
      "submittal_count": 2
    },
    "submittals": [{
        "cinx_guid": "d894dd54-c489-57ba-a62b-98590ca0d2ea",
        "revision": "1",
        "description": "Autogeneration File",
        "url": "http://cdn.dev.cinx.biz/submittals/org-0001-4030/5bd72c4ede78090bbd5e9c8f.pdf",
        "mime_type": "application/pdf",
        "date_created": "2020-03-02",
        "creator": {
          "guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
          "name": "Will Stone",
          "email": "willstone@cinx.com"
        }
      },
      {
        "cinx_guid": "4e3ba9ff-d189-51a7-9ad2-511c4c058413",
        "revision": "1",
        "description": "Autogeneration File",
        "url": "http://cdn.dev.cinx.biz/submittals/org-0001-4030/5bd9b461de78090dac7d35b9.pdf",
        "mime_type": "application/pdf",
        "date_created": "2020-03-02",
        "creator": {
          "guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
          "name": "Will Stone",
          "email": "willstone@cinx.com"
        }
      }
    ],
    "participants": [{
      "cinx_guid": "d89f99cd-99da-50d8-94e7-91314d95ec86",
      "name": "David McPhaul",
      "email": "dmcphaul@hphguide.com",
      "phone": "6034440820",
      "org_name": "HPH",
      "org_type": "ENGINEER"
    }],
    "attributes": []
  }]
}

GET

This endpoint will be used to get the details of a specific project transmittal.

URL Pattern: {api path}/{api_version}/sub/{api_token}/transmittal/{transmittal_guid}/

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/transmittal/cd204035-368e-5677-838b-17d7506c4523

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Requisitions

Req Definition

CINX Object Definition - Requisition

A CINX Material Requisition is a compilation of parts that need to be purchased. The list might be for a whole project, phase, system, pre-fab work-order, spool, or a general list created by a project foreman in the field. The parts on a requisition might also contain items from multiple projects that are combined into one purchase to achieve volume pricing.

It is important to understand that the parts on a requisition may be divided onto different purchase orders which might be sent to different vendors.

Dependencies and Business Rules

Supported API Services

Get Req List

API Endpoint - Get a List of Requisitions

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getReqs(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "e98e2fc5-f59b-5091-8b05-54edaa9284cc",
            "number": "R-101",
            "name": "req-101",
            "description": "Sample Req Description",
            "tx_sub_type": "FIELD",
            "assigned_to": "Karl Stone",
            "procurement_status": "SUBMITTED",
            "submitter": "Will Stone",
            "date_submitted": "2019-06-12",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "JOB SITE",
            "delivery_location_name": null,
            "date_need_by": "2019-06-14",
            "vendor_number": "N-123",
            "vendor_name": "National Sales Company",
            "project_number": "WTS-2017-04",
            "project_name": "HPH Fab Shop Air System",
            "phase": "First Floor",
            "material_cost_code": "101-1025",
            "category": "MAT",
            "work_order": null,
            "spool": null,
            "allow_substitutes": true,
            "external_references": [],
            "item_count": 4
        }
    ]
}

GET

This endpoint will be used to get a list of requisitions. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/reqs

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/reqs

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
procurement Limits results to a specific procurement status. OPEN, SUBMITTED, IN-REVIEW, APPROVED, APPROVED W/MODS, REJECTED, PENDING ORDER, COMPLETE, CLOSED, CANCELLED, RESUBMITTED
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Req

API Endpoint - Get a Requisition

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getReq(cinx_api_token, req_guid)
    .then(function(response) {
        console.log(response);
    });
{
    "response": {},
    "rows": [{
        "cinx_guid": "40b43924-e7b8-5827-935e-14bd70c1d04e",
        "locked": "0",
        "number": "REQ-0005",
        "name": "REQ-TEST EMS",
        "description": null,
        "tx_sub_type": "SHOP",
        "user_comment": null,
        "procurement_status": "OPEN",
        "allow_substitutes": true,
        "item_count": 8,
        "assigned_to": {
            "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
            "name": "Will Stone",
            "email": "willstone@cinx.com"
        },
        "submitter": {
            "cinx_quid": null,
            "name": null,
            "email": null
        },
        "dates": {
            "created": "2019-08-06",
            "last_modified": "2019-08-06",
            "submitted": null,
            "need_by": null,
            "approved": null,
            "closed": null
        },
        "vendor": {
            "cinx_commerce_guid": "9a13fcca-e6ae-524f-95dd-0f4d7d26930f",
            "number": "99999",
            "name": "Keegan Supply"
        },
        "project": {
            "cinx_guid": "e1e3cb54-b00a-55ae-a079-072732542bf4",
            "number": "WTS-2017-04",
            "name": "WTS-2017-04 - ATC Denver"
        },
        "delivery": {
            "address1": "995 Industrial Park Rd",
            "address2": "",
            "address3": "",
            "city": "Littleton",
            "state": "NH",
            "postal_code": "03561",
            "country": "USA",
            "ship_via": "MOTOR COMMON CARRIER",
            "fob_type": null,
            "ship_from": null,
            "attention": null,
            "location_type": "OFFICE",
            "location_name": null,
            "instructions": null
        },
        "job_cost_defaults": {
            "cinx_phase_guid": null,
            "phase_name": null,
            "cinx_material_cost_code_guid": null,
            "material_cost_code": null,
            "cinx_category_guid": null,
            "category_name": null
        },
        "taxes": {
            "taxable": true,
            "cinx_guid": null,
            "tax_group_name": null
        },
        "external_references": [],
        "items": [{
                "cinx_guid": "090e00f4-b942-5234-acc0-4ead0b2e3538",
                "sequence": 1,
                "order_status": "REQUEST PENDING",
                "quantity": 1,
                "date_need_by": "",
                "order_lead_time": null,
                "date_order_by": "",
                "allow_substitutes": true,
                "hph_code": "512EK0232",
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": "10020189",
                "upc": "683264201897",
                "size": "1-3/8\"",
                "description": "1-3/8\" ACR CXC 45 ELBOW",
                "mfr_name": "Elkhart Products Corporation",
                "item_type": "MATERIAL",
                "vendor": {
                    "cinx_commerce_guid": null,
                    "number": null,
                    "name": null,
                    "item_id": null,
                    "system_id": null
                },
                "project": {
                    "cinx_guid": null,
                    "number": null,
                    "name": null
                },
                "delivery": {
                    "deliver_to": null,
                    "location_type": "JOBSITE",
                    "location_name": null,
                    "instructions": null,
                    "labeling_instructions": null,
                    "packaging_instructions": null
                },
                "work_breakdown": {
                    "work_order_id": null,
                    "work_order_name": null,
                    "spool_id": null,
                    "spool_name": null,
                    "building_name": null,
                    "level": null,
                    "space": null,
                    "sub_space": null,
                    "system": null,
                    "arch_symbol": null,
                    "tag": null
                },
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": null,
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code": null,
                    "cinx_category_guid": null,
                    "category_name": null
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": null,
                    "tax_group_name": null
                },
                "design": {
                    "model_item_guid": null,
                    "model_name": null,
                    "model_file": null,
                    "drawing_number": null,
                    "drawing_name": null
                },
                "attributes": []
            }
        ]
    }]
}

GET

This endpoint will be used to get the details of a specific requisition. Note: This response will include the requisition’s items.

URL Pattern: {api path}/{api_version}/sub/{api_token}/req/{cinx_guid}

The cinx_guid will be the requisition’s CINX Id.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/req/e73c118f-1ee9-57e0-9c79-1775c1a04b81

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Req Template

API Endpoint - Get a Requisition Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getReqTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "number": null,
            "name": null,
            "description": null,
            "tx_sub_type": null,
            "user_comment": null,
            "procurement_status": "OPEN",
            "allow_substitutes": true,
            "cinx_user_guid_assign_to": null,
            "dates": {
                "need_by": null,
                "approved": null,
                "closed": null
            },
            "vendor": {
                "cinx_commerce_guid": null,
                "number": null
            },
            "project": {
                "cinx_guid": null,
                "number": null
            },
            "delivery": {
                "address1": null,
                "address2": null,
                "address3": null,
                "city": null,
                "state": null,
                "postal_code": null,
                "country": "USA",
                "ship_via": null,
                "fob_type": null,
                "ship_from": null,
                "attention": null,
                "location_type": "JOB SITE",
                "location_name": null,
                "instructions": null
            },
            "job_cost_defaults": {
                "cinx_phase_guid": null,
                "phase_name": null,
                "cinx_material_cost_code_guid": null,
                "material_cost_code_name": null,
                "cinx_category_guid": null,
                "category_name": null
            },
            "taxes": {
                "taxable": true,
                "cinx_guid": null,
                "tax_group_name": null
            },
            "external_references": [{
                "type": null,
                "description": null,
                "value": null
            }],
            "items": [{
                "cinx_guid": null,
                "quantity": 1,
                "date_need_by": null,
                "allow_substitutes": true,
                "hph_code": null,
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": null,
                "upc": null,
                "size": null,
                "description": null,
                "mfr_name": null,
                "item_type": null,
                "vendor": {
                    "cinx_commerce_guid": null,
                    "number": null
                },
                "project": {
                    "cinx_guid": null,
                    "number": null
                },
                "delivery": {
                    "deliver_to": null,
                    "location_type": "JOB SITE",
                    "instructions": null,
                    "labeling_instructions": null,
                    "packaging_instructions": null
                },
                "work_breakdown": {
                    "work_order_id": null,
                    "work_order_name": null,
                    "spool_id": null,
                    "spool_name": null,
                    "building_name": null,
                    "level": null,
                    "space": null,
                    "sub_space": null,
                    "system": null,
                    "arch_symbol": null,
                    "tag": null
                },
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": null,
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code_name": null,
                    "cinx_category_guid": null,
                    "category_name": null
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": null,
                    "tax_group_name": null
                },
                "design": {
                    "model_item_guid": null,
                    "model_name": null,
                    "model_file": null,
                    "drawing_number": null,
                    "drawing_name": null
                },
                "attributes": [
                    {
                        "name": null,
                        "value": null
                    }]
            }]
        },
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for a requisition.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/req

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/req

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
number String Yes Public number for the object.
name String Yes Public name for the object.
description String No Public description for the object.
tx_sub_type String No Used to define the specific type of requisition. See template for available options.
user_comment String No General comment defined by a CINX user.
procurement_status String Yes OPEN Status used to track the procurement activities of the requisition. Template has a list of optional values.
allow_substitutes Boolean Yes TRUE Transaction level default used to indicate if the items on the requisition can be sourced from an alternate manufacturer.
cinx_user_guid_assign_to String (GUID Format) No CINX Id for the user to whom the requisition should be assigned.
dates.need_by Date (YYYY-MM-DD) No Date the products on the requisition need to be delivered to the specified delivery location.
dates.approved Date (YYYY-MM-DD) No Date the requisition was approved for ordering.
dates.closed Date (YYYY-MM-DD) No Date the requisition was closed.
vendor.cinx_commerce_guid String (GUID Format) No Transaction level default. CINX Commerce Id for the requested vendor.
vendor.number String No Transaction level default. The public number of the vendor from whom the requester would like the products to be sourced.
project.cinx_guid String (GUID Format) No Transaction level default. CINX Project Id.
project.number String No Transaction level default. The public number of the project from which the items are being requested.
delivery.address1 String No Address 1 value for the location to which the products on the requisition are to be delivered.
delivery.address2 String No Address 2 value for the location to which the products on the requisition are to be delivered.
delivery.address3 String No Address 3 value for the location to which the products on the requisition are to be delivered.
delivery.city String No City to which the products on the requisition are to be delivered.
delivery.state String No State to which the products on the requisition are to be delivered. Two-character alpha abbreviation.
delivery.postal_code String No Postal/Zip Code to which the products on the requisition are to be delivered.
delivery.country String Yes USA Country to which the products on the requisition are to be delivered. Three-character alpha abbreviation.
delivery.ship_via String No How the products are to be delivered or otherwise acquired. Template has a list of optional values.
delivery.fob_type String No F.O.B. Type. Template has a list of optional values.
delivery.ship_from String No Location from which the requester would like the materials on the requisition to be shipped.
delivery.attention String No User-defined delivery attention.
delivery.location_type String Yes JOB SITE Transaction level default. Type of location where the requester would like the materials delivered. Template has a list of optional values.
delivery.location_name String No Name of the location where the requester would like the materials delivered.
job_cost_defaults.cinx_phase_guid String (GUID Format) No Transaction level default. CINX Id for the Phase/Sub-Job assigned to the items on the requisition.
job_cost_defaults.phase_name String No Transaction level default. Name for the Phase/Sub-Job assigned to the items on the requisition.
job_cost_defaults.cinx_material_cost_code_guid String (GUID Format) No Transaction level default. CINX Id for the Material Cost Code assigned to the items on the requisition.
job_cost_defaults.material_cost_code_name String No Transaction level default. Name for the Material Cost Code assigned to the items on the requisition.
job_cost_defaults.cinx_category_guid String (GUID Format) No Transaction level default. CINX Id for the Category assigned to the items on the requisition.
job_cost_defaults.category_name String No Transaction level default. Name for the Category assigned to the items on the requisition.
taxes.taxable Boolean Yes TRUE Transaction level default. Indicator defining if the products on the requisition are taxable.
taxes.cinx_guid String (GUID Format) No Transaction level default. CINX Id for the Tax Group assigned to the items on the requisition.
taxes.tax_group_name String No Transaction level default. Name for the Tax Group assigned to the items on the requisition.
external_references.type String No Non-CINX system reference type.
external_references.description String No Non-CINX system reference description.
external_references.value String No Non-CINX system reference value.
items.cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
items.quantity Real Yes 1 Quantity of the item that needs to be ordered.
items.date_need_by Date (YYYY-MM-DD) No Date the product needs to be delivered to the specified delivery location.
items.allow_substitutes Boolean Yes TRUE Indicator if the product can be sourced from an alternate manufacturer.
items.hph_code String No HPH Item Code for the item that needs to be ordered.
items.org_item_id String No The requesting company's Org Item Id for the product that needs to be ordered. User-friendly code.
items.org_system_id String No The requesting company's Org System Item Id for the product that needs to be ordered. Unique Id code.
items.mfr_part_number String No Manufacturer-defined Part/Catalog Number for the product that needs to be ordered.
items.upc String No Manufacturer-defined UPC Number for the product that needs to be ordered.
items.size String No Size of the item that needs to be ordered.
items.description String No Description of the item that needs to be ordered.
items.mfr_name String No Name of the manufacturer or fabricator that produces the item that needs to be ordered.
items.item_type String No Classification name of the item that needs to be ordered.
items.vendor.cinx_commerce_guid String (GUID Format) No CINX Commerce Id for the requested vendor.
items.vendor.number String No The public number of the vendor from whom the requester would like the product to be sourced.
items.project.cinx_guid String No CINX Project Id.
items.project.number String No The public number of the project from which the item are being requested.
items.delivery.deliver_to String No Deliver To text.
items.delivery.location_type String Yes JOB SITE Where the requester would like the product to be delivered. Template has a list of optional values.
items.delivery.instructions String No Delivery instructions the requester would like submitted to the vendor responsible for delivering the item.
items.delivery.labeling_instructions String No Labeling instructions the requester would like submitted to the vendor responsible for delivering the item.
items.delivery.packaging_instructions String No Packaging instructions the requester would like submitted to the vendor responsible for delivering the item.
items.work_breakdown.work_order_id String No Contractor defined Work Order Id that was assigned to the product.
items.work_breakdown.work_order_name String No Contractor defined Work Order Name that was assigned to the product.
items.work_breakdown.spool_id String No Contractor defined Spool Id that was assigned to the product.
items.work_breakdown.spool_name String No Contractor defined Spool Name that was assigned to the product.
items.work_breakdown.building_name String No Name of the building in which the product will be installed.
items.work_breakdown.level String No Level of the building in which the product will be installed.
items.work_breakdown.space String No Space of the building in which the product will be installed.
items.work_breakdown.sub_space String No Sub-space of the building in which the product will be installed.
items.work_breakdown.system String No Name of the system in which the product will be installed.
items.work_breakdown.arch_symbol String No Architectural symbol of the product.
items.work_breakdown.tag String No Text of what should appear on a tag for the item.
items.job_cost.cinx_phase_guid String (GUID Format) No CINX Id for the Phase/Sub-Job assigned to the item.
items.job_cost.phase_name String No Name for the Phase/Sub-Job assigned to the item.
items.job_cost.cinx_material_cost_code_guid String (GUID Format) No CINX Id for the Material Cost Code assigned to the item.
items.job_cost.material_cost_code_name String No Name for the Material Cost Code assigned to the item.
items.job_cost.cinx_category_guid String (GUID Format) No CINX Id for the Category assigned to the item.
items.job_cost.category_name String No Name for the Category assigned to the item.
items.taxes.taxable Boolean Yes TRUE Indicator defining if the product is taxable.
items.taxes.cinx_guid String (GUID Format) No CINX Id for the Tax Group assigned to the item.
items.taxes.tax_group_name String No Name of the Tax Group assigned to the item.
items.design.model_item_guid String (GUID Format) No Id assigned by the authoring system that placed the item in the model.
items.design.model_name String No Name of the model in which the item is located.
items.design.model_file String No File name of the model in which the item is located.
items.design.drawing_number String No Number of the drawing on which the item is located.
items.design.drawing_name String No Name of the drawing on which the item is located.
items.attributes.name String No Name of the attribute.
items.attributes.value String No Value of the attribute.

Get Req Number

API Endpoint - Get a New Requisition Number

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getReqNumber(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "req": "REQ-0003"
        }
    ]
}

GET

This endpoint will be used to get a value to be used in the number field of a new requisition.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/auto-number/req

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/auto-number/req

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Create Req

API Endpoint - Create a New Requisition

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//requisitionObject can be created based on the template retrieved from cinxApi.getReqTemplate(cinx_api_token) call
cinxApi.postReq(cinx_api_token, requisitionObject, true)
            .then(function (response) {
                console.log(response);
            });

POST

This endpoint will be used to create a new requisition.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-req-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json
synchronous Switch to have the payload processed synchronously. 1

Modify Req

API Endpoint - Modify a Requisition

PUT

This API call will be used to modify an existing CINX requisition.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-req-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json
synchronous Switch to have the payload processed synchronously. 1

RFQs

RFQ Definition

CINX Object Definition - Request for Quotation

A CINX Request for Quotation is a compilation of that a customer wants a vendor(s) to provide pricing on before making ordering/sourcing decisions. The list might be for a whole project, phase, system, pre-fab work-order, spool, or a general list created by a project foreman in the field.

Dependencies and Business Rules

Supported API Services

Get RFQ List

API Endpoint - Get a List of RFQs

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "f823d544-15dc-551f-94f9-f04283bfddb0",
            "number": "RFQ-1254",
            "name": "RFQ-1254",
            "description": "Sample RFQ Description Text",
            "workflow_status": "SUBMITTED",
            "submitter": "Will Stone",
            "date_submitted": "2019-06-01",
            "date_respond_by": "2019-06-03",
            "vendors": [
                {
                    "number": "H125",
                    "name": "Hilti",
                    "tx_docs": [{
                            "type": "XLS RFQ",
                            "description": "Excel (xls) version of RFQ",
                            "value": "https://api.cinx.com/sub/12021401-f5e9-5326-b0bc-49a869ae5f23/ncds/c25fba39-50ff-5876-91ea-fcd2c1447500/54f45909-9cc3-50dd-b103-a51d5905df0e/247f71e1-84ed-54af-9e3c-6d994349cf4d"
                    }]
                }
            ],
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "OFFICE",
            "delivery_location_name": null,
            "date_need_by": "2019-06-08",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "req_number": null,
            "req_name": null,
            "phase": null,
            "material_cost_code": null,
            "category": null,
            "external_references": [],
            "item_count": 113
        }
    ]
}

GET

This endpoint will be used to get a list of RFQs. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/rfqs

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/rfqs

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, QUOTED
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get RFQ

API Endpoint - Get an RFQ

{
    "response": {},
    "rows": [{
        "cinx_guid": "a71e023c-f809-5a51-a51f-d4546ed0c9fd",
        "locked": "1",
        "number": "",
        "name": "TestNSCXRef",
        "description": "",
        "terms": null,
        "user_comment": "",
        "workflow_status": "SUBMITTED",
        "item_count": 3,
        "submitter": {
            "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
            "name": "Will Stone",
            "email": "willstone@cinx.com"
        },
        "dates": {
            "created": "2019-03-29",
            "last_modified": "2019-03-29",
            "respond_by": "2019-03-30",
            "need_by": null,
            "submitted": "2019-03-29",
            "quoted": null
        },
        "customer": {
            "cinx_commerce_guid": null,
            "number": null,
            "name": "WTS Mechanical -DEV"
        },
        "vendors": [{
            "cinx_commerce_guid": "de0cf849-6f7b-5df6-9ae9-f924659f2d25",
            "number": "CXV101",
            "name": "National Sales Company"
        }],
        "project": {
            "cinx_guid": null,
            "number": null,
            "name": null
        },
        "requisition": {
            "cinx_guid": null,
            "number": null,
            "name": null
        },
        "delivery": {
            "address1": "995 Industrial Park Rd",
            "address2": "",
            "address3": "",
            "city": "Littleton",
            "state": "NH",
            "postal_code": "03561",
            "country": "USA",
            "ship_via": null,
            "fob_type": null,
            "ship_from": null,
            "attention": null,
            "location_type": "JOB SITE",
            "location_name": null,
            "instructions": null
        },
        "job_cost_defaults": {
            "cinx_phase_guid": null,
            "phase_name": null,
            "cinx_material_cost_code_guid": null,
            "material_cost_code": null,
            "cinx_category_guid": null,
            "category_name": null
        },
        "taxes": {
            "taxable": true,
            "cinx_id": null,
            "tax_group_name": null
        },
        "external_references": [],
        "items": [{
                "cinx_guid": "ca43c356-f686-5211-92ca-484d4ad4ef08",
                "sequence": 1,
                "quantity": 1,
                "date_need_by": null,
                "allow_substitutes": true,
                "hph_code": "012NI0010",
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": "9055450",
                "upc": "039923312723",
                "size": "1/2\"",
                "description": "1/2\" WROT CXC 90 ELBOW",
                "mfr_name": "NIBCO, Inc.",
                "item_type": "MATERIAL",
                "project": {
                    "cinx_guid": null,
                    "number": null,
                    "name": null
                },
                "requisition": {
                    "cinx_guid": null,
                    "number": null,
                    "name": null
                },
                "delivery": {
                    "deliver_to": null,
                    "location_type": "JOBSITE",
                    "instructions": null,
                    "labeling_instructions": null,
                    "packaging_instructions": null
                },
                "work_breakdown": {
                    "work_order_id": null,
                    "work_order_name": null,
                    "spool_id": null,
                    "spool_name": null,
                    "building_name": null,
                    "level": null,
                    "space": null,
                    "sub_space": null,
                    "system": null,
                    "arch_symbol": null,
                    "tag": null
                },
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": null,
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code": null,
                    "cinx_category_guid": null,
                    "category_name": null
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": null,
                    "tax_group_name": null,
                    "tax_type": null,
                    "tax_rate": 0,
                    "tax_amount": 0
                },
                "design": {
                    "model_item_guid": null,
                    "model_name": null,
                    "model_file": null,
                    "drawing_number": null,
                    "drawing_name": null
                },
                "attributes": []
            }
        ]
    }]
}

GET

This endpoint will be used to get the details of a specific RFQ. Note: This response will include the RFQ’s items.

URL Pattern: {api path}/{api_version}/sub/{api_token}/rfq/{cinx_guid}

The cinx_guid will be the RFQ’s CINX Id.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/rfq/e73c118f-1ee9-57e0-9c79-1775c1a04b81

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get RFQ Template

API Endpoint - Get an RFQ Template

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "number": null,
            "name": null,
            "description": null,
            "terms": null,
            "user_comment": null,
            "dates": {
                "respond_by": null,
                "need_by": null,
                "submitted": null
            },
            "vendors": [{
                "cinx_commerce_guid": null,
                "number": null
            }],
            "project": {
                "cinx_guid": null,
                "number": null
            },
            "delivery": {
                "address1": null,
                "address2": null,
                "address3": null,
                "city": null,
                "state": null,
                "postal_code": null,
                "country": "USA",
                "ship_via": null,
                "fob_type": null,
                "ship_from": null,
                "attention": null,
                "location_type": "JOB SITE",
                "location_name": null,
                "instructions": null
            },
            "job_cost_defaults": {
                "cinx_phase_guid": null,
                "phase_name": null,
                "cinx_material_cost_code_guid": null,
                "material_cost_code_name": null,
                "cinx_category_guid": null,
                "category_name": null
            },
            "taxes": {
                "taxable": true,
                "cinx_id": null,
                "tax_group_name": null
            },
            "external_references": [{
                "type": null,
                "description": null,
                "value": null
            }],
            "items": [{
                "cinx_guid": null,
                "quantity": 1,
                "date_need_by": null,
                "allow_substitutes": "true",
                "hph_code": null,
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": null,
                "upc": null,
                "size": null,
                "description": null,
                "mfr_name": null,
                "item_type": null,
                "vendor": {
                    "cinx_commerce_guid": null,
                    "number": null
                },
                "project": {
                    "cinx_guid": null,
                    "number": null
                },
                "delivery": {
                    "deliver_to": null,
                    "location_type": "JOB SITE",
                    "instructions": null,
                    "labeling_instructions": null,
                    "packaging_instructions": null
                },
                "work_breakdown": {
                    "work_order_id": null,
                    "work_order_name": null,
                    "spool_id": null,
                    "spool_name": null,
                    "building_name": null,
                    "level": null,
                    "space": null,
                    "sub_space": null,
                    "system": null,
                    "arch_symbol": null,
                    "tag": null
                },
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": null,
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code_name": null,
                    "cinx_category_guid": null,
                    "category_name": null
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": null,
                    "tax_group_name": null
                },
                "design": {
                    "model_item_guid": null,
                    "model_name": null,
                    "model_file": null,
                    "drawing_number": null,
                    "drawing_name": null
                },
                "attributes": [
                    {
                        "name": null,
                        "value": null
                    }]
            }]
        },
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for an RFQ.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/rfq

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/rfq

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
number String Yes Public number for the object.
name String Yes Public name for the object.
description String No Public description for the object.
terms String No Transaction terms.
user_comment String No General comment defined by a CINX user.
dates.respond_by Date (YYYY-MM-DD) No Date the requester would like the vendor to provide the quoted prices.
dates.need_by Date (YYYY-MM-DD) No Date the products on the RFQ need to be delivered to the specified delivery location.
dates.submitted Date (YYYY-MM-DD) No Date the RFQ was submitted to the vendor. Field is not modifiable.
vendor.cinx_commerce_guid String (GUID Format) No CINX Commerce Id for the vendor that will receive the RFQ.
vendor.number String No The public number of the vendor that will receive the RFQ.
project.cinx_guid String (GUID Format) No CINX Project Id.
project.number String No The public number of the project for which the items are linked.
delivery.address1 String No Address 1 value for the location to which the products on the RFQ are to be delivered.
delivery.address2 String No Address 2 value for the location to which the products on the RFQ are to be delivered.
delivery.address3 String No Address 3 value for the location to which the products on the RFQ are to be delivered.
delivery.city String No City to which the products on the RFQ are to be delivered.
delivery.state String No State to which the products on the RFQ are to be delivered. Two-character alpha abbreviation.
delivery.postal_code String No Postal/Zip Code to which the products on the RFQ are to be delivered.
delivery.country String Yes USA Country to which the products on the RFQ are to be delivered. Three-character alpha abbreviation.
delivery.ship_via String No How the products are to be delivered or otherwise acquired. Template has a list of optional values.
delivery.fob_type String No F.O.B. Type. Template has a list of optional values.
delivery.ship_from String No Location from which the requester would like the materials on the RFQ to be shipped.
delivery.attention String No User-defined delivery attention.
delivery.location_type String Yes JOB SITE Type of location where the requester would like the materials delivered. Template has a list of optional values.
delivery.Instructions String No General delivery instructions to be used on an order.
job_cost_defaults.cinx_phase_guid String (GUID Format) No Transaction level default. CINX Id for the Phase/Sub-Job assigned to the items on the RFQ.
job_cost_defaults.phase_name String No Transaction level default. Name for the Phase/Sub-Job assigned to the items on the RFQ.
job_cost_defaults.cinx_material_cost_code_guid String (GUID Format) No Transaction level default. CINX Id for the Material Cost Code assigned to the items on the RFQ.
job_cost_defaults.material_cost_code_name String No Transaction level default. Name for the Material Cost Code assigned to the items on the RFQ.
job_cost_defaults.cinx_category_guid String (GUID Format) No Transaction level default. CINX Id for the Category assigned to the items on the RFQ.
job_cost_defaults.category_name String No Transaction level default. Name for the Category assigned to the items on the RFQ.
taxes.taxable Boolean Yes TRUE Transaction level default. Indicator defining if the products on the RFQ are taxable.
taxes.cinx_guid String (GUID Format) No Transaction level default. CINX Id for the Tax Group assigned to the items on the RFQ.
taxes.tax_group_name String No Transaction level default. Name for the Tax Group assigned to the items on the RFQ.
external_references.type String No Non-CINX system reference type.
external_references.description String No Non-CINX system reference description.
external_references.value String No Non-CINX system reference value.
items.cinx_guid String (GUID Format) POST = No; Put = Yes CINX System Id.
items.quantity Real Yes 1 Quantity of the item.
items.date_need_by Date (YYYY-MM-DD) No Date the product needs to be delivered to the specified delivery location.
items.allow_substitutes Boolean Yes TRUE Indicator if the product can be sourced from an alternate manufacturer.
items.hph_code String No HPH Item Code for the item.
items.org_item_id String No The requesting company's Org Item Id. User-friendly code.
items.org_system_id String No The requesting company's Org System Item Id. Unique Id code.
items.mfr_part_number String No Manufacturer-defined Part/Catalog Number.
items.upc String No Manufacturer-defined UPC Number.
items.size String No Size of the item.
items.description String No Description of the item.
items.mfr_name String No Name of the manufacturer or fabricator that produces the item.
items.item_type String No Classification name of the item.
items.project.cinx_guid String No CINX Project Id.
items.project.number String No The public number of the project.
items.delivery.ship_via String No How the product is to be delivered or otherwise acquired. Template has a list of optional values.
items.delivery.deliver_to String No Deliver To text.
items.delivery.location_type String Yes JOB SITE Where the requester would like the product to be delivered. Template has a list of optional values.
items.delivery.instructions String No Delivery instructions to be submitted to the vendor responsible for delivering the item.
items.delivery.labeling_instructions String No Labeling instructions to be submitted to the vendor responsible for delivering the item.
items.delivery.packaging_instructions String No Packaging instructions to be submitted to the vendor responsible for delivering the item.
items.work_breakdown.work_order_id String No Contractor defined Work Order Id that was assigned to the product.
items.work_breakdown.work_order_name String No Contractor defined Work Order Name that was assigned to the product.
items.work_breakdown.spool_id String No Contractor defined Spool Id that was assigned to the product.
items.work_breakdown.spool_name String No Contractor defined Spool Name that was assigned to the product.
items.work_breakdown.building_name String No Name of the building in which the product will be installed.
items.work_breakdown.level String No Level of the building in which the product will be installed.
items.work_breakdown.space String No Space of the building in which the product will be installed.
items.work_breakdown.sub_space String No Sub-space of the building in which the product will be installed.
items.work_breakdown.system String No Name of the system in which the product will be installed.
items.work_breakdown.arch_symbol String No Architectural symbol of the product.
items.work_breakdown.tag String No Text of what should appear on a tag for the item.
items.job_cost.cinx_phase_guid String (GUID Format) No CINX Id for the Phase/Sub-Job assigned to the item.
items.job_cost.phase_name String No Name for the Phase/Sub-Job assigned to the item.
items.job_cost.cinx_material_cost_code_guid String (GUID Format) No CINX Id for the Material Cost Code assigned to the item.
items.job_cost.material_cost_code_name String No Name for the Material Cost Code assigned to the item.
items.job_cost.cinx_category_guid String (GUID Format) No CINX Id for the Category assigned to the item.
items.job_cost.category_name String No Name for the Category assigned to the item.
items.taxes.taxable Boolean Yes TRUE Indicator defining if the product is taxable.
items.taxes.cinx_guid String (GUID Format) No CINX Id for the Tax Group assigned to the item.
items.taxes.tax_group_name String No Name of the Tax Group assigned to the item.
items.design.model_item_guid String (GUID Format) No Id assigned by the authoring system that placed the item in the model.
items.design.model_name String No Name of the model in which the item is located.
items.design.model_file String No File name of the model in which the item is located.
items.design.drawing_number String No Number of the drawing on which the item is located.
items.design.drawing_name String No Name of the drawing on which the item is located.
items.attributes.name String No Name of the attribute.
items.attributes.value String No Value of the attribute.

Get RFQ Number

API Endpoint - Get a New RFQ Number

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.getRfqNumber(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "rfq": "RFQ-0001"
        }
    ]
}

GET

This endpoint will be used to get a value to be used in the number field of a new RFQ.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/auto-number/rfq

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/auto-number/rfq

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Create RFQ

API Endpoint - Create a New RFQ

POST

This endpoint will be used to create a new RFQ.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-rfq-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json
synchronous Switch to have the payload processed synchronously. 1

Modify RFQ

API Endpoint - Modify an RFQ

PUT

This API endpoint will be used to modify an existing CINX RFQ.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-rfq-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
synchronous Switch to have the payload processed synchronously. 1

Get RFQ Quotes

API Endpoint - Get a List of Quotes for an RFQ

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "1eb08930-8744-5213-90f0-3ad63a216b20",
        "number": "Q19-789456",
        "name": "Q19-789456",
        "description": "",
        "workflow_status": "RECEIVED",
        "vendor_number": "99999",
        "vendor_name": "Keegan Supply",
        "submitted_by": "eb stone",
        "date_received": "2019-07-25",
        "date_expires": "2019-08-26",
        "date_requested": "",
        "links": [],
        "project_number": "WTS-2019-06",
        "project_name": "HPH HQ Renovation",
        "rfq_number": "RFQ-456464",
        "rfq_name": "RFQ-456464",
        "item_count": 11
    }]
}

GET

This endpoint will be used to get a list of Quotes for a specified RFQ.

URL Pattern: {api path}/{api_version}/sub/{api_token}/rfq/{rfq_guid}/quotes

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/rfq/8902980f-4a4f-504c-8fc3-2e71067ab59b/quotes

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ERP PENDING, ERP ACCEPTED, ERP FAILED
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_uer_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml

Quotes

Quote Definition

CINX Object Definition - Quote

A CINX Quote is a document a vendor prepares in response to a customer’s Request for Quotation. Quotes will contain the net prices a customer will pay if they place an order.

Supported API Services

Get Quote List

API Endpoint - Get a List of Quotes

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "1eb08930-8744-5213-90f0-3ad63a216b20",
        "number": "Q19-789456",
        "name": "Q19-789456",
        "description": "",
        "workflow_status": "RECEIVED",
        "vendor_number": "99999",
        "vendor_name": "Keegan Supply",
        "submitter": "eb stone",
        "date_received": "2019-07-25",
        "date_expires": "2019-08-26",
        "date_requested": "",
        "project_number": "WTS-2019-06",
        "project_name": "HPH HQ Renovation",
        "rfq_number": "RFQ-456464",
        "rfq_name": "RFQ-456464",
        "links": [],
        "item_count": 11
    }]
}

GET

This endpoint will be used to get a list of quotes. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/quotes

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/quotes

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ERP PENDING, ERP ACCEPTED, ERP FAILED
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Quote List for a RFQ

API Endpoint - Get a List of Quotes for a Given RFQ

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "1eb08930-8744-5213-90f0-3ad63a216b20",
        "number": "Q19-789456",
        "name": "Q19-789456",
        "description": "",
        "workflow_status": "RECEIVED",
        "vendor_number": "99999",
        "vendor_name": "Keegan Supply",
        "submitter": "eb stone",
        "date_received": "2019-07-25",
        "date_expires": "2019-08-26",
        "date_requested": "",
        "project_number": "WTS-2019-06",
        "project_name": "HPH HQ Renovation",
        "rfq_number": "RFQ-456464",
        "rfq_name": "RFQ-456464",
        "links": [],
        "item_count": 11
    }]
}

GET

This endpoint will be used to get a list of quotes for a specific RFQ.

URL Pattern: {api path}/{api_version}/sub/{api_token}/rfq/{rfq guid}/quotes

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/rfq/eff2e2e0-a042-5839-8b45-770559abbb53/quotes

Get Quote

API Endpoint - Get a Quote

GET

This endpoint will be used to get the details of a specific quote. Note: This response will include the quote’s items.

URL Pattern: {api path}/{api_version}/sub/{api_token}/quote/{cinx_guid}

The cinx_guid will be the quote’s CINX Id.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/quote/e73c118f-1ee9-57e0-9c79-1775c1a04b81

{
    "response": {},
    "rows": [{
        "cinx_guid": "1eb08930-8744-5213-90f0-3ad63a216b20",
        "locked": "0",
        "number": "Q101254",
        "name": "Q101254",
        "description": "",
        "terms": "1.5/15",
        "user_comment": "",
        "workflow_status": "RECEIVED",
        "vendor": {
            "cinx_commerce_guid": "9a13fcca-e6ae-524f-95dd-0f4d7d26930f",
            "number": "99999",
            "name": "Keegan Supply"
        },
        "customer": {
            "cinx_commerce_guid": "9a13fcca-e6ae-524f-95dd-0f4d7d26930f",
            "number": "ABCD1234",
            "name": "WTS Mechanical",
            "rfq_number": "RFQ-8745",
            "rfq_name": "RFQ-8745",
            "requested_by_name": "Will Stone",
            "project_number": "WTS-2019-06",
            "project_name": "Martha's Restaurant Upgrade",
            "phase_name": null,
            "material_cost_code_name": null,
            "category_name": null,
            "taxable": true,
            "tax_group_name": null
        },
        "counts": {
            "credits": 0,
            "charges": 0,
            "items": 11
        },
        "submitter": {
            "cinx_guid": "0317a60e-2a5a-50a2-8674-39e8f54ad49b",
            "name": "eb stone",
            "email": "estone@cinx.com"
        },
        "dates": {
            "created": "2019-07-25",
            "last_modified": "2019-07-25",
            "expiration": "2019-07-26",
            "rfq_respond_by": null,
            "submitted": null,
            "need_by": null
        },
        "delivery": {
            "address1": "995 Industrial Park Rd",
            "address2": "",
            "address3": "",
            "city": "Littleton",
            "state": "NH",
            "postal_code": "03561",
            "country": "USA",
            "ship_via": null,
            "fob_type": null,
            "ship_from": null,
            "attention": null,
            "location_type": "JOB SITE",
            "location_name": null,
            "instructions": null
        },
        "external_references": [],
        "charges": [],
        "credits": [],
        "items": [{
                "cinx_guid": "61e3150a-ec0e-50dc-a358-89af1819c601",
                "sequence": 1,
                "quantity": 1,
                "base_price": 6.667,
                "multiplier_value": 1,
                "unit_price": 6.667,
                "price_uom": "E",
                "currency": "USD",
                "multiplier_code": null,
                "availability_type": null,
                "availability_location": null,
                "order_lead_time": null,
                "date_need_by": null,
                "allow_substitutes": false,
                "substituted": false,
                "hph_code": null,
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": null,
                "upc": null,
                "size": "4\"",
                "description": "4\" DC CI LVL-TROL ABS PLUG ADJ FLOOR CO",
                "mfr_name": "Zurn Industries/Drains",
                "item_type": "MATERIAL",
                "customer": {
                    "item_id": null,
                    "item_system_id": null,
                    "project_number": "WTS-2019-06",
                    "phase_name": null,
                    "material_cost_code_name": null,
                    "category_name": null,
                    "taxable": true,
                    "tax_group_name": null,
                    "ship_via": null,
                    "location_type": null,
                    "instructions": null,
                    "labeling_instructions": "wo-101",
                    "packaging_instructions": "crate",
                    "model_item_guid": null,
                    "work_order_name": null,
                    "spool_name": null,
                    "building": null,
                    "level": null,
                    "space": null,
                    "sub_space": null,
                    "system": null,
                    "arch_symbol": null,
                    "tag": null,
                "attributes": []
                }
            }
        ]
    }]
}

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Purchase Orders

PO Definition

CINX Object Definition - Purchase Order

A CINX Purchase Order is a compilation of parts that are being ordered. The list might be for a whole project, phase, system, pre-fab work-order, spool, or a general list created by a project foreman in the field.

Dependencies and Business Rules

Supported API Services

Get PO List

API Endpoint - Get a List of Purchase Orders

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getPOs(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "80e6d9c8-d2e4-5aaa-9bd3-3957430741dd",
            "number": "PO-123",
            "name": "PO123",
            "description": null,
            "workflow_status": "SUBMITTED",
            "procurement_status": "ORDERED",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "date_order_by": "2019-06-07",
            "date_submitted": "2019-06-06",
            "submitter": "Will Stone",
            "date_need_by": "2019-06-11",
            "date_received": "",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "phase": "First Floor",
            "material_cost_code": "101-1025",
            "category": null,
            "tax_group": "TAX-03",
            "terms": "0/0",
            "quote_number": null,
            "quote_name": null,
            "erp_status": "NOT SUBMITTED",
            "external_references": [],
            "item_count": 15
        }
    ]
}

GET

This endpoint will be used to get a list of purchase orders. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/pos

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/pos

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
procurement Limits results to a specific procurement status. NOT ORDERED, ORDER PENDING, ORDERED, BACK-ORDERED, DELIVERED, RETURNED, CANCELLED, CLOSED, ON-HOLD, INVOICE-APPROVED
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, ERP PENDING, ERP ACCEPTED, ERP FAILED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get PO

API Endpoint - Get a Purchase Order

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getPO(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "8185cbd2-18c6-5cdc-b3ed-25795aabbfcc",
            "locked": "1",
            "number": "PO-111111",
            "name": "PO-111111",
            "description": "Sample PO description text",
            "terms": "1.5/10",
            "user_comment": "Sample PO user Comment",
            "procurement_status": "ORDERED",
            "workflow_status": "SUBMITTED",
            "erp_status": "NOT SUBMITTED",
            "allow_substitutes": "1",
            "submitter": {
                "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
                "name": "Will Stone",
                "email": "willstone@cinx.com"
            },
            "dates": {
                "created": "2019-07-29",
                "last_modified": "2019-07-29",
                "order_by": null,
                "need_by": "2019-08-02",
                "submitted": "2019-07-29",
                "received": ""
            },
            "customer": {
                "cinx_commerce_guid": "de0cf849-6f7b-5df6-9ae9-f924659f2d25",
                "number": "CX101",
                "name": "WTS Mechanical"
            },
            "vendor": {
                "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
                "number": "V101",
                "name": "Hilti"
            },
            "project": {
                "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
                "number": "WTS-2017-03",
                "name": "WTS-Building 3"
            },
            "delivery": {
                "address1": "377 Route 117",
                "address2": null,
                "address3": null,
                "city": "Sugar Hill",
                "state": "NH",
                "postal_code": "03586",
                "country": "USA",
                "ship_via": "SUPPLIER TRUCK",
                "fob_type": "PREPAID",
                "ship_from": "BRANCH",
                "attention": "Site Forman",
                "location_type": "JOB SITE",
                "location_name": "HPH",
                "instructions": "Handle with care"
            },
            "job_cost_defaults": {
                "cinx_phase_guid": "3b61f993-69b5-5db3-a367-2d204321c857",
                "phase_name": "First Floor",
                "cinx_material_cost_code_guid": "5d9b83d0-a3de-5475-959d-04b92fd4de75",
                "material_cost_code": "UG-123",
                "cinx_category_guid": "31d57bb1-156e-5cf2-a1ce-05b57232e643",
                "category_name": "MAT"
            },
            "taxes": {
                "taxable": true,
                "cinx_guid": "7c42f24f-766e-5220-bc7e-cce8048dbb57",
                "tax_group_name": "TAX-12",
                "tax_type": "Sales",
                "tax_rate": 8
            },
            "external_references": [{
                "type": "FAB SHOP TRANSACTION REF",
                "description": "",
                "value": "465465498796189fgf349"
            }],
            "charges": [],
            "credits": [],
            "counts": {
                "credits": 0,
                "charges": 0,
                "items": 1
            },
            "items": [{
                "cinx_guid": "11208a81-c1d2-53c8-8b46-272d65b3e295",
                "sequence": 1,
                "unit_price": 18.11,
                "price_uom": "E",
                "currency": "USD",
                "price_source_type": "MFR LIST",
                "date_need_by": "2019-07-15",
                "allow_substitutes": true,
                "hph_code": "012NI0018",
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": "9055750",
                "upc": "039923312969",
                "size": "1\"",
                "description": "1\" WROT CXC 90 ELBOW",
                "mfr_name": "NIBCO, Inc.",
                "item_type": "MATERIAL",
                "procurement_status": "ORDERED",
                "quantities": {
                    "ordered": 3,
                    "received": 0,
                    "invoiced": 0,
                    "back-ordered": ""
                },
                "vendor": {
                    "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
                    "number": "V101",
                    "name": "Hilti",
                    "item_id": null,
                    "system_id": null,
                    "cinx_quote_guid": null,
                    "quote_number": null
                },
                "requisition": {
                    "cinx_guid": "2e5763f6-f7be-5179-9109-5e81014fb5b5",
                    "number": "REQ-19-001",
                    "name": "REQ-19-001"
                },
                "project": {
                    "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
                    "number": "WTS-2017-03",
                    "name": "WTS-Building 3"
                },
                "delivery": {
                    "ship_via": "SUPPLIER TRUCK",
                    "deliver_to": "Site Forman",
                    "location_type": "JOBSITE",
                    "location_name": "HPH",
                    "instructions": "Handle with double extra care",
                    "labeling_instructions": "HPH-789879",
                    "packaging_instructions": "Wrapped pallets"
                },
                "work_breakdown": {
                    "work_order_id": null,
                    "work_order_name": "WO-8774512",
                    "spool_id": null,
                    "spool_name": "SPL-4897987",
                    "building_name": "HPH1",
                    "level": "1",
                    "space": "Lobby",
                    "sub_space": "Domestic Cold Water",
                    "system": null,
                    "arch_symbol": "ELB-045",
                    "tag": null
                },
                "job_cost": {
                    "cinx_phase_guid": "3b61f993-69b5-5db3-a367-2d204321c857",
                    "phase_name": "First Floor",
                    "cinx_material_cost_code_guid": "5d9b83d0-a3de-5475-959d-04b92fd4de75",
                    "material_cost_code": "UG-123",
                    "cinx_category_guid": "31d57bb1-156e-5cf2-a1ce-05b57232e643",
                    "category_name": "MAT"
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": "7c42f24f-766e-5220-bc7e-cce8048dbb57",
                    "tax_group_name": "TAX-12",
                    "tax_type": "SALES",
                    "tax_rate": 8,
                    "tax_amount": 0
                },
                "design": {
                    "model_item_guid": "234234q32fqw5324f3232",
                    "model_name": "HPH Model 1",
                    "model_file": "HPHModell.rvt",
                    "drawing_number": "PLB-01",
                    "drawing_name": "Plumbing 01"
                },
                "attributes": []
        }]  
    }]
}

GET

This endpoint will be used to get the details of a specific purchase order. Note: This response will include the purchase order’s items.

URL Pattern: {api path}/{api_version}/sub/{api_token}/po/{cinx_guid}

The cinx_guid will be the purchase orders’s CINX Id.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/po/8185cbd2-18c6-5cdc-b3ed-25795aabbfcc

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get PO Template

API Endpoint - Get a Purchase Order Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getPoTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });
{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "number": null,
            "name": null,
            "description": null,
            "terms": null,
            "user_comment": null,
            "procurement_status": "NOT ORDERED",
            "allow_substitutes": true,
            "dates": {
                "order_by": null,
                "need_by": null
            },
            "vendor": {
                "cinx_commerce_guid": null,
                "number": null
            },
            "project": {
                "cinx_guid": null,
                "number": null
            },
            "delivery": {
                "address1": null,
                "address2": null,
                "address3": null,
                "city": null,
                "state": null,
                "postal_code": null,
                "country": "USA",
                "ship_via": null,
                "fob_type": null,
                "ship_from": null,
                "attention": null,
                "location_type": "JOB SITE",
                "location_name": null,
                "instructions": null
            },
            "job_cost_defaults": {
                "cinx_phase_guid": null,
                "phase_name": null,
                "cinx_material_cost_code_guid": null,
                "material_cost_code_name": null,
                "cinx_category_guid": null,
                "category_name": null
            },
            "taxes": {
                "taxable": true,
                "cinx_guid": null,
                "tax_group_name": null
            },
            "charges": [{
                "cinx_guid": null,
                "type": null,
                "description": null,
                "unit_price": null,
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": null,
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code_name": null,
                    "cinx_category_guid": null,
                    "category_name": null,
                    "gl_account": null
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": null,
                    "tax_group_name": null,
                    "tax_type": null,
                    "tax_rate": null,
                    "tax_amount": null
                },
                "project": {
                    "cinx_guid": null,
                    "number": null
                }
            }],
            "credits": [{
                "cinx_guid": null,
                "type": null,
                "description": null,
                "unit_price": null,
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": null,
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code_name": null,
                    "cinx_category_guid": null,
                    "category_name": null,
                    "gl_account": null
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": null,
                    "tax_group_name": null,
                    "tax_type": null,
                    "tax_rate": null,
                    "tax_amount": null
                },
                "project": {
                    "cinx_guid": null,
                    "number": null
                }
            }],
            "external_references": [{
                "type": null,
                "description": null,
                "value": null
            }],
            "items": [{
                "cinx_guid": null,
                "quantity": 1,
                "unit_price": null,
                "price_uom": "E",
                "currency": "USD",
                "price_source_type": null,
                "date_need_by": null,
                "allow_substitutes": true,
                "hph_code": null,
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": null,
                "upc": null,
                "size": null,
                "description": null,
                "mfr_name": null,
                "item_type": null,
                "procurement_status": "NOT ORDERED",
                "vendor": {
                    "cinx_commerce_guid": null,
                    "number": null
                },
                "project": {
                    "cinx_guid": null,
                    "number": null
                },
                "delivery": {
                    "ship_via": null,
                    "deliver_to": null,
                    "location_type": null,
                    "location_name": null,
                    "instructions": null,
                    "labeling_instructions": null,
                    "packaging_instructions": null
                },
                "work_breakdown": {
                    "work_order_id": null,
                    "work_order_name": null,
                    "spool_id": null,
                    "spool_name": null,
                    "building_name": null,
                    "level": null,
                    "space": null,
                    "sub_space": null,
                    "system": null,
                    "arch_symbol": null,
                    "tag": null
                },
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": null,
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code_name": null,
                    "cinx_category_guid": null,
                    "category_name": null
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": null,
                    "tax_group_name": null,
                    "tax_type": null,
                    "tax_rate": null,
                    "tax_amount": null
                },
                "design": {
                    "model_item_guid": null,
                    "model_name": null,
                    "model_file": null,
                    "drawing_number": null,
                    "drawing_name": null
                },
                "attributes": [
                    {
                        "name": null,
                        "value": null
                    }]
            }]
        },
        "field_options": {},
        "api_calls": []
    }]
}

GET

This endpoint will be used to get a CINX Template for a purchase order.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/po

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/po

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
number String Yes Public number for the object.
name String Yes Public name for the object.
description String No Public description for the object.
terms String No Transaction terms.
user_comment String No General comment defined by a CINX user.
procurement_status String Yes NOT ORDERED Status used to track the procurement activities of the purchase order. Template has a list of optional values.
allow_substitutes Boolean Yes TRUE Transaction level default used to indicate if the items on the purchase order can be sourced from an alternate manufacturer.
dates.order_by Date (YYYY-MM-DD) No Date the purchase order should be submitted to the vendor.
dates.need_by Date (YYYY-MM-DD) No Date the products on the purchase order need to be delivered to the specified delivery location.
vendor.cinx_commerce_guid String (GUID Format) No CINX Commerce Id for the vendor that will receive the purchase order. Field is not modifiable.
vendor.number String No The public number of the vendor that will receive the purchase order. Field is not modifiable.
project.cinx_guid String (GUID Format) No CINX Project Id. Field is not modifiable.
project.number String No The public number of the project for which the items are being purchased. Field is not modifiable.
delivery.address1 String No Address 1 value for the location to which the products on the purchase order are to be delivered.
delivery.address2 String No Address 2 value for the location to which the products on the purchase order are to be delivered.
delivery.address3 String No Address 3 value for the location to which the products on the purchase order are to be delivered.
delivery.city String No City to which the products on the purchase order are to be delivered.
delivery.state String No State to which the products on the purchase order are to be delivered. Two-character alpha abbreviation.
delivery.postal_code String No Postal/Zip Code to which the products on the purchase order are to be delivered.
delivery.country String Yes USA Country to which the products on the purchase order are to be delivered. Three-character alpha abbreviation.
delivery.ship_via String No How the products are to be delivered or otherwise acquired. Template has a list of optional values.
delivery.fob_type String No F.O.B. Type. Template has a list of optional values.
delivery.ship_from String No Location from which the requester would like the materials on the purchase order to be shipped.
delivery.attention String No User-defined delivery attention.
delivery.location_type String Yes JOB SITE Type of location where the requester would like the materials delivered. Template has a list of optional values.
delivery.location_name String No Name of the location where the requester would like the materials delivered.
delivery.Instructions String No General delivery instructions for the order.
job_cost_defaults.cinx_phase_guid String (GUID Format) No Transaction level default. CINX Id for the Phase/Sub-Job assigned to the items on the purchase order.
job_cost_defaults.phase_name String No Transaction level default. Name for the Phase/Sub-Job assigned to the items on the purchase order.
job_cost_defaults.cinx_material_cost_code_guid String (GUID Format) No Transaction level default. CINX Id for the Material Cost Code assigned to the items on the purchase order.
job_cost_defaults.material_cost_code_name String No Transaction level default. Name for the Material Cost Code assigned to the items on the purchase order.
job_cost_defaults.cinx_category_guid String (GUID Format) No Transaction level default. CINX Id for the Category assigned to the items on the purchase order.
job_cost_defaults.category_name String No Transaction level default. Name for the Category assigned to the items on the purchase order.
taxes.taxable Boolean Yes TRUE Transaction level default. Indicator defining if the products on the purchase order are taxable.
taxes.cinx_guid String (GUID Format) No Transaction level default. CINX Id for the Tax Group assigned to the items on the purchase order.
taxes.tax_group_name String No Transaction level default. Name for the Tax Group assigned to the items on the purchase order.
external_references.type String No Non-CINX system reference type.
external_references.description String No Non-CINX system reference description.
external_references.value String No Non-CINX system reference value.
charges.cinx_guid String (GUID Format) POST = No; Put = Yes CINX System Id.
charges.type String No Name of the type of charge. Template has a list of optional values.
charges.description String No Description of the charge.
charges.unit_price Real No Cost of the charge.
charges.job_cost.cinx_phase_guid String (GUID Format) No CINX Id for the Phase/Sub-Job assigned to the charge.
charges.job_cost.phase_name String No Name for the Phase/Sub-Job assigned to the charge.
charges.job_cost.cinx_material_cost_code_guid String (GUID Format) No CINX Id for the Material Cost Code assigned to the charge.
charges.job_cost.material_cost_code_name String No Name for the Material Cost Code assigned to the charge.
charges.job_cost.cinx_category_guid String (GUID Format) No CINX Id for the Category assigned to the charge.
charges.job_cost.category_name String No Name for the Category assigned to the charge.
charges.job_cost.gl_account String No General Ledger account assigned to the charge.
charges.taxes.taxable Boolean Yes TRUE Indicator defining if the charge is taxable.
charges.taxes.cinx_guid String (GUID Format) No CINX Id for the Tax Group assigned to the charge.
charges.taxes.tax_group_name String No Name for the Tax Group assigned to the charge.
charges.taxes.tax_type String No Name of the type of tax. Template has a list of optional values.
charges.taxes.tax_rate Real No The tax rate.
charges.taxes.tax_amount Real No The total amount of the tax for the charge.
charges.project.cinx_guid String (GUID Format) No CINX Project Id.
charges.project.number String No The public number of the project.
credits.cinx_guid String (GUID Format) POST = No; Put = Yes CINX System Id.
credits.type String No Name of the type of credit. Template has a list of optional values.
credits.description String No Description of the credit.
credits.unit_price Real No Amount of the credit.
credits.job_cost.cinx_phase_guid String (GUID Format) No CINX Id for the Phase/Sub-Job assigned to the credit.
credits.job_cost.phase_name String No Name for the Phase/Sub-Job assigned to the credit.
credits.job_cost.cinx_material_cost_code_guid String (GUID Format) No CINX Id for the Material Cost Code assigned to the credit.
credits.job_cost.material_cost_code_name String No Name for the Material Cost Code assigned to the credit.
credits.job_cost.cinx_category_guid String (GUID Format) No CINX Id for the Category assigned to the credit.
credits.job_cost.category_name String No Name for the Category assigned to the credit.
credits.job_cost.gl_account String No General Ledger account assigned to the credit.
credits.taxes.taxable Boolean Yes TRUE Indicator defining if the credit is taxable.
credits.taxes.cinx_guid String (GUID Format) No CINX Id for the Tax Group assigned to the credit.
credits.taxes.tax_group_name String No Name for the Tax Group assigned to the credit.
credits.taxes.tax_type String No Name of the type of tax. Template has a list of optional values.
credits.taxes.tax_rate Real No The tax rate.
credits.taxes.tax_amount Real No The total amount of the tax for the credit.
credits.project.cinx_guid String (GUID Format) No CINX Project Id.
credits.project.number String No The public number of the project.
items.cinx_guid String (GUID Format) POST = No; Put = Yes CINX System Id.
items.quantity Real Yes 1 Quantity of the item that is being ordered.
items.unit_price Real No Unit price of the item on the purchase order.
items.price_uom String Yes E Price unit-of-measure. Template has a list of optional values.
items.currency String Yes USD Currency in which the price is being defined. Three-character alpha abbreviation.
items.price_source_type String No Source from which the price was obtained. Template has a list of optional values.
items.date_need_by Date (YYYY-MM-DD) No Date the product needs to be delivered to the specified delivery location.
items.allow_substitutes Boolean Yes TRUE Indicator if the product can be sourced from an alternate manufacturer.
items.hph_code String No HPH Item Code for the item that is being ordered.
items.org_item_id String No The requesting company's Org Item Id for the product that is being ordered. User-friendly code.
items.org_system_id String No The requesting company's Org System Item Id for the product that is being ordered. Unique Id code.
items.mfr_part_number String No Manufacturer-defined Part/Catalog Number for the product that is being ordered.
items.upc String No Manufacturer-defined UPC Number for the product that is being ordered.
items.size String No Size of the item that is being ordered.
items.description String No Description of the item that is being ordered.
items.mfr_name String No Name of the manufacturer or fabricator that produces the item that is being ordered.
items.item_type String No Classification name of the item that is being ordered.
items.procurement_status String Yes NOT ORDERED Status used to track the procurement activities of the item. Template has a list of optional values.
items.vendor.cinx_commerce_guid String (GUID Format) No CINX Commerce Id for the vendor.
items.vendor.number String No The public number of the vendor from whom the product is being sourced.
items.project.cinx_guid String No CINX Project Id.
items.project.number String No The public number of the project from which the item are being ordered.
items.delivery.ship_via String No How the product is to be delivered or otherwise acquired. Template has a list of optional values.
items.delivery.deliver_to String No Deliver To text.
items.delivery.location_type String No Where the requester would like the product to be delivered. Template has a list of optional values.
items.delivery_location_name String No Name of the location where the item is to be delivered.
items.delivery.instructions String No Delivery instructions to be submitted to the vendor responsible for delivering the item.
items.delivery.labeling_instructions String No Labeling instructions to be submitted to the vendor responsible for delivering the item.
items.delivery.packaging_instructions String No Packaging instructions to be submitted to the vendor responsible for delivering the item.
items.work_breakdown.work_order_id String No Contractor defined Work Order Id that was assigned to the product.
items.work_breakdown.work_order_name String No Contractor defined Work Order Name that was assigned to the product.
items.work_breakdown.spool_id String No Contractor defined Spool Id that was assigned to the product.
items.work_breakdown.spool_name String No Contractor defined Spool Name that was assigned to the product.
items.work_breakdown.building_name String No Name of the building in which the product will be installed.
items.work_breakdown.level String No Level of the building in which the product will be installed.
items.work_breakdown.space String No Space of the building in which the product will be installed.
items.work_breakdown.sub_space String No Sub-space of the building in which the product will be installed.
items.work_breakdown.system String No Name of the system in which the product will be installed.
items.work_breakdown.arch_symbol String No Architectural symbol of the product.
items.work_breakdown.tag String No Text of what should appear on a tag for the item.
items.job_cost.cinx_phase_guid String (GUID Format) No CINX Id for the Phase/Sub-Job assigned to the item.
items.job_cost.phase_name String No Name for the Phase/Sub-Job assigned to the item.
items.job_cost.cinx_material_cost_code_guid String (GUID Format) No CINX Id for the Material Cost Code assigned to the item.
items.job_cost.material_cost_code_name String No Name for the Material Cost Code assigned to the item.
items.job_cost.cinx_category_guid String (GUID Format) No CINX Id for the Category assigned to the item.
items.job_cost.category_name String No Name for the Category assigned to the item.
items.taxes.taxable Boolean Yes TRUE Indicator defining if the product is taxable.
items.taxes.cinx_guid String (GUID Format) No CINX Id for the Tax Group assigned to the item.
items.taxes.tax_group_name String No Name of the Tax Group assigned to the item.
items.taxes.tax_type String No Name of the type of tax. Template has a list of optional values.
items.taxes.rate Real No The tax rate.
items.taxes.amount Real No The total amount of the tax for the item.
items.design.model_item_guid String (GUID Format) No Id assigned by the authoring system that placed the item in the model.
items.design.model_name String No Name of the model in which the item is located.
items.design.model_file String No File name of the model in which the item is located.
items.design.drawing_number String No Number of the drawing on which the item is located.
items.design.drawing_name String No Name of the drawing on which the item is located.
items.attributes.name String No Name of the attribute.
items.attributes.value String No Value of the attribute.

Get PO Number

API Endpoint - Get a New Purchase Order Number

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getPoNumber(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "po": "PO-000001"
        }
    ]
}

GET

This endpoint will be used to get a value to be used in the number field of a new purchase order.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/auto-number/po

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/auto-number/po

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Create PO

API Endpoint - Create a New Purchase Order

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//poObject can be created based on the template retrieved from cinxApi.getPoTemplate(cinx_api_token) call
cinxApi.postPO(cinx_api_token, poObject, isSynchronous)
            .then(function (response) {
            console.log(response);
            }); 

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {

        }
    ]
}

POST

This endpoint will be used to create a new purchase order.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-po-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json
synchronous Switch to have the payload processed synchronously. 1

Modify PO

API Endpoint - Modify a Purchase Order

PUT

This API endpoint will be used to modify an existing CINX purchase order.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-po-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json
synchronous Switch to have the payload processed synchronously. 1

Get PO Change Orders

API Endpoint - Get a List of PO Change Orders for a Purchase Order

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "a9863525-d926-5441-9f9c-aa47a285a19b",
            "number": "-01",
            "name": "PO123-01",
            "description": null,
            "status": "SUBMITTED",
            "procurement_status": "ORDERED",
            "tx_type": "CHANGE ORDER",
            "po_number": "PO-123",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "date_submitted": "2019-06-06",
            "submitted_by": "Will Stone",
            "date_deliver_by": "2019-06-14",
            "phase": "First Floor",
            "cost_code": "101-1025",
            "category": null,
            "tax_group": "TAX-03",
            "terms": "0/0",
            "erp_status": "NOT SUBMITTED",
            "links": [],
            "item_count": 2
        }
    ]
}

GET

This endpoint will be used to get a list of PO Change Orders for a specified purchase order. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/po/{cinx_guid}/pocos

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/po/a9863525-d926-5441-9f9c-aa47a285a19b/pocos

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
procurement Limits results to a specific procurement status. NOT ORDERED, ORDER PENDING, ORDERED, BACK-ORDERED, DELIVERED, RETURNED, CANCELLED, CLOSED, ON-HOLD, INVOICE-APPROVED
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, ERP PENDING, ERP ACCEPTED, ERP FAILED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml

Get PO Deliveries

API Endpoint - Get a List of Deliveries for a Purchase Order

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "f116ad07-ab08-5b87-ad42-18cab454e086",
            "number": "D000012",
            "name": "D000012",
            "description": null,
            "status": "INCOMPLETE",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "location_type": "FABRICATION SHOP",
            "location_name": null,
            "date_received": "2019-06-07",
            "received_by": "Will Stone",
            "total_weight": "456",
            "packing_slip": "54654645",
            "links": [],
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "po_number": "PO-123",
            "po_name": "PO123",
            "date_deliver_by": "2019-06-11",
            "item_count": 15
        }
    ]
}

GET

This endpoint will be used to get a list of Deliveries for a vendor. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/po/{cinx_guid}/deliveries

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/po/a9863525-d926-5441-9f9c-aa47a285a19b/deliveries

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
po-guid Limits results to a specific purchase order. {cinx_po_id}
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml

Get PO Invoices

API Endpoint - Get a List of Invoices for a Purchase Order

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "8ead0386-496b-571c-b14f-09eafeeb6758",
            "number": "I456123",
            "name": "I456123",
            "status": "PENDING E-INVOICE",
            "erp_status": "NOT SUBMITTED",
            "current_owner_name": "Will Stone",
            "entry_method": "MANUAL",
            "entered_by": null,
            "date_entered": "",
            "accept_method": "MANUAL",
            "accepted_by": null,
            "date_issued": "2019-06-08",
            "payment_due": "2019-06-21 00:00:00Z",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "po_number": "",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "links": [],
            "item_count": 15
        }
    ]
}

GET

This endpoint will be used to get a list of Invoices for a purchase order. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/po/{cinx_guid}/invoices

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/po/a9863525-d926-5441-9f9c-aa47a285a19b/invoices

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
status Limits results to a specific status. PENDING E-INVOICE, ENTERED, REVIEWED, ACCEPTED, IN-DISPUTE, ON-HOLD, REJECTED, SUBMITTED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml

Get PO Returns

API Endpoint - Get a List of Returns for a Purchase Order

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "03dfb081-fc43-5196-8b58-d8277278bc59",
            "number": "R000001",
            "name": "R000001",
            "status": "RMA REQUESTED",
            "rma": null,
            "rma_expires": null,
            "reason": null,
            "action": "Replace Item",
            "current_owner_name": "Will Stone",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "po_number": "PO-123",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "links": [],
            "item_count": 1
        }
    ]
}

GET

This endpoint will be used to get a list of Returns for a purchase order. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/po/{cinx_guid/returns

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/po/a9863525-d926-5441-9f9c-aa47a285a19b/returns

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml

Get PO Back-Orders

API Endpoint - Get a List of Back-Orders for a Purchase Order

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "076bd4bb-d6d9-5096-96f2-ec105d0562b1",
            "date_expected_delivery": null,
            "date_po_deliver_by": null,
            "date_informed": null,
            "date_last_updated": null,
            "reason": null,
            "quantity_backordered": 1,
            "quantity_shipped": 0,
            "quantity_po": 1,
            "org_item_id": null,
            "vendor_item_id": null,
            "mfr_part_number": null,
            "mfr_order": null,
            "hph_code": "326ZU6542",
            "upc": "67024006745",
            "org_description": "Floor, Z1400 Adjustable, 4",
            "cinx_description": null,
            "mfr_description": null,
            "mfr_name": null,
            "delivery_location_type": null,
            "delivery_location_name": "",
            "vendor_number": "",
            "vendor_name": "Hilti",
            "work_order_id": null,
            "work_order_name": null,
            "spool_id": null,
            "spool_name": null,
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "po_number": "P19-062819",
            "po_name": "P19-062819",
            "po_submitted_by": "Will Stone"
        }
    ]
}

GET

This endpoint will be used to get a list of Back-Orders for a purchase order. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/po/{cinx_guid/back-orders

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/po/a9863525-d926-5441-9f9c-aa47a285a19b/back-orders

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
format Defines the response format type. If not specified, json will be used. json, xml

PO Change Orders

PO Change Order Definition

CINX Object Definition - PO Change Order

A CINX Purchase Order Change Order is created when changes need to be made to a previously submitted purchase order. Example of changes include: changing a price or quantity; adding or modifying job costing information; adding or removing a item row.

Dependencies and Business Rules

Supported API Services

Get PO CO List

API Endpoint - Get a List of PO Change Orders

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "a9863525-d926-5441-9f9c-aa47a285a19b",
            "number": "-01",
            "name": "PO123-01",
            "description": null,
            "workflow_status": "SUBMITTED",
            "procurement_status": "ORDERED",
            "po_number": "PO-123",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "date_submitted": "2019-06-06",
            "submitter": "Will Stone",
            "date_need_by": "2019-06-14",
            "phase": "First Floor",
            "material_cost_code": "101-1025",
            "category": null,
            "tax_group": "TAX-03",
            "terms": "0/0",
            "erp_status": "NOT SUBMITTED",
            "external_references": [],
            "item_count": 2
        }
    ]
}

GET

This endpoint will be used to get a list of PO Change Orders. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/pocos

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/pocos

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
procurement Limits results to a specific procurement status. NOT ORDERED, ORDER PENDING, ORDERED, BACK-ORDERED, DELIVERED, RETURNED, CANCELLED, CLOSED, ON-HOLD, INVOICE-APPROVED
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ACCEPTED, DECLINED, ERP PENDING, ERP ACCEPTED, ERP FAILED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get PO CO

API Endpoint - Get a PO Change Order

{
    "response": {},
    "rows": [{
        "cinx_guid": "a9863525-d926-5441-9f9c-aa47a285a19b",
        "locked": "1",
        "number": "PO123-01",
        "name": "PO123-01",
        "description": null,
        "terms": "1.5/10",
        "user_comment": null,
        "procurement_status": "ORDERED",
        "workflow_status": "SUBMITTED",
        "erp_status": "NOT SUBMITTED",
        "allow_substitutes": "0",
        "submitter": {
            "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
            "name": "Will Stone",
            "email": "willstone@cinx.com"
        },
        "dates": {
            "created": "2019-06-06",
            "last_modified": "2019-06-06",
            "order_by": null,
            "need_by": "2019-06-14",
            "submitted": "2019-06-06",
            "received": null
        },
        "customer": {
            "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
            "number": "C101",
            "name": "WTS Mechanical"
        },
        "vendor": {
            "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
            "number": "V101",
            "name": "Hilti"
        },
        "purchase_order": {
            "cinx_guid": "80e6d9c8-d2e4-5aaa-9bd3-3957430741dd",
            "number": "PO-123",
            "name": "PO123"
        },
        "project": {
            "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
            "number": "WTS-2017-03",
            "name": "HPH HQ Renovation"
        },
        "delivery": {
            "address1": "995 Industrial Park Rd",
            "address2": "",
            "address3": "",
            "city": "Littleton",
            "state": "NH",
            "postal_code": "03561",
            "country": "USA",
            "ship_via": "SUPPLIER TRUCK",
            "fob_type": "PREPAID AND CHARGED TO CUSTOMER",
            "ship_from": "",
            "attention": "",
            "location_type": "FABRICATION SHOP",
            "location_name": null,
            "instructions": ""
        },
        "job_cost_defaults": {
            "cinx_phase_guid": "3b61f993-69b5-5db3-a367-2d204321c857",
            "phase_name": "First Floor",
            "cinx_material_cost_code_guid": "314f6a13-56b3-5c3f-b14e-10d159e4c5c0",
            "material_cost_code": "101-1025",
            "cinx_category_guid": null,
            "category_name": null
        },
        "taxes": {
            "taxable": true,
            "cinx_guid": "9a962b97-145c-522f-bf1a-e1ad4be4b5a8",
            "tax_group_name": "TAX-03",
            "tax_type": "Use",
            "tax_rate": 5
        },
        "external_references": [],
        "counts": {
            "credits": 0,
            "charges": 0,
            "items": 2
        },
        "credits": [],
        "charges": [],
        "items": [{
            "cinx_guid": "73d55d4b-4436-5539-aad2-7f2a11666146",
            "sequence": 1,
            "quantity": 3,
            "unit_price": 270.05,
            "price_uom": "E",
            "currency": "USD",
            "date_need_by": "2019-06-11",
            "allow_substitutes": true,
            "hph_code": "326ZU6542",
            "org_item_id": null,
            "org_system_id": null,
            "mfr_part_number": null,
            "upc": "67024006745",
            "size": "4",
            "description": "Floor, Z1400 Adjustable, 4",
            "mfr_name": null,
            "item_type": "MATERIAL",
            "vendor": {
                "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
                "number": "V101",
                "name": "Hilti",
                "item_id": null,
                "system_id": null,
                "cinx_quote_guid": null,
                "quote_number": null
            },
            "requisition": {
                "cinx_guid": null,
                "number": null,
                "name": null
            },
            "purchase_order": {
                "cinx_guid": "80e6d9c8-d2e4-5aaa-9bd3-3957430741dd",
                "number": "PO-123",
                "name": "PO123",
                "procurement_status": "ORDERED",
                "unit_price": 270.05,
                "price_source_type": "USER",
                "price_uom": "E",
                "currency": "USD",
                "quantities": {
                    "ordered": 1,
                    "received": 0,
                    "invoiced": 0,
                    "back_ordered": 0
                }
            },
            "project": {
                "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
                "number": "WTS-2017-03",
                "name": "HPH HQ Renovation"
            },
            "delivery": {
                "ship_via": null,
                "deliver_to": null,
                "location_type": "JOB SITE",
                "location_name": null,
                "instructions": null,
                "labeling_instructions": null,
                "packaging_instructions": null
            },
            "work_breakdown": {
                "work_order_id": null,
                "work_order_name": null,
                "spool_id": null,
                "spool_name": null,
                "building_name": null,
                "level": "MAIN",
                "space": null,
                "sub_space": null,
                "system": "GREASE WASTE UG",
                "arch_symbol": null,
                "tag": null
            },
            "job_cost": {
                "cinx_phase_guid": null,
                "phase_name": "124",
                "cinx_material_cost_code_guid": null,
                "material_cost_code": null,
                "cinx_category_guid": null,
                "category_name": null
            },
            "taxes": {
                "taxable": true,
                "cinx_guid": null,
                "tax_group_name": null,
                "tax_type": null,
                "tax_rate": 0,
                "tax_amount": 0
            },
            "design": {
                "model_item_guid": null,
                "model_name": null,
                "model_file": null,
                "drawing_number": "P1.0",
                "drawing_name": null
            },
            "attributes": []
        }]
    }]
}

GET

This endpoint will be used to get the details of a specific PO Change Order. Note: This response will include the PO Change Order’s items.

URL Pattern: {api path}/{api_version}/sub/{api_token}/poco/{cinx_guid}

The cinx_guid will be the PO Change Order’s CINX Id.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/poco/e73c118f-1ee9-57e0-9c79-1775c1a04b81

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

PO Acknowledgments

PO Acknowledgment Definition

CINX Object Definition - PO Acknowledgment

A CINX PO Acknowledgment is a document a vendor prepares in response to a customer’s Purchase Order. PO Acknowledgments will contain order confirmation information from the vendor. The exact content's of a PO Acknowledgment will be dependent on which ERP system the vendor uses. Common information on a PO Acknowledgment include an order status, item prices, and shipping/delivery information.

Supported API Services

Get PO Acknowledgment List

API Endpoint - Get a List of PO Acknowledgments

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "e462c9e9-8e93-59e2-9308-97851ad44511",
        "number": "0926656",
        "name": "0926656",
        "description": null,
        "date_received": "2021-01-15",
        "assigned_to": null,
        "workflow_status": "ACCEPTED",
        "po_number": "PO-000047",
        "po_name": "PO-000047",
        "vendor_number": "99999",
        "vendor_name": "Keegan Supply",
        "ship_via": "SUPPLIER TRUCK",
        "delivery_location_type": "JOB SITE",
        "delivery_location_name": "011521-2-test",
        "project_number": "WTS-2019-06",
        "project_name": "Martha's Restaurant Upgrade",
        "phase": null,
        "material_cost_code": null,
        "category": null,
        "tax_group": null,
        "external_references": [],
        "item_counts": {
            "accepted": 5,
            "accepted_with_changes": 1,
            "rejected": 0,
            "unacknowledged": -7
        }
    }]
}

GET

This endpoint will be used to get a list of PO Acknowledgments. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/po-ack

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/po-acks

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
workflow Limits results to a specific workflow status. IN-PROCESS, SUBMITTED, RECEIVED, ERP PENDING, ERP ACCEPTED, ERP FAILED
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
need-by Limits results to a specific need-by or delivery-by date. Date Format: YYYY-MM-DD
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get PO Acknowledgment

API Endpoint - Get a PO Acknowledgment

GET

This endpoint will be used to get the details of a specific PO Acknowledgment. Note: This response will include the PO Acknowledgment’s items.

URL Pattern: {api path}/{api_version}/sub/{api_token}/po-ack/{cinx_guid}

The cinx_guid will be the PO Acknowledgment’s CINX Id.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/po-ack/e73c118f-1ee9-57e0-9c79-1775c1a04b81

{
    "response": {},
    "rows": [{
        "cinx_guid": "e462c9e9-8e93-59e2-9308-97851ad44511",
        "locked": "1",
        "number": "0926656",
        "name": "0926656",
        "description": null,
        "assigned_to": null,
        "workflow_status": "ACCEPTED",
        "date_received": "2021-01-15",
        "submitter": {
            "cinx_guid": "4a23ff84-9d61-5ab3-95c9-3870cb2727bd",
            "name": "Karl Stone",
            "email": "karlstone@cinx.com"
        },
        "vendor": {
            "cinx_commerce_guid": "9a13fcca-e6ae-524f-95dd-0f4d7d26930f",
            "number": "99999",
            "name": "Keegan Supply"
        },
        "customer": {
            "cinx_commerce_guid": "9a13fcca-e6ae-524f-95dd-0f4d7d26930f",
            "number": "88300",
            "name": "WTS Mechanical"
        },
        "po": {
            "cinx_guid": "567347c9-fa72-5895-94bd-7c42ec3cba82",
            "number": "PO-000047",
            "name": "PO-000047"
        },
        "project": {
            "cinx_guid": "ebe9d0ef-3234-545d-aeb3-2065875fd37d",
            "project_number": "WTS-2019-06",
            "project_name": "Martha's Restaurant Upgrade"
        },
        "delivery": {
            "address1": "995 Industrial Park Rd",
            "address2": "",
            "address3": "",
            "city": "LITTLETON",
            "state": "NH",
            "postal_code": "03561",
            "country": "USA",
            "ship_via": "SUPPLIER TRUCK",
            "fob_type": null,
            "ship_from": null,
            "attention": null,
            "location_type": "JOB SITE",
            "location_name": "011521-2-test",
            "instructions": null
        },
        "external_references": [],
        "item_counts": {
            "accepted": 5,
            "accepted_with_changes": 1,
            "rejected": 0,
            "unacknowledged": -7
        },
        "items": [{
            "cinx_guid": "db6a5e09-f6fb-5f96-80e3-c060ede5ead6",
            "sequence": 1,
            "acknowledgement_status": "ACCEPTED",
            "unit_price": 4.5,
            "price_uom": "E",
            "currency": "USD",
            "hph_code": "012EK0700",
            "org_item_id": "242672720334661141",
            "org_system_id": "242672720334661141",
            "mfr_part_number": "10031578",
            "upc": "683264315785",
            "size": "5/8\"",
            "description": "107_MT_2 Street EL Medium FtgxC",
            "mfr_name": "Elkhart Products Corporation",
            "item_type": "MATERIAL",
            "vendor": {
                "cinx_commerce_guid": "9a13fcca-e6ae-524f-95dd-0f4d7d26930f",
                "number": "99999",
                "name": "Keegan Supply",
                "item_id": "CIS9E",
                "item_system_id": "1291237"
            },
            "project": {
                "cinx_guid": "ebe9d0ef-3234-545d-aeb3-2065875fd37d",
                "project_number": "WTS-2019-06",
            "project_name": "Martha's Restaurant Upgrade"
            },
            "delivery": {
                "shipping_status": "NOT SCHEDULED",
                "date_scheduled_ship": null,
                "ship_via": null,
                "deliver_to": null
            },
            "work_breakdown": {
                "work_order_id": null,
                "work_order_name": null,
                "sppol_id": null,
                "spool_name": null,
                "building_name": null,
                "level": null,
                "space": null,
                "sub_space": null,
                "system": null,
                "arch_symbol": null,
                "tag": null
            },
            "job_cost": {
                "cinx_phase_guid": null,
                "phase_name": null,
                "cinx_material_cost_code_guid": null,
                "material_cost_code": null,
                "cinx_category_guid": null,
                "category_name": null
            },
            "design": {
                "model_item_guid": null,
                "model_name": null,
                "model_file": null,
                "drawing_number": null,
                "drawing_name": null
            },
            "attributes": []
        }]
    }]
}

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Lead-Times

Lead-Time Definition

CINX Object Definition - Lead-Time

CINX supports the definition of a lead-time for an item that has been added to a project or purchasing transaction. A lead time defines the amount of time, expressed in days, that it will take for the vendor to deliver the finished product after it is ordered. CINX also supports the definition of two date fields (need by and order by) that will help manage the timely ordering of materials.

Dependencies and Business Rules

Supported API Services

Get Lead-Times List

API Endpoint - Get a List of Lead-Times

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "fe30ea8b-78bf-5dc4-962b-1fb034061b08",
        "lead_time": 5,
        "date_need_by": "2019-09-27",
        "date_order_by": "2019-09-22",
        "quantity": 1,
        "org_item_id": null,
        "vendor_item_id": null,
        "mfr_part_number": null,
        "hph_code": "505VC2080",
        "upc": null,
        "description": "10\" EPDM GASKET",
        "mfr_name": "Victaulic Company",
        "delivery_location_type": "JOB SITE",
        "delivery_location_name": null,
        "vendor_number": null,
        "vendor_name": null,
        "work_order_id": null,
        "work_order_name": null,
        "spool_id": null,
        "spool_name": null,
        "project_number": "PRJ-2019-04",
        "project_name": "Snow-making Pump House",
        "requisition_number": null,
        "requisition_name": null,
        "po_number": null,
        "po_name": null
    }]
}

GET

This endpoint will be used to get a list of items with a lead-time. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/lead-times

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/lead-times

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
format Defines the response format type. If not specified, json will be used. json, xml

Get Lead-Time

API Endpoint - Get a Lead-Time

GET

This endpoint will be used to get the details of an item with a lead-time.

URL Pattern: {api path}/{api_version}/sub/{api_token}/lead-time/{cinx_guid}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/lead_time/84cd7385-4639-5339-a956-0cad247687f9

{
    "response": {},
    "rows": [{
        "cinx_guid": "84cd7385-4639-5339-a956-0cad247687f9",
        "lead_time": 20,
        "quantity": 1,
        "unit_price": null,
        "price_uom": null,
        "currency": "USD",
        "allow_substitutes": true,
        "hph_code": "505VC2994I",
        "org_item_id": null,
        "org_system_item_id": null,
        "mfr_part_number": null,
        "upc": null,
        "size": "18X14\"",
        "description": "18X14\" GRVXFLG AGS SUCTION DIFFUSER",
        "mfr_name": "Victaulic Company",
        "item_type": "MATERIAL",
        "procurement_status": "NOT ORDERED",
        "dates": {
            "need_by": "2019-09-26",
            "order_by": "2019-09-06"
        },
        "customer": {
            "cinx_commerce_guid": null,
            "number": null,
            "name": null
        },
        "vendor": {
            "cinx_commerce_guid": null,
            "number": null,
            "name": null,
            "item_id": null,
            "system_id": null
        },
        "project": {
            "cinx_guid": "57e7399d-d3d8-58f4-bddf-be20006e9178",
            "number": "PRJ-2019-04",
            "name": "PRJ-2019-04"
        },
        "requisition": {
            "cinx_guid": "2ca4a844-e2ea-5593-b002-0bf321e4dcf9",
            "number": "REQ-0007",
            "name": "REQ-0007"
        },
        "purchase_order": {
            "cinx_guid": null,
            "number": null,
            "name": null
        },
        "delivery": {
            "ship_via": null,
            "deliver_to": null,
            "location_type": null,
            "location_name": null,
            "instructions": null,
            "labeling_instructions": null,
            "packaging_instructions": null
        },
        "work_breakdown": {
            "work_order_id": null,
            "work_order_name": null,
            "spool_id": null,
            "spool_name": null,
            "building_name": null,
            "level": null,
            "space": null,
            "sub_space": null,
            "system": null,
            "arch_symbol": null,
            "tag": null
        },
        "job_cost": {
            "cinx_phase_guid": "ea6fba0f-0b8e-5e49-a110-6bcb36182146",
            "phase_name": "Phase2",
            "cinx_material_cost_code_guid": "5d9b83d0-a3de-5475-959d-04b92fd4de75",
            "material_cost_code_name": "UG-123",
            "cinx_category_guid": "a5f91c07-7c5b-5b0c-863b-16b2f6d960c6",
            "category_guid": "Expense 12"
        },
        "taxes": {
            "taxable": true,
            "cinx_guid": null,
            "tax_group_name": null,
            "tax_type": null,
            "tax_rate": 0,
            "tax_amount": 0
        },
        "design": {
            "model_item_guid": null,
            "model_name": null,
            "model_file": null,
            "drawing_number": null,
            "drawing_name": null
        },
        "attibutes": []
    }]
}

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Back-Orders

Back-Order Definition

CINX Object Definition - Back-Order

A back-order is an item from a submitted PO that cannot be delivered by the requested delivery date, and for which the customer is prepared to wait for the vendor to replenish its inventory.

Dependencies and Business Rules

Supported API Services

Get Back-Order List

API Endpoint - Get a List of Back-Orders

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "076bd4bb-d6d9-5096-96f2-ec105d0562b1",
        "date_expected_delivery": "2019-06-11",
        "date_need_by": "2019-06-08",
        "date_informed": "2019-06-08",
        "date_last_updated": "2019-06-11",
        "back_order_reason": null,
        "quantity_back_ordered": 1,
        "quantity_shipped": 0,
        "quantity_ordered": 1,
        "org_item_id": null,
        "vendor_item_id": null,
        "mfr_part_number": null,
        "hph_code": "326ZU6542",
        "upc": "67024006745",
        "description": null,
        "mfr_name": "ZURN",
        "delivery_location_type": null,
        "delivery_location_name": "",
        "vendor_number": "V101",
        "vendor_name": "Hilti",
        "work_order_id": null,
        "work_order_name": null,
        "spool_id": null,
        "spool_name": null,
        "project_number": "WTS-2017-03",
        "project_name": "HPH HQ Renovation",
        "po_number": "P19-062819",
        "po_name": "P19-062819",
        "po_submitter": "Will Stone",
        "update_count": ""
    }]
}

GET

This endpoint will be used to get a list of back-orders. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/back-orders

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/back-orders

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
project Limits results to a single project. {cinx_project_id}
vendor Limits results to a single vendor. {organization's vendor number}
po-guid Limits results to a specific purchase order. {cinx_po_id}
format Defines the response format type. If not specified, json will be used. json, xml

Get Back-Order

API Endpoint - Get a Back-Order

GET

This endpoint will be used to get the details of a specific back-order.

URL Pattern: {api path}/{api_version}/sub/{api_token}/back-order/{cinx_guid}

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/back-order/076bd4bb-d6d9-5096-96f2-ec105d0562b1

{
    "response": {},
    "rows": [{
        "cinx_guid": "076bd4bb-d6d9-5096-96f2-ec105d0562b1",
        "unit_price": 270.05,
        "price_uom": "E",
        "currency": "USD",
        "allow_substitutes": true,
        "hph_code": "326ZU6542",
        "org_item_id": null,
        "org_system_id": null,
        "mfr_part_number": null,
        "upc": "67024006745",
        "size": "4",
        "description": "Floor, Z1400 Adjustable, 4",
        "mfr_name": "ZURN",
        "item_type": "MATERIAL",
        "procurement_status": "BACKORDERED",
        "update_count": 0,
        "quantities": {
            "ordered": 1,
            "received": 0,
            "back_ordered": 1,
            "shipped": 0
        },
        "dates": {
            "need_by": "2019-06-08",
            "po_submitted": "2019-06-28",
            "informed": "2019-06-08",
            "expected_delivery": "2019-06-11",
            "last_updated": "2019-06-11",
            "cleared": ""
        },
        "customer": {
            "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
            "numer": "C101",
            "name": "WTS Mechanical -DEV"
        },
        "vendor": {
            "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
            "number": "V101",
            "name": "Hilti",
            "item_id": null,
            "system_id": null,
            "back_order_reason": null
        },
        "project": {
            "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
            "number": "WTS-2017-03",
            "name": "WHPH HQ Renovation"
        },
        "requisition": {
            "cinx_guid": null,
            "number": null,
            "name": null
        },
        "purchase_order": {
            "cinx_guid": "0435078e-fc66-53a8-b69e-7641e2247437",
            "number": "P19-062819",
            "name": "P19-062819",
            "submitter": {
                "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
                "name": "Will Stone",
                "email": "willstone@cinx.com"
            }
        },
        "delivery": {
            "ship_via": null,
            "deliver_to": null,
            "location_type": "JOB SITE",
            "location_name": null,
            "instructions": null,
            "labeling_instructions": null,
            "packaging_instructions": null
        },
        "work_breakdown": {
            "work_order_id": null,
            "work_order_name": null,
            "spool_id": null,
            "spool_name": null,
            "building_name": null,
            "level": "MAIN",
            "space": null,
            "sub_space": null,
            "system": "GREASE WASTE UG",
            "arch_symbol": null,
            "tag": null
        },
        "job_cost": {
            "cinx_phase_guid": null,
            "phase_name": "124",
            "cinx_material_cost_code_guid": null,
            "material_cost_code_name": null,
            "cinx_category_guid": null,
            "category_name": null
        },
        "taxes": {
            "taxable": true,
            "cinx_guid": null,
            "tax_group_name": null,
            "tax_type": null,
            "tax_rate": 0,
            "tax_amount": 0
        },
        "design": {
            "model_item_guid": null,
            "model_name": null,
            "model_file": null,
            "drawing_number": "P1.0",
            "drawing_name": null
        },
        "attibutes": [],
        "updates": []
    }]
}

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Deliveries

Delivery Definition

CINX Object Definition - Delivery

A CINX Delivery is created when a shipment from a vendor is received. A Delivery references a purchase order on which the materials were ordered.

Dependencies and Business Rules

Supported API Services

Get Delivery List

API Endpoint - Get a List of Deliveries

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getDeliveries(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "f116ad07-ab08-5b87-ad42-18cab454e086",
            "number": "D000012",
            "name": "D000012",
            "description": null,
            "workflow_status": "INCOMPLETE",
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "ship_via": "SUPPLIER TRUCK",
            "location_type": "FABRICATION SHOP",
            "location_name": null,
            "date_received": "2019-06-07",
            "receiver": "Will Stone",
            "total_weight": "456",
            "packing_slip_number": "54654645",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "po_number": "PO-123",
            "po_name": "PO123",
            "date_need_by": "2019-06-11",
            "external_references": [],
            "item_count": 15
        }
    ]
}

GET

This endpoint will be used to get a list of deliveries. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/deliveries

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/deliveries

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
vendor Limits results to a single vendor. {organization's vendor number}
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
po-guid Limits results to a specific purchase order. {cinx_po_id}
submitter Limits results to a specified CINX user. {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Delivery

API Endpoint - Get a Delivery

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getDelivery(cinx_api_token, delivery_guid)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "69e5c268-1c7b-54bf-acd9-601f4f59a52b",
        "locked": "1",
        "number": "D19-4512",
        "name": "D19-4512",
        "description": null,
        "date_received": "2019-06-27",
        "ship_via": "SUPPLIER TRUCK",
        "location_type": "JOB SITE",
        "location_name": null,
        "packing_slip_number": null,
        "tracking_id": null,
        "total_weight": null,
        "condition": null,
        "was_insured": "0",
        "driver": null,
        "truck": null,
        "fob_type": null,
        "fob_point": null,
        "user_comment": null,
        "workflow_status": "COMPLETE",
        "item_count": 3,
        "receiver": {
            "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
            "name": "Will Stone",
            "email": "willstone@cinx.com"
        },
        "purchase_order": {
            "cinx_guid": "5c88bd83-7675-54b0-8c11-61644cf470d6",
            "number": "P19-789412",
            "name": "P19-789412",
            "date_need_by": ""
        },
        "vendor": {
            "cinx_commerce_guid": "de0cf849-6f7b-5df6-9ae9-f924659f2d25",
            "number": "CXV101",
            "name": "National Sales Company"
        },
        "project": {
            "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
            "number": "WTS-2017-03",
            "name": "WTS-2017-03"
        },
        "external_references": [],
        "items": [{
                "cinx_guid": "4361e462-7406-5989-84f6-9e2e7b2c5521",
                "sequence": 1,
                "quantity_ordered": 3,
                "quantity_accepted": 3,
                "quantity_refused": 0,
                "date_received": "2019-06-27",
                "allow_substitutes": true,
                "hph_code": "326ZU6541",
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": null,
                "upc": "67024006731",
                "size": "3",
                "description": null,
                "mfr_name": null,
                "workflow_status": "COMPLETE",
                "photo_url": null,
                "delivery": {
                    "ship_via": "SUPPLIER TRUCK",
                    "location_type": "JOB SITE",
                    "location_name": null
                },
                "billable_weight": {
                    "weight": 0,
                    "uom": null
                },
                "hazmat": {
                    "is_hazmat": false,
                    "hazmat_code": null
                },
                "receiver": {
                    "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
                    "name": "Will Stone",
                    "email": "willstone@cinx.com"
                },
                "vendor": {
                    "cinx_commerce_guid": "de0cf849-6f7b-5df6-9ae9-f924659f2d25",
                    "number": "CXV101",
                    "name": "National Sales Company",
                    "item_id": null,
                    "system_id": null
                },
                "work_breakdown": {
                    "work_order_id": null,
                    "work_order_name": null,
                    "spool_id": null,
                    "spool_name": null,
                    "building_name": null,
                    "level": "MAIN",
                    "space": null,
                    "sub_space": null,
                    "system": "SAN W&V UG",
                    "arch_symbol": null,
                    "tag": null
                },
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": "124",
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code": null,
                    "cinx_category_guid": null,
                    "category_name": null
                },
                "design": {
                    "model_item_guid": null,
                    "model_name": null,
                    "model_file": null,
                    "drawing_number": "P1.0",
                    "drawing_name": null
                },
                "attributes": []
            }
        ]
    }]
}

GET

This endpoint will be used to get the details of a specific delivery. Note: This response will include the delivery’s items.

URL Pattern: {api path}/{api_version}/sub/{api_token}/delivery/{cinx_guid}

The cinx_guid will be the delivery's CINX Id.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/delivery/e73c118f-1ee9-57e0-9c79-1775c1a04b81

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Delivery Template

API Endpoint - Get a Delivery Template

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getDeliveryTemplate(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "doc_info": {},
        "template": {
            "cinx_guid": null,
            "number": null,
            "name": null,
            "description": null,
            "date_received": null,
            "cinx_receiver_guid": null,
            "ship_via": null,
            "location_type": "JOB SITE",
            "location_name": null,
            "packing_slip_number": null,
            "tracking_id": null,
            "total_weight": null,
            "condition": null,
            "was_insured": false,
            "driver": null,
            "truck": null,
            "fob_type": null,
            "fob_point": null,
            "user_comment": null,
            "purchase_order": {
                "cinx_guid": null,
                "number": null
            },
            "vendor": {
                "cinx_commerce_guid": null,
                "number": null
            },
            "project": {
                "cinx_guid": null,
                "number": null
            },
            "items": [{
                "cinx_po_item_guid": null,
                "quantity_accepted": 0,
                "quantity_refused": 0,
                "date_received": null,
                "cinx_receiver_guid": null,
                "workflow_status": "INCOMPLETE",
                "photo_url": null,
                "delivery": {
                    "ship_via": null,
                    "location_type": null,
                    "location_name": null
                },
                "billable_weight": {
                    "weight": null,
                    "uom": null
                },
                "hazmat": {
                    "is_hazmat": false,
                    "hazmat_code": null
                },
                "attributes": [
                    {
                        "name": null,
                        "value": null
                    }]
            }]
        },
        "field_options": {},
        "api_calls": []
}

GET

This endpoint will be used to get a CINX Template for a delivery.

URL Pattern: {api path}/{api_version}/sub/{api_token}/template/delivery

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/template/delivery

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

The table below defines the input fields within the template.

TEMPLATE FIELDS

Name Data Type Required Default Note
cinx_guid String (GUID Format) POST = No; PUT = Yes CINX System Id.
number String Yes Public number for the object.
name String Yes Public name for the object.
description String No Public description for the object.
date_received Date (YYYY-MM-DD) No Date the delivery was processed.
cinx_receiver_guid String (GUID Format) No CINX Id for the user who processed the delivery.
ship_via String No How the products were delivered or otherwise acquired. Template has a list of optional values.
delivery_location_type String Yes JOB SITE Type of location where the delivery was received. Template has a list of optional values.
delivery_location_name String No Name of the location where the materials were delivered.
packing_slip_number String No Id number from the shipment's packing slip.
tracking_id String No Identification number of the package. For example, a tracking number issued by a delivery service.
total_weight String No Total weight of the full shipment.
condition String No User description of quality of the shipment packaging and handling.
was_insured Boolean Yes FALSE Indicator if the shipment was insured.
driver String No Name of the driver who delivered the shipment.
truck String No Id of the truck that delivered the shipment.
fob_type String No F.O.B. Type. Template has a list of optional values.
fob_point String No F.O.B. Point.
user_comment String No General comment defined by a CINX user.
purchase_order.cinx_guid String (GUID Format) No CINX Id of the Purchase Order against which the delivery was made. Field is not modifiable.
purchase_order.number String No Public number for the Purchase Order. Field is not modifiable.
vendor.cinx_commerce_guid String (GUID Format) No CINX Commerce Id for the vendor. Field is not modifiable.
vendor.number String No The public number of the vendor from whom the products were sourced. Field is not modifiable.
project.cinx_guid String (GUID Format) No CINX Project Id. Field is not modifiable.
project.number String No The public number of the project from which the items are being requested. Field is not modifiable.
items.cinx_po_item_guid String (GUID Format) Yes CINX System Id for the item on the purchase order.
items.quantity_accepted Real Yes 0 Quantity of the item that was accepted during the delivery receiving.
items.quantity_refused Real Yes 0 Quantity of the item that was refused during the delivery receiving.
items.date_received Date (YYYY-MM-DD) No Date the delivery of the product was processed.
items.cinx_receiver_guid String (GUID Format) No CINX Id for the user who received the product.
items.photo_url String No Link to a photo of the item being received.
items.delivery.ship_via String No How the product was delivered or otherwise acquired. Template has a list of optional values.
items.delivery.location_type String Yes JOB SITE Location type where the product was delivered. Template has a list of optional values.
items.delivery.location_name String No Name of the location where the product was delivered.
items.billable_weight.weight String No Weight of the product that could be subject to a delivery charge.
items.billable_weight.uom String No Unit-of-measure of the product's billable weight.
items.hazmat.is_hazmat Boolean Yes FALSE Indicator if the delivered product is labeled as a Hazardous Material.
items.hazmat.hazmat_code String No Hazardous Material code assigned to the product.
items.attributes.name String No Name of the attribute.
items.attributes.value String No Value of the attribute.

Get Delivery Number

API Endpoint - Get a New Delivery Number

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getDeliveryNumber(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "delivery": "D-000001"
        }
    ]
}

GET

This endpoint will be used to get a value to be used in the number field of a new delivery.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/auto-number/delivery

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/auto-number/delivery

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Create Delivery

API Endpoint - Create a New Delivery

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

var isSynchronous = true;
//dObject can be created based on the template retrieved from cinxApi.getDeliveryTemplate(cinx_api_token) call
cinxApi.postDelivery(cinx_api_token, dObject, isSynchronous)
            .then(function (response) {
            console.log(response);
            }); 

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {

        }
    ]
}

POST

This endpoint will be used to create a new delivery.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-delivery-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json
synchronous Switch to have the payload processed synchronously. 1

Modify Delivery

API Endpoint - Modify a Delivery

PUT

This API endpoint will be used to modify an existing CINX delivery.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/partner/exec/cinx/json-delivery-import?body=json

URL Samples:

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
body Defines the content type contained in the payload json
synchronous Switch to have the payload processed synchronously. 1

Invoices

Invoice Definition

CINX Object Definition - Invoices

An Invoice is a vendor document is that indicates the quantities and costs of the products or services provider by the vendor. The invoice document will also define payment terms and dates.

Dependencies and Business Rules

Supported API Services

Get Invoice List

API Endpoint - Get a List of Invoices

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [{
        "cinx_guid": "8ead0386-496b-571c-b14f-09eafeeb6758",
        "number": "I456123",
        "name": "I456123",
        "workflow_status": "PENDING E-INVOICE",
        "erp_status": "NOT SUBMITTED",
        "assigned_to": "Will Stone",
        "entry_type": "MANUAL",
        "entered_by": null,
        "date_entered": "",
        "accept_type": "MANUAL",
        "accepted_by": null,
        "date_accepted": "",
        "date_issued": "2019-06-08",
        "date_payment_due": "2019-07-08",
        "vendor_number": "H125",
        "vendor_name": "Hilti",
        "po_number": "PO123",
        "po_name": "PO123",
        "project_number": "WTS-2017-03",
        "project_name": "HPH HQ Renovation",
        "external_references": [],
        "item_count": 15
    }]
}

GET

This endpoint will be used to get a list of invoices. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/invoices

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/invoices

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
po-guid Limits results to a specific purchase order. {cinx_po_id}
status Limits results to a specific status. PENDING E-INVOICE, ENTERED, REVIEWED, ACCEPTED, IN-DISPUTE, ON-HOLD, REJECTED, SUBMITTED
erp Limits results to a specific erp status. NOT SUBMITTED, PENDING, SUBMITTED, APPLIED
vendor Limits results to a single vendor. {organization's vendor number}
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Invoice

API Endpoint - Get an Invoice

GET

This endpoint will be used to get the details of a specific invoice. Note: This response will include the invoice’s items.

URL Pattern: {api path}/{api_version}/sub/{api_token}/invoice/{cinx_guid}

The cinx_guid will be the invoice’s CINX Id.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/invoice/8ead0386-496b-571c-b14f-09eafeeb6758

{
    "response": {},
    "rows": [{
        "cinx_guid": "8ead0386-496b-571c-b14f-09eafeeb6758",
        "locked": "0",
        "number": "I456123",
        "name": "I456123",
        "workflow_status": "PENDING E-INVOICE",
        "entry_type": "MANUAL",
        "accepted_type": "MANUAL",
        "erp_status": "NOT SUBMITTED",
        "counts": {
            "credits": 0,
            "charges": 0,
            "items": 1
        },
        "entered_by": {
            "cinx_guid": null,
            "name": null,
            "email": null
        },
        "accepted_by": {
            "cinx_guid": null,
            "name": null,
            "email": null
        },
        "assigned_to": {
            "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
            "name": "Will Stone",
            "email": "willstone@cinx.com"
        },
        "dates": {
            "created": "2019-06-07",
            "last_modified": "2019-06-07",
            "issued": "2019-06-08",
            "received": "2019-06-09",
            "payment_due": "2019-06-21",
            "discount_due": "2019-06-10",
            "entered": "",
            "accepted": ""
        },
        "vendor": {
            "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
            "number": "V101",
            "name": "Hilti",
            "file_url": null
        },
        "customer": {
            "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
            "number": "C101",
            "name": "WTS Mechanical"
        },
        "purchase_order": {
            "cinx_guid": "80e6d9c8-d2e4-5aaa-9bd3-3957430741dd",
            "number": "PO123",
            "name": "PO123"
        },
        "project": {
            "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
            "number": "WTS-2017-03",
            "name": "HPH HQ Renovation"
        },
        "payment_terms": {
            "discount_percent": 1.5,
            "discount_days_type": null,
            "discount_days": 10,
            "due_days": null,
            "late_fee_percent": null
        },
        "bill_to": {
            "address1": null,
            "address2": null,
            "address3": null,
            "city": null,
            "state": null,
            "postal_code": null,
            "location_name": null,
            "attention": null
        },
        "remit_to": {
            "address1": null,
            "address2": null,
            "address3": null,
            "city": null,
            "state": null,
            "postal_code": null,
            "location_name": null,
            "attention": null
        },
        "external_references": [],
        "credits": [],
        "charges": [],
        "items": [{
                "cinx_guid": "73d55d4b-4436-5539-aad2-7f2a11666146",
                "sequence": 1,
                "quantity": 1,
                "unit_price": 270.05,
                "price_uom": "E",
                "currency": "USD",
                "invoice_status": "PENDING",
                "allow_substitutes": true,
                "hph_code": "326ZU6542",
                "org_item_id": null,
                "org_system_id": null,
                "mfr_part_number": null,
                "upc": "67024006745",
                "size": "4",
                "description": null,
                "mfr_name": null,
                "item_type": "MATERIAL",
                "vendor": {
                    "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
                    "number": "V101",
                    "name": "Hilti",
                    "item_id": null,
                    "system_id": null
                },
                "purchase_order": {
                    "cinx_guid": "80e6d9c8-d2e4-5aaa-9bd3-3957430741dd",
                    "number": "PO-123",
                    "name": "PO123",
                    "quantity": 1,
                    "quantity_received": 1,
                    "unit_price": 270.05,
                    "price_uom": "E",
                    "currency": "USD"
                },
                "project": {
                    "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
                    "number": "WTS-2017-03",
                    "name": "WTS-2017-03"
                },
                "job_cost": {
                    "cinx_phase_guid": null,
                    "phase_name": "124",
                    "cinx_material_cost_code_guid": null,
                    "material_cost_code_name": null,
                    "cinx_category_guid": null,
                    "category_name": null
                },
                "taxes": {
                    "taxable": true,
                    "cinx_guid": null,
                    "tax_group_name": null,
                    "tax_type": null,
                    "tax_rate": 0,
                    "tax_amount": 0
                },
                "attributes": []
            }
        ]
    }]
}

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Returns

Return Definition

CINX Object Definition - Return

A CINX Return is a contractor initiated process of returning previously purchased products to the vendor from which it was sourced. Part of the return process is receiving an RMA from a vendor which will be attached the the return. In CINX an organization may establish the return reasons and actions that are available to users when returning products.

Dependencies and Business Rules

Supported API Services

Get Return List

API Endpoint - Get a List of Returns

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "cinx_guid": "03dfb081-fc43-5196-8b58-d8277278bc59",
            "number": "R000001",
            "name": "R000001",
            "workflow_status": "RMA REQUESTED",
            "rma_number": null,
            "date_rma_expires": null,
            "reason_name": "Wrong Product",
            "action_name": "Replace Item",
            "assigned_to": "Will Stone",
            "ship_via": "SUPPLIER TRUCK",
            "delivery_location_type": "FABRICATION SHOP",
            "delivery_location_name": null,
            "vendor_number": "H125",
            "vendor_name": "Hilti",
            "po_number": "PO-123",
            "po_name": "PO123",
            "project_number": "WTS-2017-03",
            "project_name": "HPH HQ Renovation",
            "external_references": [],
            "item_count": 1
        }
    ]
}

GET

This endpoint will be used to get a list of returns. See the Optional URL Parameters list for additional query parameters that can be used in the URL.

URL Pattern: {api path}/{api_version}/sub/{api_token}/returns

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/returns

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
vendor Limits results to a single vendor. {organization's vendor number}
delivery Limits results to a specific delivery type location. JOB SITE, FABRICATION SHOP, OFFICE, WAREHOUSE, FABRICATOR
ship-via Limits results to a specific ship via value. SUPPLIER TRUCK, MOTOR COMMON CARRIER, CUSTOMER PICKUP, TRACKING GROUND, GROUND, AIR EXPRESS, AIR, PRIVATE PARCEL SERVICE
po-guid Limits results to a specific purchase order. {cinx_po_id}
owner Limits results to a specified CINX user to whom the transaction is assigned {cinx_user_id}
number Limits results to a specified transaction number. {transaction_number}
format Defines the response format type. If not specified, json will be used. json, xml
offset Defines the offset to use when returning the items. Integer
limit Defines the number of results to include in the response. If not specified, 50 will be used. Integer

Get Return

API Endpoint - Get a Return

GET

This endpoint will be used to get the details of a specific return. Note: This response will include the return’s items.

URL Pattern: {api path}/{api_version}/sub/{api_token}/return/{cinx_guid}

The cinx_guid will be the return's CINX Id.

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/return/03dfb081-fc43-5196-8b58-d8277278bc59

{
    "response": {},
    "rows": [{
        "cinx_guid": "3fe371f8-5295-59c3-9987-c1da2ac20144",
        "locked": "0",
        "number": "R1245454",
        "name": "R1245",
        "workflow_status": "RMA RECEIVED",
        "counts": {
            "credits": 0,
            "charges": 0,
            "items": 1
        },
        "dates": {
            "created": "2019-06-13",
            "last_modified": "2019-06-13",
            "rma_requested": "2019-06-13",
            "rma_issued": "2019-06-14",
            "rma_expires": "2019-06-28",
            "call_tag_pickup": "2019-06-19",
            "processed": "",
            "shipped": "",
            "closed": ""
        },
        "assigned_to": {
            "cinx_guid": "4a23ff84-9d61-5ab3-95c9-3870cb2727bd",
            "name": "Karl Stone",
            "email": "karlstone@cinx.com"
        },
        "customer": {
            "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
            "number": "C101",
            "name": "WTS Mechanical -DEV"
        },
        "vendor": {
            "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
            "number": "V101",
            "name": "Hilti"
        },
        "rma_request": {
            "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
            "name": "Will Stone",
            "email": "willstone@cinx.com"
        },
        "vendor_rma": {
            "number": "RMA-541254",
            "issued_by": {
                "cinx_guid": "185aabe1-3487-5f59-9ad5-c577a76bd392",
                "name": "Will Stone",
                "email": "willstone@cinx.com"
            },
            "call_tag": "0",
            "instructions": "",
            "file_url": null
        },
        "return_processed": {
            "cinx_guid": null,
            "name": null,
            "email": null
        },
        "return_shipped": {
            "cinx_guid": null,
            "name": null,
            "email": null
        },
        "return_closeed": {
            "cinx_guid": null,
            "name": null,
            "email": null
        },
        "delivery": {
            "address1": "995 Industrial Park Rd",
            "address2": "",
            "address3": "",
            "city": "Littleton",
            "state": "NH",
            "postal_code": "03561",
            "country": "USA",
            "ship_via": "SUPPLIER TRUCK",
            "fob_type": "PREPAID AND CHARGED TO CUSTOMER",
            "ship_from": "",
            "attention": "Frank",
            "location_type": "BRANCH",
            "location_name": null,
            "instructions": "Vendor's shipping instructions for the return.",
            "terms": "",
            "packing_slip_number": "134546588",
            "total_weight": 1452,
            "was_insured": "1",
            "declared_value": 4567
        },
        "purchase_order": {
            "cinx_guid": "80e6d9c8-d2e4-5aaa-9bd3-3957430741dd",
            "number": "PO-123",
            "name": "PO123"
        },
        "vendor_delivery": {
            "cinx_guid": null,
            "number": null,
            "name": null
        },
        "project": {
            "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
            "number": "WTS-2017-03",
            "name": "WTS-2017-03"
        },
        "external_references": [],
        "credits": [],
        "charges": [],
        "items": [{
            "cinx_guid": "92d1bbb2-2c21-57e1-8fbc-540c4b7ea8bd",
            "sequence": 1,
            "quantity": 2,
            "unit_price": 7.596,
            "price_uom": "E",
            "currency": "USD",
            "credit_percentage": 0,
            "credit_unit_price": 0,
            "workflow_status": "RMA RECEIVED",
            "allow_substitutes": true,
            "hph_code": "118CH1430",
            "org_item_id": null,
            "org_system_id": null,
            "mfr_part_number": null,
            "upc": "61194203404",
            "size": "4",
            "description": null,
            "mfr_name": null,
            "item_type": "MATERIAL",
            "file_url": null,
            "vendor": {
                "cinx_commerce_guid": "7880c854-017f-5359-96de-fdef626c33cf",
                "number": "V101",
                "name": "Hilti",
                "item_id": "org-0001-4221",
                "system_id": null,
                "rma_number": "RMA-541254",
                "restock_fee": 0,
                "return_code": null
            },
            "return_reason": {
                "cinx_guid": "57d44251-1b29-5882-bedb-ac59fdc6b90a",
                "code": "22-item",
                "name": "Wrong Product"
            },
            "return_action": {
                "cinx_guid": "f51cc612-1f47-5f74-b47a-088e2f47d207",
                "code": "41-replace",
                "name": "Replace Item"
            },
            "purchase_order": {
                "cinx_guid": "80e6d9c8-d2e4-5aaa-9bd3-3957430741dd",
                "number": "PO-123",
                "name": "PO123"
            },
            "project": {
                "cinx_guid": "bb613aff-4256-5359-b7cd-391505d19e01",
                "number": "WTS-2017-03",
                "name": "HPH HQ Renovation"
            },
            "job_cost": {
                "cinx_phase_guid": null,
                "phase_name": "124",
                "cinx_material_cost_code_guid": null,
                "material_cost_code_name": null,
                "cinx_category_guid": null,
                "category_name": null
            },
            "taxes": {
                "taxable": true,
                "cinx_guid": null,
                "tax_group_name": null,
                "tax_type": null,
                "tax_rate": 0,
                "tax_amount": 0
            },
            "attributes": []
        }]
    }]
}

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Return Number

API Endpoint - Get a New Return Number

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('http://api.dev.cinx.biz', '2.0');

cinxApi.getReturnNumber(cinx_api_token)
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "return": "RET-000001"
        }
    ]
}

GET

This endpoint will be used to get a value to be used in the number field of a new return.

Notes

URL Pattern: {api path}/{api_version}/sub/{api_token}/auto-number/return

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/auto-number/return

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Additional Info

PING Server

API Endpoint - PING CINX API Server

//Using cinx-api.js
var cinxApi = new CinxApi();
cinxApi.setCredentials('CINX USERNAME', 'CINX PASSWORD');
cinxApi.setApiPathAndVersion('https://api.cinx.com', '2.0');

cinxApi.pingCinx()
    .then(function(response) {
        console.log(response);
    });

The above code returns JSON structured like this:

{
  "response": {},
  "rows": [
    {
      "status": 200,
      "message": "CINX: API Ping Response: Ok"
    }
  ]
}

GET

This endpoint can be used to test the availability of the CINX API.

URL Pattern: {api path}/{api_version}/ping

URL Samples: https://api.cinx.com/2.0/ping

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Countries

API Endpoint - Get a List of Countries

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "name": "United States",
            "abv_alpha2": "US",
            "abv_alpha3": "USA",
            "country_code": "840"
        }
    ]
}

GET

This endpoint will be used to get a list of countries. This can be used when setting addresses within the API. Please use the abv_alpha3 field.

URL Pattern: {api path}/{api_version}/sub/countries

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/countries

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get States

API Endpoint - Get a List of States for a Country

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "abv": "AL",
            "name": "Alabama"
        }
    ]
}

GET

This endpoint will be used to get a list of states for a given country. This can be used when setting addresses within the API. Please use the abv field.

URL Pattern: {api path}/{api_version}/sub/country/{country_abv_alpha3}/states

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/country/usa/states

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

Get Currencies

API Endpoint - Get a List of Currencies

The above code returns JSON structured like this:

{
    "response": {},
    "rows": [
        {
            "country": "United States",
            "currency_name": "US Dollar (Next day)",
            "currency_abv": "USN"
        }
    ]
}

GET

This endpoint will be used to get a list of currencies. Please use the currency_abv field when setting a currency in CINX.

URL Pattern: {api path}/{api_version}/sub/currencies

URL Sample: https://api.cinx.com/2.0/sub/dfed7d88-adf8-5356-8029-fe061c93d0fe/currencies

OPTIONAL URL PARAMETERS

Parameter Name Description Value Type or Options
format Defines the response format type. If not specified, json will be used. json, xml

CINX Concepts

List of CINX Terms and Concepts

Application: is a grouping of pages, functionality, or an external software partner system that interacts with the CINX platform and is managed via a CINX subscription plan.

Base Price: is the initial price for a product or service. It is also commonly referred to as a List Price or MSRP.

BOM Item: a grouping of fields that defines an item once it has been added to a BOM. This structure inherits from the Item structure and also provides additional fields for defining its use within a project (quantities, breakdown structure, spec requirements).

Buy Price: is the price paid to a vendor for the purchase of a product or service. The Buy Price is often a discounted price from a previously established base price - which is commonly referred to as a List Price or a MSRP.

Catalog: a collection of items grouped together in a CINX database structure. Catalogs may contain construction materials, sub-contract services, rental equipment, and other content necessary for the execution of a construction project or maintenance of a building.

Catalog Item: a building material product or construction related service that is stored within a CINX catalog. Its data structure includes core information about the product including, part identifiers, descriptions, attributes, dimensional data, and URLs.

CINX GUID: uniquely identifies an entity within the CINX system. The Id is comprised of three elements (Entity Type, Domain, and Id) which together will provide the location and Id of the entity.

Item Labor: an Item level structure for storing labor unit (installation time) and cost information.

Item Quantity: a component of the BOM Item that is used to detail all information about a quantity's instance including its type, value, uom, and availability information.

Item Relationship: a method by which Items can be associated with one another in the CINX system. The data structure defines the type and identification of an item relationship. Relationship types include alternates, required, and complimentary items.

Labor Unit: a component of an Item's Labor structure which stores installation time elements.

Manufacturer: an organization that produces building material products.

Multiplier: (also referred to as a discount) is a decimal value that is applied to a price to determine a buy or sell price.

Organization: CINX entity that defines a company or a grouping of individuals (residential customers) that participates or is referenced within the CINX platform.

Price Sheet: a collection of fields that identify an instance of a building product manufacturer's or service provider's price list stored within the CINX system.

Project: a job that is being performed for a customer/client on a building, structure, or other asset (Built Entity).

Sell Price: is the price charged to a customer for a product or service. A Sell Price is normally related to a Buy Price or an established base price.

User: a person who has created a personal CINX account.

Transaction/BOM Intro

CINX BOM and BOM-ITEM Introduction

BOM

Like many construction software systems, CINX employs the BOM concept. BOM is an acronym for Bill of Materials. A BOM is a collection of materials/services that are grouped together for a particular job or transactional purpose. A BOM will generally contain some descriptive information about its use and then have a listing of materials or services that are linked to it.

CINX supports the following BOM types:

BOM-ASSEMBLY (Assembly)

BOM-REQ (Requisition)

BOM-RFQ (Request for Quotation)

BOM-QUOTE (Quotation)

BOM-PO (Purchase Order)

BOM-PO-MEMO (Purchase Order Change Order)

BOM-DELIVERY

BOM-RETURN

BOM-INVOICE

PROJECT

BOM-ITEM

Once a Catalog item is added to a BOM/Project it becomes a BOM-ITEM. Items imported from another system (estimating, CAD) will also become BOM-ITEMs.

BOM-ITEM is a CINX data structure that is used with all BOM types. It inherits from the Catalog Item structure and also provides additional fields for defining its use within a project (quantities, breakdown structure, spec requirements) and transactions (availability and delivery information).

Login: https://secure.cinx.com/login

Forgot CINX Password: https://secure.cinx.com/login/reset

To set up a CINX account click here: https://secure.cinx.com/join

Terms: http://support.cinx.com/terms-of-use-agreement