Projects enable services companies to automate many of the functions of project management.


Get Project Object Definition

lookup

List all the fields and relationships for the project object:

<lookup>
    <object>PROJECT</object>
</lookup>

Parameters

Name Required Type Description
object Required string Use PROJECT

List Projects

query

List the product ID and currency for each project:

<query>
    <object>PROJECT</object>
    <select>
        <field>PROJECTID</field>
        <field>CURRENCY</field>
    </select>
</query>

Parameters

Name Required Type Description
object Required string Use PROJECT
select Required sequence One or more field names and an optional aggregate function such as count or sum. Returning all fields is not supported.
filter Optional object Query filter expression. Check the value of a single field using operators such as equalto/like, or multiple fields using and/or. Query fields on related objects using the dot operator (for example, VENDOR.CREDITLIMIT on APBILL).
orderby Optional object Provide an order element with a field name and choose an ascending or descending sort order, for example:
<order>
        <field>RECORDNO</field>
        <descending/>
</order>
options Optional object Set the caseinsensitive element to true for a case-insensitive query:
    <caseinsensitive>true</caseinsensitive>
In a multi-entity company, set the showprivate element to true to query data in private entities:
   <showprivate>true</showprivate>
pagesize Optional integer Custom page size between 1 and 2000 items (Default: 100)
offset Optional integer Point at which to start indexing into records (Default: 0)

List Projects (Legacy)

readByQuery

<readByQuery>
    <object>PROJECT</object>
    <fields>*</fields>
    <query></query>
    <pagesize>100</pagesize>
</readByQuery>

Parameters

Name Required Type Description
object Required string Use PROJECT
fields Optional string Comma-separated list of fields on the object to list. For best performance and predictability, limit the number of fields. To return all fields, omit the element or provide * for the value.
query Required string SQL-like query based on fields on the object. The following operators are supported: <, >, >=, <=, =, like, not like, in, not in, IS NOT NULL, IS NULL, AND, OR. Illegal XML characters must be properly encoded, and single quotes must be escaped with backslashes ('Jane\'s Deli'). Joins are not supported.
pagesize Optional integer Custom page size between 1 and 1000 items (Default: 100)

Get Project

read

<read>
    <object>PROJECT</object>
    <keys>1</keys>
    <fields>*</fields>
</read>

Parameters

Name Required Type Description
object Required string Use PROJECT
keys Required string Project RECORDNO to get
fields Optional string Comma-separated list of fields on the object to get. For best performance and predictability, limit the number of fields. To return all fields, omit the element or provide * for the value.

Get Project by Name

readByName

<readByName>
    <object>PROJECT</object>
    <keys>P1234</keys>
    <fields>*</fields>
</readByName>

Parameters

Name Required Type Description
object Required string Use PROJECT
keys Required string Project PROJECTID to get
fields Optional string Comma-separated list of fields on the object to get. For best performance and predictability, limit the number of fields. To return all fields, omit the element or provide * for the value.

Create Project

create

<create>
    <PROJECT>
        <NAME>hello world</NAME>
        <PROJECTCATEGORY>Contract</PROJECTCATEGORY>
    </PROJECT>
</create>

Parameters

Name Required Type Description
PROJECT Required object Object to create

PROJECT

Name Required Type Description
PROJECTID Optional string Project ID to create. Required if company does not use auto-numbering.
NAME Required string Name
PROJECTCATEGORY Required string Project category
DESCRIPTION Optional string Description
PARENTID Optional string Parent project ID
INVOICEWITHPARENT Optional boolean Use false for No, true for Yes. (Default: false)
PROJECTTYPE Optional string Project type
PROJECTSTATUS Optional string Project status
CUSTOMERID Optional string Customer ID
MANAGERID Optional string Project manager employee ID
CUSTUSERID Optional string External user ID
SALESCONTACTID Optional string Sales contact employee ID
DOCNUMBER Optional string Reference number
USERRESTRICTIONS Optional string User restrictions
STATUS Optional string Status. Use active for Active otherwise use inactive for Inactive. (Default: active)
CONTACTINFO Optional object Primary contact
BILLTO Optional object Bill to contact
SHIPTO Optional object Ship to contact
TERMNAME Optional string Payment term
BILLINGTYPE Optional string Billing type
BEGINDATE Optional string Begin date in format mm/dd/yyyy
ENDDATE Optional string End date in format mm/dd/yyyy
DEPARTMENTID Optional string Department ID
LOCATIONID Optional string Location ID
CLASSID Optional string Class ID
SUPDOCID Optional string Attachments ID
BILLABLEEXPDEFAULT Optional boolean Billable employee expense. Use false for No, true for Yes. (Default: false)
BILLABLEAPPODEFAULT Optional boolean Billable AP/purchasing. Use false for No, true for Yes. (Default: false)
CURRENCY Optional string Currency code
SONUMBER Optional string Sales order number
PONUMBER Optional string Purchase order number
POAMOUNT Optional currency Purchase order amount
PQNUMBER Optional string Purchase quote number
CONTRACTAMOUNT Optional currency Contract amount
PROJECT_RULES Optional PROJECT_RULES[] Transaction rules for project. Multiple PROJECT_RULES elements may be passed.
BILLINGPRICING Optional string Labor pricing option
BILLINGRATE Optional number Labor pricing default rate
EXPENSEPRICING Optional string Expense pricing option
EXPENSERATE Optional number Expense pricing default rate
POAPPRICING Optional string AP/purchasing pricing option
POAPRATE Optional number AP/purchasing pricing default rate
BUDGETAMOUNT Optional currency Budgeted billing amount
BUDGETEDCOST Optional currency Budgeted cost
BUDGETQTY Optional number Budgeted duration
BUDGETID Optional string GL budget ID
INVOICEMESSAGE Optional string Invoice message
INVOICECURRENCY Optional string Invoice currency code
Custom fields Optional varies Custom fields. For a multi-pick-list custom field, implode multiple field values with #~#.

CONTACTINFO

Name Required Type Description
CONTACTNAME Required string Primary contact name

BILLTO

Name Required Type Description
CONTACTNAME Required string Bill to contact name

SHIPTO

Name Required Type Description
CONTACTNAME Required string Ship to contact name

PROJECT_RULES

Name Required Type Description
RULENAME Required string Transaction rule name

Update Project

You can update an existing project as described here. If you want to provide observed-percent-completed information for a project, see Project Observed Percent Completed.

update

<update>
    <PROJECT>
        <PROJECTID>P1234</PROJECTID>
        <NAME>hello world</NAME>
    </PROJECT>
</update>

Update a project with 2 transaction rules:

<update>
    <PROJECT>
        <PROJECTID>P1234</PROJECTID>
        <PROJECT_RULES>
            <RULENAME>Test Rule</RULENAME>
        </PROJECT_RULES>
        <PROJECT_RULES>
            <RULENAME>Test Rule2</RULENAME>
        </PROJECT_RULES>
    </PROJECT>
</update>

Parameters

Name Required Type Description
PROJECT Required object Object to update

PROJECT

Name Required Type Description
RECORDNO Optional integer Project record number to update. Required if not using PROJECTID.
PROJECTID Optional string Project ID. Required if not using RECORDNO.
NAME Optional string Name
PROJECTCATEGORY Optional string Project category
DESCRIPTION Optional string Description
PARENTID Optional string Parent project ID
INVOICEWITHPARENT Optional boolean Use false for No, true for Yes. (Default: false)
PROJECTTYPE Optional string Project type
PROJECTSTATUS Optional string Project status
CUSTOMERID Optional string Customer ID
MANAGERID Optional string Project manager employee ID
CUSTUSERID Optional string External user ID
SALESCONTACTID Optional string Sales contact employee ID
DOCNUMBER Optional string Reference number
USERRESTRICTIONS Optional string User restrictions
STATUS Optional string Status. Use active for Active otherwise use inactive for Inactive. (Default: active)
CONTACTINFO Optional object Primary contact
BILLTO Optional object Bill to contact
SHIPTO Optional object Ship to contact
TERMNAME Optional string Payment term
BILLINGTYPE Optional string Billing type
BEGINDATE Optional string Begin date in format mm/dd/yyyy
ENDDATE Optional string End date in format mm/dd/yyyy
DEPARTMENTID Optional string Department ID
LOCATIONID Optional string Location ID
CLASSID Optional string Class ID
SUPDOCID Optional string Attachments ID
BILLABLEEXPDEFAULT Optional boolean Billable employee expense. Use false for No, true for Yes. (Default: false)
BILLABLEAPPODEFAULT Optional boolean Billable AP/purchasing. Use false for No, true for Yes. (Default: false)
CURRENCY Optional string Currency code
SONUMBER Optional string Sales order number
PONUMBER Optional string Purchase order number
POAMOUNT Optional currency Purchase order amount
PQNUMBER Optional string Purchase quote number
CONTRACTAMOUNT Optional currency Contract amount
PROJECT_RULES Optional PROJECT_RULES[] Transaction rules for project. Multiple PROJECT_RULES elements may be passed. This is a complete replace, so you must pass all existing rules you want to keep.
BILLINGPRICING Optional string Labor pricing option
BILLINGRATE Optional number Labor pricing default rate
EXPENSEPRICING Optional string Expense pricing option
EXPENSERATE Optional number Expense pricing default rate
POAPPRICING Optional string AP/purchasing pricing option
POAPRATE Optional number AP/purchasing pricing default rate
BUDGETAMOUNT Optional currency Budgeted billing amount
BUDGETEDCOST Optional currency Budgeted cost
BUDGETQTY Optional number Budgeted duration
BUDGETID Optional string GL budget ID
INVOICEMESSAGE Optional string Invoice message
INVOICECURRENCY Optional string Invoice currency code
Custom fields Optional varies Custom fields. For a multi-pick-list custom field, implode multiple field values with #~#.

CONTACTINFO

Name Required Type Description
CONTACTNAME Required string Primary contact name

BILLTO

Name Required Type Description
CONTACTNAME Required string Bill to contact name

SHIPTO

Name Required Type Description
CONTACTNAME Required string Ship to contact name

PROJECT_RULES

Name Required Type Description
RULENAME Required string Transaction rule name

Delete Project

delete

<delete>
    <object>PROJECT</object>
    <keys>112</keys>
</delete>

Parameters

Name Required Type Description
object Required string Use PROJECT
keys Required string Project RECORDNO to delete

Provide feedback