BCI API Support Reference (version 1.0)


Project And Role Information

Projects



URL path: REST Request SOAP Request Base
http://api.bciasia.com/rest/projects.json http://api.bciasia.com/projects.cfc?wsdl http://api.bciasia.com/projects.cfc
serializable: Yes
Methods: getAllVersionsByPK, getAllVersionsByQuery, getByPK, getByQuery, getVersionByPK, getAllSinceLastQuery
Localization and translation:
(BCI Asia API only)
Refer to the Localization and translation page for details.


getAllVersionsByPK
remote Array getAllVersionsByPK ( required numeric projectid, string fields="", required string token, string sortby="", string sortbyorder="" )

Get all versions for a project passing a projectID

Methods of access are:

SOAP: http://api.bciasia.com/projects.cfc?wsdl&method=getAllVersionsByPK&projectid={projectid}(&returnFormat=wddx / &returnFormat=json)

Output: Array

Parameters:
projectid: numeric, required - ID of the project for which all versions are being requested
fields: string, optional - Fields being requested for the return data. Full list provided under "Fields" section below
token: string, required - Allocated token for current login session
sortby: string, optional - Field to sort the data by
sortbyorder: string, optional - Order of the sort (Ascending / Descending)

getAllVersionsByQuery
remote Array getAllVersionsByQuery ( string projectid, string state, string version, string cat, string subcat, string timestamp_from, string timestamp_to, numeric timestamp, string construction_start_from, string construction_start_to, string storeys_min, string storeys_max, string floor_area_min, string floor_area_max, string project_value_min, string project_value_max, string project_usvalue_min, string project_usvalue_max, string keyword, string status, string stage, string ownership, string development, string postcode, string address, string town, string region, string country, string fields="", required string token, string sortby, string sortbyorder, numeric NumberOfRows="1000", numeric StartRow="1" , string companyid )

Get project information based on search criteria searching across all version of project not just the last published versions

Methods of access are:

SOAP: http://api.bciasia.com/projects.cfc?wsdl&method=getAllVersionsByQuery&{search-criteria}(&returnFormat=wddx / &returnFormat=json)

Output: Array

Parameters:
projectid: string, optional - ID or comma-seperated list of IDs of the project for which all versions are being searched
state: string, optional - ID or comma-seperated list of IDs of provinces in which projects are located
version: string, optional - Specific project version
cat: string, optional - ID or comma-seperated list of IDs of categories
subcat: string, optional - ID or comma-seperated list of IDs of sub-categories
timestamp_from: string, optional - Minimum date stamp for searching using a time frame, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
timestamp_to: string, optional - Maximum date stamp for searching using a time frame, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
timestamp: numeric, optional - Number of days relative to today as a time-frame, for example 5 means searching through last 5 days
construction_start_from: string, optional - Minimum construction start date, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
construction_start_to: string, optional - Maximum construction start date, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
storeys_min: string, optional - Minimum number of storeys
storeys_max: string, optional - Maximum number of storeys
floor_area_min: string, optional - Minimum floor area
floor_area_max: string, optional - Maximum floor area
project_value_min: string, optional - Minimum project value in millions
project_value_max: string, optional - Maximum project value in millions
project_usvalue_min: string, optional - Minimum project value in US Dollar millions
project_usvalue_max: string, optional - Maximum project value in US Dollar millions
keyword: string, optional - Keyword for project
status: string, optional - ID or comma-seperated list of IDs of the project status
stage: string, optional - ID or comma-seperated list of IDs of the project stage
ownership: string, optional - ID or comma-seperated list of IDs of the project ownership types
development: string, optional - ID or comma-seperated list of IDs of the project development types
postcode: string, optional - Postcode of project location
address: string, optional - Address of project location
town: string, optional - Town/Suburb of project location
region: string, optional - ID or comma-seperated list of IDs of BCI regions
country: string, optional - ID or comma-seperated list of IDs of countries
fields: string, optional - Fields being requested for the return data. Full list provided under "Fields" section below
token: string, required - Allocated token for current login session
sortby: string, optional - Field to sort the data by
sortbyorder: string, optional - Order of the sort (Ascending / Descending)
NumberOfRows: numeric, optional - Number of results being requested in the reponse data
StartRow: numeric, optional - Start position of the data in the result recordset
companyid: string, optional - ID or comma-seperated list of IDs of companies for which projects are being searched

getByPK
remote Struct getByPK ( required numeric projectrefid, string fields="", required string token, string sortby, string sortbyorder )

Get Latest Version by Projectid

Access the lastest version of a project as identified by the project id. Methods of access are:

SOAP: http://api.bciasia.com/projects.cfc?method=getByPK&projectrefid={projectrefid}(&returnFormat=wddx / &returnFormat=json)

REST: http://api.bciasia.com/rest/projects/{projectrefid}(.json / .xml)

Output: Structure

Parameters:
projectrefid: numeric, required - Projectrefid of the project record
fields: string, optional - Fields being requested for the return data. Full list provided under "Fields" section below
token: string, required - Allocated token for current login session
sortby: string, optional - Field to sort the data by
sortbyorder: string, optional - Order of the sort (Ascending / Descending)

getByQuery
remote Array getByQuery ( numeric projectrefid, string projectid, string state, string last="1", string version, string cat, string cat_1, string subcat, string timestamp_from, string timestamp_to, numeric timestamp, string updatedate_from, string updatedate_to, numeric updatedate, string construction_start_from, string construction_start_to, string storeys_min, string storeys_max, string floor_area_min, string floor_area_max, string project_value_min, string project_value_max, string project_usvalue_min, string project_usvalue_max, string keyword, string status, string stage, string ownership, string development, string postcode, string address, string town, string region, string country, string fields="", required string token, string sortby, string sortbyorder, numeric NumberOfRows="1000", numeric StartRow="1", string companyid )

Function to retrieve project information based on search parameters

Methods of access are:

SOAP: http://api.bciasia.com/projects.cfc?wsdl&method=getByQuery&search-parameters(&returnFormat=wddx / &returnFormat=json)

REST: http://api.bciasia.com/rest/projects(.json / .xml)&search-parameters

Output: Array

Parameters:
projectrefid: numeric, optional - Projectrefid of the project record
projectid: string, optional - ID or comma-seperated list of IDs of the project for which all versions are being searched
state: string, optional - ID or comma-seperated list of IDs of provinces in which projects are located
last: string, optional - Search for only the last published version (value=1)
version: string, optional - Specific project version
cat: string, optional - ID or comma-seperated list of IDs of categories
subcat: string, optional - ID or comma-seperated list of IDs of sub-categories
timestamp_from: string, optional - Minimum date stamp for searching using a time frame, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
timestamp_to: string, optional - Maximum date stamp for searching using a time frame, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
timestamp: numeric, optional - Number of days relative to today as a time-frame, for example 5 means searching through last 5 days
updatedate_from: string, optional - Minimum update date for searching using a time frame, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
updatedate_to: string, optional - Maximum update date for searching using a time frame, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
updatedate: numeric, optional - Number of days relative to today as a time-frame, for example 5 means searching through last 5 days. This considers the exact time so updatedate=1 effectively means projects updated/edited in the last 24 hours, updatedate=2 would mean projects reported in the last 48 hours.
construction_start_from: string, optional - Minimum construction start date, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
construction_start_to: string, optional - Maximum construction start date, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
storeys_min: string, optional - Minimum number of storeys
storeys_max: string, optional - Maximum number of storeys
floor_area_min: string, optional - Minimum floor area
floor_area_max: string, optional - Maximum floor area
project_value_min: string, optional - Minimum project value in millions
project_value_max: string, optional - Maximum project value in millions
project_usvalue_min: string, optional - Minimum project value in US Dollar millions
project_usvalue_max: string, optional - Maximum project value in US Dollar millions
keyword: string, optional - Keyword for project
status: string, optional - ID or comma-seperated list of IDs of the project status
stage: string, optional - ID or comma-seperated list of IDs of the project stage
ownership: string, optional - ID or comma-seperated list of IDs of the project ownership types
development: string, optional - ID or comma-seperated list of IDs of the project development types
postcode: string, optional - Postcode of project location
address: string, optional - Address of project location
town: string, optional - Town/Suburb of project location
region: string, optional - ID or comma-seperated list of IDs of BCI regions
country: string, optional - ID or comma-seperated list of IDs of countries
green: string, optional - ID or comma-seperated list of IDs of Green Star Ratings
fields: string, optional - Fields being requested for the return data. Full list provided under "Fields" section below
token: string, required - Allocated token for current login session
sortby: string, optional - Field to sort the data by
sortbyorder: string, optional - Order of the sort (Ascending / Descending)
NumberOfRows: numeric, optional - Number of results being requested in the reponse data
StartRow: numeric, optional - Start position of the data in the result recordset
companyid: string, optional - ID or comma-seperated list of IDs of companies for which projects are being searched

getVersionByPK
remote Array getVersionByPK ( required numeric projectid, required numeric version, string fields="", required string token, string sortby="", string sortbyorder="" )

Output: Array

Parameters:
projectid: numeric, required - ID of the project
version: numeric, required - Version number of the project
fields: string, optional - Fields being requested for the return data. Full list provided under "Fields" section below
token: string, required - Allocated token for current login session
sortby: string, optional - Field to sort the data by
sortbyorder: string, optional - Order of the sort (Ascending / Descending)

getAllSinceLastQuery
remote Array getAllSinceLastQuery ( string projectid, string state, string version, string cat, string cat_1, string subcat, string timestamp_from, string timestamp_to, numeric timestamp, string construction_start_from, string construction_start_to, string storeys_min, string storeys_max, string floor_area_min, string floor_area_max, string project_value_min, string project_value_max, string project_usvalue_min, string project_usvalue_max, string keyword, string status, string stage, string ownership, string development, string postcode, string address, string town, string region, string country, string fields="", required string token, string sortby, string sortbyorder, numeric NumberOfRows="1000", numeric StartRow="1" , string companyid )

Function to retrieve newer project versions since the last time user made a request to this method

Output: Array

Parameters:
projectrefid: numeric, optional - Projectrefid of the project record
projectid: string, optional - ID or comma-seperated list of IDs of the project for which all versions are being searched
state: string, optional - ID or comma-seperated list of IDs of provinces in which projects are located
last: string, optional - Search for only the last published version (value=1)
version: string, optional - Specific project version
cat: string, optional - ID or comma-seperated list of IDs of categories
subcat: string, optional - ID or comma-seperated list of IDs of sub-categories
timestamp_from: string, optional - Minimum date stamp for searching using a time frame, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
timestamp_to: string, optional - Maximum date stamp for searching using a time frame, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
timestamp: numeric, optional - Number of days relative to today as a time-frame, for example 5 means searching through last 5 days
construction_start_from: string, optional - Minimum construction start date, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
construction_start_to: string, optional - Maximum construction start date, accepted datetime format (dd/mm/yyyy or dd/mm/yyyy HH:mi where dd represents 2 digit dates, mm represents 2 digit month, yyyy is 4 digits for year, HH represents 2 digit hours according to a 24-hr clock, mi represents 2 digits minutes)
storeys_min: string, optional - Minimum number of storeys
storeys_max: string, optional - Maximum number of storeys
floor_area_min: string, optional - Minimum floor area
floor_area_max: string, optional - Maximum floor area
project_value_min: string, optional - Minimum project value in millions
project_value_max: string, optional - Maximum project value in millions
project_usvalue_min: string, optional - Minimum project value in US DOllar millions
project_usvalue_max: string, optional - Maximum project value in US DOllar millions
keyword: string, optional - Keyword for project
status: string, optional - ID or comma-seperated list of IDs of the project status
stage: string, optional - ID or comma-seperated list of IDs of the project stage
ownership: string, optional - ID or comma-seperated list of IDs of the project ownership types
development: string, optional - ID or comma-seperated list of IDs of the project development types
postcode: string, optional - Postcode of project location
address: string, optional - Address of project location
town: string, optional - Town/Suburb of project location
region: string, optional - ID or comma-seperated list of IDs of BCI regions
country: string, optional - ID or comma-seperated list of IDs of countries
fields: string, optional - Fields being requested for the return data. Full list provided under "Fields" section below
token: string, required - Allocated token for current login session
sortby: string, optional - Field to sort the data by
sortbyorder: string, optional - Order of the sort (Ascending / Descending)
NumberOfRows: numeric, optional - Number of results being requested in the reponse data
StartRow: numeric, optional - Start position of the data in the result recordset
companyid: string, optional - ID or comma-seperated list of IDs of companies for which projects are being searched

Fields
Selectable fields for project information
PROJECTREFIDLONG
PROJECTIDLONG
PROJECT_TYPESTRING(1000)
PROJECT_NAMESTRING(1000)
ADDRESSSTRING(1000)
POSTCODEINTEGER
TOWNSTRING(100)
STATEINTEGER
COUNTRY_NAMESTRING(1000)
VALUELONG
USVALUELONG
VERSIONINTEGER
REMARKSSTRING(4000)
STATUS_TEXTSTRING(2000)
PROJECTSTAGESIDINTEGER
PROJECTSTAGESTRING(1000)
PROJECT_STATUSIDINTEGER
PROJECT_STATUSSTRING(100)
TIME_STAMPDATE
UPDATE_DATEDATE
BCIREGIONIDINTEGER
KEYWORDSTRING(1000)
CON_STARTDATE
CON_ENDDATE
AG_STOREYSLONG
FLOOR_AREALONG
SITE_AREADOUBLE
DEVIDINTEGER
DEV_TYPESTRING(1000)
OWNERIDINTEGER
LASTINTEGER
OWNER_TYPESTRING(1000)
SUBCAT_1LONG
SUBCAT_1_NAMESTRING(1000)
SUBCAT_2LONG
SUBCAT_2_NAMESTRING(1000)
SUBCAT_3LONG
SUBCAT_3_NAMESTRING(1000)
SUBCAT_4LONG
SUBCAT_4_NAMESTRING(1000)
SUBCAT_5LONG
SUBCAT_5_NAMESTRING(1000)
SUBCAT_6LONG
SUBCAT_6_NAMESTRING(1000)
SUBCAT_7LONG
SUBCAT_7_NAMESTRING(1000)
SUBCAT_8LONG
SUBCAT_8_NAMESTRING(1000)
CAT_1LONG
CAT_1_NAMESTRING(1000)
CAT_2LONG
CAT_2_NAMESTRING(1000)
CAT_3LONG
CAT_3_NAMESTRING(1000)
CAT_4LONG
CAT_4_NAMESTRING(1000)
CAT_5LONG
CAT_5_NAMESTRING(1000)
FIRST_PUBLISHEDDATE
LAST_PUBLISHEDDATE
GREEN_STAR_RATING_IDINTEGER
GREEN_STAR_RATING_IDSSTRING(1000)
GREEN_STAR_RATING_TYPEINTEGER
GREEN_STAR_SCHEME_IDINTEGER
GREEN_STAR_LEVEL_IDINTEGER
GREEN_STAR_STATUS_IDINTEGER
Fields in local languages
L_PROJECT_NAMESTRING(1000)
L_PROJECT_TYPESTRING(1000)
L_ADDRESSSTRING(1000)
L_TOWNSTRING(1000)
L_PROVINCESTRING(1000)
L_REMARKSSTRING(4000)
L_STATUS_TEXTSTRING(2000)
COMPANYID (can be selected only if using companyID as search parameter)LONG
Sample Output - getByPK() - XML
<wddxPacket version='1.0'> <header/> <data> <struct> <var name='CON_END'><dateTime>2013-05-15T00:00:00+10:00</dateTime></var> <var name='PROJECTID'><number>2.7313017E7</number></var> <var name='SUBCAT_1_NAME'><string>Schools</string></var> <var name='DEV_TYPE'><string>New</string></var> <var name='PROJECTSTAGE'><string>Construction</string></var> <var name='VERSION'><number>17.0</number></var> <var name='DEVID'><number>3.0</number></var> <var name='OWNERID'><number>3.0</number></var> <var name='PROJECTREFID'><number>1.0037304E7</number></var> <var name='SUBCAT_2_NAME'><string></string></var> <var name='CAT_3_NAME'><string></string></var> <var name='FLOOR_AREA'><string></string></var> <var name='SUBCAT_5_NAME'><string></string></var> <var name='TOWN'><string>Esperance</string></var> <var name='SUBCAT_3_NAME'><string></string></var> <var name='CON_START'><dateTime>2012-04-16T00:00:00+10:00</dateTime></var> <var name='SUBCAT_4_NAME'><string></string></var> <var name='OWNER_TYPE'><string>Government</string></var> <var name='LAST'><number>1.0</number></var> <var name='SUBCAT_6_NAME'><string></string></var> <var name='CAT_2_NAME'><string></string></var> <var name='PROJECT_NAME'><string>ESPERANCE PRIMARY SCHOOL</string></var> <var name='STATE'><number>5.0</number></var> <var name='KEYWORD'><string>ESPERANCE PRIMARY SCHOOL</string></var> <var name='REMARKS'><string>Some project remarks here</string></var> <var name='POSTCODE'><number>6450.0</number></var> <var name='CAT_5_NAME'><string></string></var> <var name='AG_STOREYS'><string></string></var> <var name='PROJECT_STATUS'><string>Construction Commenced</string></var> <var name='TIME_STAMP'><dateTime>2013-05-17T17:23:00+10:00</dateTime></var> <var name='SITE_AREA'><string></string></var> <var name='SUBCAT_8_NAME'><string></string></var> <var name='VALUE'><number>1.1517E7</number></var> <var name='BCIREGIONID'><number>1079.0</number></var> <var name='PROJECT_STATUSID'><number>15.0</number></var> <var name='CAT_3'><string></string></var> <var name='CAT_4'><string></string></var> <var name='CAT_1'><number>2.0</number></var> <var name='PROJECT_TYPE'><string>PRIMARY SCHOOL - redevelopment</string></var> <var name='STATUS_TEXT'><string>CONSTRUCTION COMMENCED</string></var> <var name='CAT_2'><string></string></var> <var name='CAT_1_NAME'><string>Education</string></var> <var name='CAT_5'><string></string></var> <var name='ADDRESS'><string>106 Andrew St Esperance WA 6450</string></var> <var name='SUBCAT_8'><string></string></var> <var name='CAT_4_NAME'><string></string></var> <var name='PROJECTSTAGESID'><number>8.0</number></var> <var name='SUBCAT_7'><string></string></var> <var name='SUBCAT_6'><string></string></var> <var name='SUBCAT_5'><string></string></var> <var name='SUBCAT_4'><string></string></var> <var name='SUBCAT_3'><string></string></var> <var name='SUBCAT_2'><string></string></var> <var name='SUBCAT_1'><number>201.0</number></var> <var name='SUBCAT_7_NAME'><string></string></var> </struct> </data> </wddxPacket>
Sample Output - getByQuery() / getAllVersionsByPK() / getVersionByPK() / getAllVersionsByQuery() - XML
<wddxPacket version='1.0'> <header/> <data> <array length='1'> <struct> <var name='PROJECTREFID'><number>1.0037304E7</number></var> <var name='TIME_STAMP'><dateTime>2013-05-17T17:23:00+10:00</dateTime></var> <var name='PROJECTSTAGE'><string>Construction</string></var> <var name='STATE'><number>5.0</number></var> <var name='PROJECT_TYPE'><string>PRIMARY SCHOOL - redevelopment</string></var> <var name='VERSION'><number>17.0</number></var> <var name='ADDRESS'><string>106 Andrew St Esperance WA 6450</string></var> <var name='VALUE'><number>1.1517E7</number></var> <var name='TOWN'><string>Esperance</string></var> <var name='PROJECTID'><number>2.7313017E7</number></var> <var name='PROJECT_STATUS'><string>Construction Commenced</string></var> <var name='PROJECT_NAME'><string>ESPERANCE PRIMARY SCHOOL</string></var> </struct> </array> </data> </wddxPacket>