Rev.2016.10.20
General / Miscellaneous
Authorize
This method retrieves a user profile which has the APIToken property for use in subsequent calls.
Syntax (C#):
User Authorize(string username, string password);
Parameters:
Parameter Data Type Nullable Required Description
username string No Yes Username used to login
password string No Yes Password
Return Value:
User object containing information about the user.

This object has the APIToken property. In order to authorize API calls that require an APIContext, use the APIToken property from the User object for the APIContext.UserToken property.


GetSupportedLanguages
This method retrieves the list of supported languages for the system.
Syntax (C#):
Language[] GetSupportedLanguages();
Parameters: None
Return Value:
Returns supported languages as a Language business objects.

GetSupportedTimeZones
This method retrieves the list of supported time zones for the system.
Syntax (C#):
Timezone[] GetSupportedTimeZones();
Parameters: None
Return Value:
Returns supported time zones as a Timezone business objects.

GetKnownEvents
This method retrieves the list of known events codes for the system.
Syntax (C#):
String[] GetKnownEvents(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns known system events as a list.

GetKnownAssetUploadParameters
This method retrieves the list of known asset upload parameters for the system.
Syntax (C#):
String[] GetKnownAssetUploadParameters(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns known asset upload parameters as a list.

Admin Panel
GetUserList
This method retrieves the list of users in the system that is both active and disabled and requires Hosted API authorization.
Syntax (C#):
User[] GetUserList(APIContext context, Int32? accountId, String searchText);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer Yes No The account id to search under.
searchText String Yes No The text to search in the full name or email address.
Return Value:
Returns a list of users in the system as User business objects.

GetAccountList
This method retrieves the list of all the accounts and requires Hosted API authorization.
Syntax (C#):
AccountProfile[] GetAccountList(APIContext context, Int32? accountId, String accountName, String domain, String ownerEmail, String ownerName, Boolean? bitActive);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer Yes No The account id.
accountName String Yes No The text to search in the account name.
domain String Yes No The text to search in the domain.
ownerEmail String Yes No The text to search in the owner’s email.
ownerName String Yes No The text to search in the owner’s name.
bitActive Boolean Yes No Return active accounts only (true).
Return Value:
Returns a list of accounts in the system as Account Profile business objects.

GetAccountProfile
This method retrieves the list of all the accounts and requires Hosted API authorization.
Syntax (C#):
AccountProfile GetAccountProfile(APIContext context, Int32? accountId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer Yes No The account id.
Return Value:
Returns a single account profile from the system as an Account Profile business object.

AddAccount
This method retrieves the list of all the accounts and requires Hosted API authorization.
Syntax (C#):
Account AddAccount(APIContext context, Boolean active, String ownerEmail, Int32 packageId, String name, String domain, String headerText, Int32 userLimit, Int32 storage, Int32 storagePerUser);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
active Boolean No Yes True to activate the account.
ownerEmail String No Yes Existing user’s email address to add the person as an owner.
packageId Integer No Yes Package specifications the account would use.
name String No Yes Name of the account.
domain String No Yes Access domain of the account.
headerText Integer Yes No Text for site branding.
userLimit Integer No Yes Max user limit for the account.
storage Integer64 No Yes Max storage limit for the account.
storagePerUser Integer64 No Yes Max storage per user for each user on the account.
Return Value:
Returns the successfully added account as Account business object.

UpdateAccount
This method updates the account information and requires Hosted API authorization.
Syntax (C#):
Account UpdateAccount(APIContext context, Boolean? active, String ownerEmail, Int32? packageId, String name, String domain, String headerText, Int32? userLimit, Int32? storage, Int32? storagePerUser);
Parameters:
Parameter Data Type Nullable Required Description
Context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer No Yes Account id to update.
active Boolean Yes No True to activate the account.
ownerEmail String Yes No Existing user’s email address to add the person as an owner.
packageId Integer Yes No Package specifications the account would use.
name String Yes No Name of the account.
domain String Yes No Access domain of the account.
headerText Integer Yes No Text for branding the site instead of an image.
userLimit Integer Yes No Max user limit for the account.
storage Integer Yes No Max storage limit for the account.
storagePerUser Integer Yes No Max storage per user for each user on the account.
Return Value:
Returns the successfully updated account as Account business object.

RemoveAccount
This method removes the account and requires Hosted API authorization.
This action is not reversible.
Syntax (C#):
Account RemoveAccount(APIContext context, Int32 accountId);
Parameters:
Parameter Data Type Nullable Required Description
Context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer No Yes The account id to remove from the system.
Return Value:
Returns the successfully removed account as Account business object.

GetAccountMembershipList
This method retrieves the list of domains the user is associated with and requires Hosted API authorization.
Syntax (C#):
AccountUser[] GetAccountMembershipList(APIContext context, Int32? userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
userId Integer Yes No The user id to retrieve the account domains of. If null the currently logged in user’s results are returned.
Return Value:
Returns the list of domains that are associated with the user as AccountUser business objects

GetAccountAliasList
This method retrieves the valid domain list for an account and requires Hosted API authorization.
Syntax (C#):
AccountAlias[] GetAccountAliasList(APIContext context, Int32 accountId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer No Yes The account id to search the valid account domains.
Return Value:
Returns the list valid domains configured for this account as AccountAlias business objects

AddAccountAlias
This method adds the account domain in the specific account and requires Hosted API authorization.
Syntax (C#):
AccountAlias AddAccountAlias(APIContext context, Int32 accountId, String domain);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer No Yes The account id to add the account domain under.
domain String No Yes The url of the domain.
Return Value:
Returns the successfully added account domain as AccountAlias business object.

UpdateAccountAlias
This method updates the account alias and requires Hosted API authorization.
Syntax (C#):
AccountAlias UpdateAccountAlias(APIContext context, Int32 accountAliasId, Int32 accountId, String domain);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountAliasId Integer No Yes Account domain id to update.
accountId Integer No Yes The account id which has the account domain.
domain String No Yes The url of the domain.
Return Value:
Returns the updated account domain as AccountAlias business object.

RemoveAccountAlias
This method removes the account domain and requires Hosted API authorization.
This action is not reversible.
Syntax (C#):
AccountAlias RemoveAccountAlias(APIContext context, Int32 accountAliasId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountAliasId Integer No Yes The account domain id to remove from the system.
Return Value:
Returns the successfully removed account domain as AccountAlias business object.

GetPartnerKeyList
This method retrieves the list of partner keys and requires Hosted API authorization.
Syntax (C#):
PartnerKey[] GetPartnerKeyList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
Return Value:
Returns the list of partner keys as PartnerKey business objects.

AddPartnerKey
This method creates the partner key and allows the option to enable or disable partner API and hosted API calls which requires Hosted API authorization.
Syntax (C#):
PartnerKey AddPartnerKey(APIContext context, String name, Boolean isPartnerAPIEnabled, Boolean isHostedAPIEnabled, String password);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
name String No Yes The name of the partner key.
isPartnerAPIEnabled Boolean No Yes True to allow partner api calls.
isHostedAPIEnabled Boolean No Yes True to allow hosted api calls.
password String No Yes The password to allow access to hosted and partner api calls.
Return Value:
Returns the successfully created partner key as PartnerKey business object.

UpdatePartnerKey
This method updates the partner key and requires Hosted API authorization.
Syntax (C#):
PartnerKey UpdatePartnerKey(APIContext context, Integer partnerKeyId, String name, Boolean isPartnerAPIEnabled, Boolean isHostedAPIEnabled, String password);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
partnerKeyId String No Yes The partner key id.
name String Yes No The name of the partner key.
isPartnerAPIEnabled Boolean Yes No True to allow partner api calls.
isHostedAPIEnabled Boolean Yes No True to allow hosted api calls.
password String Yes No The password to allow access to hosted and partner api calls.
Return Value:
Returns the successfully updated partner key as PartnerKey business object.

RemovePartnerKey
This method removes the partner key and requires Hosted API authorization.
Syntax (C#):
PartnerKey RemovePartnerKey(APIContext context, Int32 partnerKeyId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
partnerKeyId Integer No Yes The partner key id.
Return Value:
Returns the successfully removed partner key as PartnerKey business object.

GetRecycleBinItemList
This method retrieves the recycle bin item list and requires Hosted API authorization.
Syntax (C#):
RecycleBinItem[] GetRecycleBinItemList(APIContext context, Int32? accountId, Int32? userId, Int32? referenceId, RecycleBinItemType? itemType, String searchText);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer Yes No The account id to search under.
userId Integer Yes No The user who removed the item.
referenceId Integer Yes No The reference id of the item.
referenceType RecycleBinItemType Yes No The specific type of elements to search for.
searchText String Yes No Searches the name of the item.
Return Value:
Returns the list of all the recycle bin items based on the parameters as RecycleBinItem business objects.

RestoreRecycleBinItem
This method allows restoring the removed items from the recycle bin and requires Hosted API authorization.
Syntax (C#):
RecycleBinItem RestoreRecycleBinItem(APIContext context, Int32 itemId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
itemId Integer No Yes The recycle bin record id to restore.
Return Value:
Returns the successfully restored item as RecycleBinItem business object.

RemoveRecycleBinItem
This method allows purging one or all the items from the recycle bin and requires Hosted API authorization.
This action is not reversible.
Syntax (C#):
RecycleBinItem RemoveRecycleBinItem(APIContext context, Int32? itemId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
itemId Integer Yes No If the recycle bin id is supplied then the item will be purged from the recycle bin list. If the recycle bin id is not supplied all the items will be purged from the recycle bin list.
Return Value:
Returns the successfully removed recycle bin item as RecycleBinItem business object.

GetAccountCallbackList
This method retrieves the account callbacks list.
Syntax (C#):
Callback[] GetAccountCallbackList(APIContext context, String urlSearchText, String eventSearchText, Boolean? isEnabled);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
urlSearchText String Yes No The url of the callback.
eventSearchText String Yes No The event added on the callback.
isEnabled Boolean Yes No The enabled, disabled or both types of callback.
Return Value:
Returns the list of all the account callbacks based on the parameters as Callback business objects.

AddAccountCallback
This method creates the account callback.
Syntax (C#):
Callback AddAccountCallback(APIContext context, String url, CallbackMethod method, Boolean isEnabled, Boolean shouldRetry, Int32? maxAttempts, Int32? retryDelay, String[] eventFilter);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
url String No Yes The callback url.
method CallbackMethod No Yes Type of callback method.
isEnabled Boolean No Yes True if the callback is enabled.
shouldRetry Boolean No Yes True if retry option is enabled.
maxAttempts Integer Yes No Maximum number of attempts to hit the callback.
retryDelay Integer Yes No The number of minutes to retry after attempt fails.
eventFilter String Yes No The events to capture. (See GetKnownEvents).
Supports custom events to be captured as well.
Return Value:
Returns the successfully created account callback as a Callback business object.

UpdateAccountCallback
This method updates the account callback.
Syntax (C#):
Callback UpdateAccountCallback(APIContext context, Int32 callbackId, String url, CallbackMethod method, Boolean? isEnabled, Boolean? shouldRetry, Int32? maxAttempts, Int32? retryDelay, String[] eventFilter);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
callbackId Integer No Yes This is the callback id.
url String No Yes The callback url.
method CallbackMethod No Yes Type of callback method.
isEnabled Boolean Yes No True if the callback is enabled.
shouldRetry Boolean Yes No True if retry option is enabled.
maxAttempts Integer Yes No Maximum number of attempts to hit the callback.
retryDelay Integer Yes No The number of minutes to retry after attempt fails.
eventFilter String[] No Yes The events to capture. (See GetKnownEvents).
Supports custom events to be captured as well.
The new events will replace the previous events.
If nothing is passed in the callbacks will be removed.
Return Value:
Returns the successfully updated account callback as a Callback business object.

RemoveAccountCallback
This method removes the account callback.
Syntax (C#):
Callback RemoveAccountCallback(APIContext context, Int32 callbackId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
callbackId Integer No Yes The callback id.
Return Value:
Returns the successfully removed account callback as a Callback business object.

GetCallbackList
This method retrieves the callback list and requires Hosted API authorization.
Syntax (C#):
Callback[] GetCallbackList(APIContext context, Int32? accountId, String urlSearchText, String eventSearchText, Boolean? isEnabled);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer Yes No The account id.
urlSearchText String Yes No The url of the callback.
eventSearchText String Yes No The event added on the callback.
isEnabled Boolean Yes No The enabled, disabled or both types of callback.
Return Value:
Returns the list of all the callbacks based on the parameters as Callback business objects.

AddCallback
This method creates the callback and requires Hosted API authorization.
Syntax (C#):
Callback AddCallback(APIContext context, Int32? accountId, String url, CallbackMethod method, Boolean isEnabled, Boolean shouldRetry, Int32? maxAttempts, Int32? retryDelay, String[] eventFilter);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer Yes No Allows the callback to be associated with an account.
url String No Yes The callback url.
method CallbackMethod No Yes Type of callback method.
isEnabled Boolean No Yes True if the callback is enabled.
shouldRetry Boolean No Yes True if retry option is enabled.
maxAttempts Integer Yes No Maximum number of attempts to hit the callback.
retryDelay Integer Yes No The number of minutes to retry after attempt fails.
eventFilter String Yes No The events to capture. (See GetKnownEvents).
Supports custom events to be captured as well.
Return Value:
Returns the successfully created callback as a Callback business object.

UpdateCallback
This method updates the callback and requires Hosted API authorization.
Syntax (C#):
Callback UpdateCallback(APIContext context, Int32 callbackId, Int32? accountId, String url, CallbackMethod method, Boolean? isEnabled, Boolean? shouldRetry, Int32? maxAttempts, Int32? retryDelay, String[] eventFilter);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
callbackId Integer No Yes This is the callback id.
accountId Integer Yes No Allows the callback to be associated with an account.
url String No Yes The callback url.
method CallbackMethod No Yes Type of callback method.
isEnabled Boolean Yes No True if the callback is enabled.
shouldRetry Boolean Yes No True if retry option is enabled.
maxAttempts Integer Yes No Maximum number of attempts to hit the callback.
retryDelay Integer Yes No The number of minutes to retry after attempt fails.
eventFilter String[] No Yes The events to capture. (See GetKnownEvents).
Supports custom events to be captured as well.
The new events will replace the previous events.
If nothing is passed in the callbacks will be removed.
Return Value:
Returns the successfully updated callback as a Callback business object.

RemoveCallback
This method removes the callback and requires Hosted API authorization.
Syntax (C#):
Callback RemoveCallback(APIContext context, Int32 callbackId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
callbackId Integer No Yes The callback id.
Return Value:
Returns the successfully removed callback as a Callback business object.

GetQueueItemList
This method retrieves the queue items and requires Hosted API authorization.
Syntax (C#):
QueueItem[] GetQueueItemList(APIContext context, Int32? userId, QueueItemType? queueItemType, QueueItemSubType? subType, DateTime? beforeDate, DateTime? afterDate, Boolean isCompleted);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
userId Integer Yes No The user id who initiated the item.
queueItemType QueueItemType Yes No The type of queue item.
subType QueueItemSubType Yes No The sub type of the queue item.
beforeDate DateTime Yes No The date to get the queue items of before.
afterDate DateTime Yes No The date to get the queue items of after.
isCompleted Boolean No Yes True if the queue items are processed.
Return Value:
Returns the list of all the queue items as QueueItem business objects.

GetPackageList
This method retrieves the package list and requires Hosted API authorization.
Syntax (C#):
Package[] GetPackageList (APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
Return Value:
Returns the list of all the packages as Packages business objects.

IsDomainAvailable
This method checks if the account domain exists and requires Hosted API authorization.
Syntax (C#):
Boolean IsDomainAvailable(APIContext context, String domain);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
domain String No Yes The account domain to validate if it exists.
Return Value:
Returns true or false if the domain is valid.

GetServerSummary
This method checks if the account domain exists and requires Hosted API authorization.
Syntax (C#):
Instance GetServerSummary (APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
Return Value:
Returns the server summary information as Instance business object.
GetInstanceAdminList
This method retrieves the list of all the instance admins and requires Hosted API authorization.
Syntax (C#):
InstanceAdmin[] GetInstanceAdminList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
Return Value:
Returns the list of all the instance admins as Instance Admin business objects.

AddInstanceAdmin
This method adds the user as an instance admin and requires Hosted API authorization.
Syntax (C#):
InstanceAdmin AddInstanceAdmin(APIContext context, String userName, Int32? userId, Int32 roleId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
userName String No No The username of the user.
userId Integer No No The user id of the user. One of these fields is required. If both are provided, userId takes precedence.
roleId Integer No Yes The role of the user. Only Instance roles are valid.
Return Value:
Returns the successfully created instance admin as InstanceAdmin business object.

UpdateInstanceAdmin
This method updates the instance admin and requires Hosted API authorization.
Syntax (C#):
InstanceAdmin UpdateInstanceAdmin(APIContext context, String userName, Int32? userId, Int32 roleId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
userName String No No The username of the user.
userId Integer No No The user id of the user. One of these fields is required. If both are provided, userId takes precedence.
roleId Integer No Yes The role of the user. Only Instance roles are valid.
Return Value:
Returns the successfully updated instance admin as InstanceAdmin business object.

RemoveInstanceAdmin
This method removes the instance admin and requires Hosted API authorization.
Syntax (C#):
InstanceAdmin RemoveInstanceAdmin(APIContext context, Int32 userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
userId Integer No Yes The userid of the instance admin.
Return Value:
Returns the successfully removed instance admin as InstanceAdmin business object.

GetEmailHistoryList
This method gets a list of email history and requires Hosted API authorization.
Syntax (C#):
EmailHistory[] GetEmailHistoryList(APIContext context, Int32 accountId, Int32? userId, Boolean? isCancelled, Datetime? beforeDate, Datetime? afterDate, String searchText);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
accountId Integer Yes No The account id.
userId Integer Yes No The user id of the user.
isCancelled Boolean Yes No
beforeDate Datetime Yes No
afterDate Datetime Yes No
searchText String Yes No
Return Value:
Returns a list of EmailHistory Business objects based upon the selection criteria.

GetUserLoginHistoryList
This method gets a list of user login history and requires Hosted API authorization.
Syntax (C#):
UserLoginHistory[] GetUserLoginHistoryList(APIContext context, Int32? userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
userId Integer No Yes The user id of the user.
Return Value:
Returns a list of UserLoginHistory Business objects based upon the userId.

ReleaseUserPasswordLock
This method releases the password lock on a particular user and requires Hosted API authorization.
Syntax (C#):
UserLoginHistory[] GetUserLoginHistoryList(APIContext context, Int32? userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
userId Integer No Yes The user id of the user.
Return Value:
Returns a single User Business object that has had their password lock successfully reset.

Assets
GetAssetProfile
This method retrieves the asset’s profile.
Syntax (C#):
Asset GetAssetProfile(APIContext context, Int32 assetId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
assetId Integer No Yes The asset id.
Return Value:
Returns the asset profile as Asset business object.

AddAccountAsset
This method uploads the asset on the account level files from bytes.
Syntax (C#):
Asset AddAccountAsset(APIContext context, String name, String fileName, Int32 folderId, Byte[] fileData, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
folderId Integer No Yes The account level folder id. The asset cannot be placed on the account’s root folder.
fileData Byte[] No Yes The file data in bytes.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded asset’s information as Asset business object.

AddProjectAsset
This method uploads the asset on the project level root folder or files from bytes.
Syntax (C#):
Asset AddProjectAsset(APIContext context, String name, String fileName, Int32? folderId, Int32 projectId, Byte[] fileData, Boolean isReferenceFile, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
folderId Integer Yes No The project level folder id. If not supplied then root folder is chosen by default.
projectId Integer No Yes The project id.
fileData Byte[] No Yes The file data in bytes.
isReferenceFile Boolean No Yes True if the file is a non-collaborative file.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded project asset’s information as Asset business object.

AddDeliverableAsset
This method uploads the asset on the deliverable level root folder or files from bytes.
Syntax (C#):
Asset AddDeliverableAsset(APIContext context, String name, String fileName, Int32? folderId, Int32 deliverableId, Byte[] fileData, Boolean isReferenceFile, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
folderId Integer Yes No The deliverable level folder id. If not supplied then root folder is chosen by default.
deliverableId Integer No Yes The deliverable id.
fileData Byte[] No Yes The file data in bytes.
isReferenceFile Boolean No Yes True if the file is a non-collaborative file.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded deliverable asset’s information as Asset business object.

AddVersionedAsset
This method version’s an asset from bytes.
Syntax (C#):
Asset AddVersionedAsset(APIContext context, Int32 previousAsset, String name, String fileName, Byte[] fileData, Boolean isReferenceFile, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
fileData Byte[] No Yes The file data in bytes.
isReferenceFile Boolean No Yes True if the file is a non-collaborative file. If versioning an account asset, this is overridden to true.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded versioned asset’s information as Asset business object.

AddAccountAssetFromLocalUri
This method uploads the asset on the account level files from a local location and requires Hosted API authorization.
Syntax (C#):
Asset AddAccountAssetFromLocalUri(APIContext context, String name, String fileName, Int32 folderId, String filePathWithExtension, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
folderId Integer No Yes The account level folder id. The asset cannot be placed on the account’s root folder.
filePathWithExtension String No Yes The full file path with extension.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded account asset’s information as Asset business object.

AddProjectAssetFromLocalUri
This method uploads the asset on the project level root folder or files from a local location and requires Hosted API authorization.
Syntax (C#):
Asset AddProjectAssetFromLocalUri(APIContext context, String name, String fileName, Int32? folderId, Int32 projectId, String filePathWithExtension, Boolean isReferenceFile, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
folderId Integer Yes No The account level folder id. The asset cannot be placed on the account’s root folder.
projectId Integer No Yes The project id.
filePathWithExtension String No Yes The full file path with extension.
isReferenceFile Boolean No Yes True if the file is a non-collaborative file.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded project asset’s information as Asset business object.

AddDeliverableAssetFromLocalUri
This method uploads the asset on the deliverable level root folder or files from a local location and requires Hosted API authorization.
Syntax (C#):
Asset AddDeliverableAssetFromLocalUri(APIContext context, String name, String fileName, Int32? folderId, Int32 deliverableId, String filePathWithExtension, Boolean isReferenceFile, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
folderId Integer Yes No The account level folder id. The asset cannot be placed on the account’s root folder.
deliverableId Integer No Yes The deliverable id.
filePathWithExtension String No Yes The full file path with extension.
isReferenceFile Boolean No Yes True if the file is a non-collaborative file.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded deliverable asset’s information as Asset business object.

AddVersionedAssetFromLocalUri
This method version’s an asset from a local location and requires Hosted API authorization.
Syntax (C#):
Asset AddVersionedAssetFromLocalUri(APIContext context, Int32 previousAsset, String name, String fileName, String filePathWithExtension, Boolean isReferenceFile, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
filePathWithExtension String No Yes The full file path with extension.
isReferenceFile Boolean No Yes True if the file is a non-collaborative file. If versioning an account asset, this is overridden to true.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded versioned asset’s information as Asset business object.

AddProjectAssetFromExternalUri
This method imports an external asset from a third-party URL to the project level root folder or sub-folder. It requires Partner API authorization.
Syntax (C#):
Asset AddProjectAssetFromExternalUri (APIContext context, String name, String fileName, Int32? folderId, Int32 projectId, string url, Boolean isReferenceFile, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
folderId Integer Yes No The account level folder id. The asset cannot be placed on the account’s root folder.
projectId Integer No Yes The project id.
url String No Yes The url of the asset to be imported. NOTE: Must be URL Encoded.
isReferenceFile Boolean No Yes True if the file is a non-collaborative file.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded project asset’s information as Asset business object.

AddDeliverableAssetFromExternalUri
This method imports an external asset from a third-party URL to the deliverable level root folder or sub-folder. Requires Partner API authorization.
Syntax (C#):
Asset AddDeliverableAssetFromExternalUri (APIContext context, String name, String extension, Int32? folderId, Int32 deliverableId, string url, Boolean isReferenceFile, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
name String No Yes The name of the asset.
fileName
String No Yes The full name of the asset with extension.
folderId Integer Yes No The account level folder id. The asset cannot be placed on the account’s root folder.
deliverableId Integer No Yes The deliverable id.
url String No Yes The url of the asset to be imported. NOTE: Must be URL Encoded.
isReferenceFile Boolean No Yes True if the file is a non-collaborative file.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded deliverable asset’s information as Asset business object.

AddVersionedAssetFromExternalUri
This method version’s an existing asset by importing an external asset from a third-party URL. Requires Partner API authorization.
Syntax (C#):
Asset AddVersionedAssetFromExternalUri(APIContext context, Int32 previousAsset, String name, String extension, string url, Boolean isReferenceFile, List <assetuploadparameter> uploadParameters);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
name String No Yes The name of the asset.
fileName String No Yes The full name of the asset with extension.
url String No Yes The url of the asset to be imported. NOTE: Must be URL Encoded.
isReferenceFile Boolean No Yes True if the file is a non-collaborative file. If versioning an account asset, this is overridden to true.
uploadParameters List Yes No The list of upload parameters.
Return Value:
Returns the successfully uploaded versioned asset’s information as Asset business object.

CopyAsset
This method will replicate an asset and optionally include the comments to a folder within the same account.
Syntax (C#):
Asset CopyAsset(APIContext context, Int32 assetId, String newAssetName, Int32? targetFolderId, Boolean includeFeedback);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
assetId Integer Yes Yes The asset id to create a copy for.
newAssetName String Yes No The new name of the asset, if null, the original is used.
targetFolderId Integer Yes No The project level folder id. If not supplied then root folder is chosen by default.
includeFeedback Boolean No Yes A flag to determine if feedback (comments) should be copied including related markup.
Return Value:
Returns the successfully copied asset’s information as Asset business object.

RenameAsset
This method renames the asset.
Syntax (C#):
Asset RenameAsset(APIContext context, Int32 assetId, String name);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
assetId Integer No Yes The asset id.
name String No Yes The new name of the asset.
Return Value:
Returns the successfully renamed asset as Asset business object.

MoveAsset
This method moves the asset.
Syntax (C#):
Asset MoveAsset(APIContext context, Int32 assetId, Int32 folderId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
assetId Integer No Yes The asset id.
folderId Integer No Yes The folder id where the asset is to be moved.
Return Value:
Returns the successfully moved asset as Asset business object.

UpdateAsset
This method updates the asset’s information.
Syntax (C#):
Asset UpdateAsset(APIContext context, Int32 assetId, Int32? statusId, Boolean? isLocked, String description, String[] tagList);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
assetId Integer No Yes The asset id.
statusId Integer Yes No Status of the asset. Only asset statuses are valid. To remove the value assigned -1 needs to be passed in.
isLocked Boolean Yes No True stricts commenting on the asset.
description String Yes No The description of the asset.
tagList String[] Yes No The tags for the asset. The new tags will replace the previous tags.
Return Value:
Returns the successfully updated asset as Asset business object.

RemoveAsset
This method removes the asset.
Syntax (C#):
Asset RemoveAsset(APIContext context, Int32 assetId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
assetId Integer No Yes The asset id.
Return Value:
Returns the successfully removed asset as Asset business object.

DownloadAsset
This method downloads an asset in bytes and requires Hosted API authorization.
Syntax (C#):
Byte[] DownloadAsset(APIContext context, Int32 assetId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
assetId Integer No Yes The asset id.
Return Value:
Returns the file in bytes.

DownloadAssetToLocalUri
This method downloads an asset to a local location and requires Hosted API authorization.
Syntax (C#):
Boolean DownloadAssetToLocalUri(APIContext context, Int32 assetId, String outputFilePathWithExtension);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
assetId String No Yes The asset id.
outputFilePathWithExtension String No Yes The full path with filename and extension.
Return Value:
Returns true if download was successful.

DownloadAssetImage
This method downloads the asset image in bytes (as a JPG image).
Syntax (C#):
Byte[] DownloadAssetImage(APIContext context, Int32 assetId, Int32? width, Int32? height);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
assetId String No Yes The asset id of the asset.
width String No No The width of the asset.
height String No No The height of the asset.
Return Value:
Returns the image file in bytes.

DownloadAssetImageToLocalUri
This method downloads the asset image (as a jpg) to a local location and requires Hosted API authorization.
Syntax (C#):
Boolean DownloadAssetImageToLocalUri(APIContext context, Int32 assetId, Int32? width, Int32? height, String outputFilePathWithExtension);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
assetId String No Yes The asset id of the asset.
width String No No The width of the asset.
height String No No The height of the asset.
outputFilePathWithExtension String No Yes The full path with filename and extension.
Return Value:
Returns true if download was successful.

DownloadMarkupImage
This method downloads the asset with the markup information related to the comment in bytes and requires Hosted API authorization.
Syntax (C#):
Byte[] DownloadMarkupImage(APIContext context, Int32 commentId, Int32? width, Int32? height);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
commentId String No Yes The comment id of the asset.
width String No No The width of the asset.
height String No No The height of the asset.
Return Value:
Returns the file in bytes.

DownloadMarkupImageToLocalUri
This method downloads the asset with the markup information related to the comment to a local location and requires Hosted API authorization.
Syntax (C#):
Boolean DownloadMarkupImageToLocalUri(APIContext context, Int32 commentId, Int32? width, Int32? height, String outputFilePathWithExtension);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
commentId String No Yes The comment id of the asset.
width String No No The width of the asset.
height String No No The height of the asset.
outputFilePathWithExtension String No Yes The full path with filename and extension.
Return Value:
Returns true if download was successful.

Comments
GetCommentList
This method retrieves the list of comments.
Syntax (C#):
Comment[] GetCommentList(APIContext context, Int32 assetId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
assetId Integer No Yes The asset id.
reviewId Integer Yes No The review Id.
Return Value:
Returns the list of comments as Comment business object. If a review Id is provided then only comments associated with that asset within the confines of the review.

GetCommentThread
This method retrieves the comment and its replies.
Syntax (C#):
CommentThread[] SelectCommentThread(APIContext context, Int32 assetId, Int32 commentId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
assetId Integer No Yes The asset id.
commentId Integer No Yes The comment id.
Return Value:
Returns the list with the comment with its replies as CommentThread business object.

GetCommentThreadList
This method retrieves the list of comments and their replies.
Syntax (C#):
CommentThread[] SelectCommentThreadList(APIContext context, Int32 assetId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
assetId Integer No Yes The asset id.
Return Value:
Returns the list of comments with their replies as CommentThread business object.

AddCommentReply
The method creates the comment reply for the comment.
Syntax (C#):
CommentReply AddCommentReply(APIContext context, Int32 commentId, Boolean? isDraft, String comment);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
commentId Integer No Yes The comment id.
isDraft Boolean Yes No True if the comment reply is a draft.
comment String No Yes The comment reply.
Return Value:
Returns the successfully created comment reply as CommentReply business object.

UpdateCommentReply
This method updates the comment reply for the comment.
Syntax (C#):
CommentReply UpdateCommentReply(APIContext context, Int32 commentReplyId, Int32? commentId, Boolean? isDraft, String comment);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
commentReplyId Integer No Yes The comment reply id.
commentId Integer Yes No The comment id.
isDraft Boolean Yes No True if the comment reply is draft.
comment String No Yes The comment.
Return Value:
Returns the successfully updated comment reply as CommentReply business object.

RemoveCommentReply
This method removes the comment reply for the comment.
Syntax (C#):
CommentReply RemoveCommentReply(APIContext context, Int32 commentReply);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
commentReply Integer No Yes The comment reply id.
Return Value:
Returns the successfully removed comment reply as CommentReply business object.

Customform
GetCustomformProfile
This method retrieves the CustomForm profile.
Syntax (C#):
CustomForm GetCustomFormProfile(APIContext context, Int32 CustomFormId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
CustomFormId Integer No Yes The CustomForm id.
Return Value:
Returns the CustomForm profile as CustomForm business object.

GetCustomFormList
The method retrieves the list of CustomForms.
Syntax (C#):
CustomForm[] GetCustomFormList(APIContext context, CustomFormType? CustomFormType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
CustomFormType CustomFormType Yes No The asset type, project type or comment type.
Return Value:
Returns the list of CustomForms as CustomForm business objects.

AddCustomForm
This method creates the customform.
Syntax (C#):
CustomForm AddCustomForm(APIContext context, CustomFormType CustomFormType, String name, String description, String code, Boolean? isDefault);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
CustomFormType CustomFormType No Yes The asset type, project type or comment type.
name String No Yes The name of the customform.
description String No Yes The description of the customform.
code String No Yes The code of the customform.
isDefault Boolean Yes No False if the customform is not default.
Return Value:
Returns the successfully created CustomForm as CustomForm business object.

UpdateCustomForm
This method updates the customform.
Syntax (C#):
CustomForm UpdateCustomForm(APIContext context, Int32 customFormId, String name, String description, String code, Boolean? isDefault);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
customFormId Integer No Yes The customform id.
name String No Yes The name of the customform.
description String Yes No The description of the customform.
code String Yes No The code of the customform.
isDefault Boolean Yes No False if the customform is not default.
Return Value:
Returns the successfully updated CustomForm as CustomForm business object.

RemoveCustomForm
This method removes the customform.
Syntax (C#):
CustomForm RemoveCustomForm(APIContext context, Int32 customFormId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
customFormId Integer No Yes The customform id.
Return Value:
Returns the successfully removed CustomForm as a CustomForm business object.

GetCustomFieldProfile
This method retrieves the CustomField profile.
Syntax (C#):
CustomField GetCustomFieldProfile(APIContext context, Int32 CustomFieldId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
CustomFieldId Integer No Yes The CustomField id.
Return Value:
Returns the CustomField component as CustomField business object.

GetCustomFieldList
The method retrieves the list of CustomField components.
Syntax (C#):
CustomField[] GetCustomFieldList(APIContext context, Int32 CustomFieldId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
CustomFieldId Integer No Yes The CustomField id.
Return Value:
Returns the list of CustomField as CustomField business objects.

AddUpdateCustomFieldTextBox
The method creates and updates the CustomField textbox component.
Syntax (C#):
CustomField AddUpdateCustomFieldTextBox(APIContext context, Int32? customFieldId, Int32? CustomFormId, Boolean? isRequired, Int32? orderId, String code, String label, String subLabel, String defaultValue, Boolean isMultiline, Int32 visibleLines, String watermarkText);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
customFieldId Integer Yes(on update) No(on create) The type of textbox component.
CustomFormId Integer Yes(on update) Yes(on create) The CustomForm id.
isRequired Boolean Yes(on update) Yes(on create) True if the the component is required field.
orderId Integer Yes(on update) Yes(on create) The order id of the component.
code String Yes(on update) Yes(on create) The code for the component.
label String Yes(on update) Yes(on create) The label for the component.
subLabel String Yes No The description for the label.
defaultValue String Yes No The default value for the text box.
isMultiline Boolean No Yes True if the textbox is multiline.
visibleLines Integer No Yes The number of lines to display.
watermarkText String No Yes The text to display as the watermark. If null the text will be removed.
Return Value:
Returns the successfully created or updated CustomField as CustomField business objects.

AddUpdateCustomFieldList
The method creates and updates the CustomField list component.
Syntax (C#):
CustomField AddUpdateCustomFieldList(APIContext context, Int32? customFieldId, Int32? CustomFormId, Boolean? isRequired, Int32? orderId, String code, String label, String subLabel, String defaultValue, Boolean isMultiSelect, Int32 visibleLines, ListDisplayType displayType, String[] items, String[] values);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
customFieldId Integer Yes(on update) No(on create) The type of textbox component.
CustomFormId Integer Yes(on update) Yes(on create) The CustomForm id.
isRequired Boolean Yes(on update) Yes(on create) True if the the component is required field.
orderId Integer Yes(on update) Yes(on create) The order id of the component.
code String Yes(on update) Yes(on create) The code for the component.
label String Yes(on update) Yes(on create) The label for the component.
subLabel String Yes No The description for the label.
defaultValue String Yes No The default value for the text box.
isMultiSelect Boolean No Yes True if the list is multi selectable.
visibleLines Integer No Yes The number of lines to display.
displayType ListDisplayType No Yes The type of list box.
items String[] No Yes The item names inside the list box. If null the items will be removed. The new items will replace the previous items.
values String[] No Yes The item values inside the list box. If null the values will be removed. The new values will replace the previous values.
Return Value:
Returns the successfully created or updated CustomField as CustomField business object.

AddUpdateCustomFieldDateTime
The method creates and updates the CustomField datetime.
Syntax (C#):
CustomFormComponent AddUpdateCustomFieldDateTime(APIContext context, Int32? customFieldId, Int32? CustomFormId, Boolean? isRequired, Int32? orderId, String code, String label, String subLabel, String defaultValue, DateTimeDisplayType dateTimeDisplayType, DateFormat dateFormat, TimeFormat timeFormat);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
customFieldId Integer Yes(on update) No(on create) The type of textbox component.
CustomFormId Integer Yes(on update) Yes(on create) The CustomForm id.
isRequired Boolean Yes(on update) Yes(on create) True if the component is required field.
orderId Integer Yes(on update) Yes(on create) The order id of the component.
code String Yes(on update) Yes(on create) The code for the component.
label String Yes(on update) Yes(on create) The label for the component.
subLabel String Yes No The description for the label.
defaultValue String Yes No The default value for the datetime box.
dateTimeDisplayType DateTimeDisplayType No Yes They type for date and time display.
dateFormat DateFormat No Yes The type of date format.
timeFormat TimeFormat No Yes The type of the time format.
Return Value:
Returns the successfully created or updated CustomField as CustomField business object.

RemoveCustomField
This method removes the CustomField.
Syntax (C#):
CustomFormComponent RemoveCustomField (APIContext context, Int32 componentId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
customFieldId Integer No Yes The CustomField id.
Return Value:
Returns the successfully removed CustomField as CustomField business object.

GetCustomFormListByProject
This method retrieves the list of CustomForm project applications.
Syntax (C#):
CustomFormApplication[] GetCustomFormListByProject(APIContext context, Int32 projectId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id.
Return Value:
Returns the list of CustomForm project applications as CustomFormApplication business objects.

AddCustomFormToProject
This method creates the CustomForm project application.
Syntax (C#):
CustomFormApplication AddCustomFormToProject(APIContext context, Int32 CustomFormId, Int32 projectId, Int32? orderId, Boolean? isEnabled);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
CustomFormId Integer No Yes The CustomForm id.
projectId Integer No Yes The project id.
orderId Integer Yes No The number for ordering the application. Reordering of existing applications is required if inserted in the middle.
isEnabled Boolean Yes No True if the application is enabled.
Return Value:
Returns the successfully created CustomForm project application as CustomFormApplication business object.

UpdateCustomFormToProject
This method updates the CustomForm project application.
Syntax (C#):
CustomFormApplication UpdateCustomFormToProject(APIContext context, Int32 CustomFormApplicationId, Int32? CustomFormId, Int32? projectId, Int32? orderId, Boolean? isEnabled);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
CustomFieldEntryId Integer No Yes The CustomForm application id.
CustomFormId Integer Yes No The CustomForm id.
projectId Integer Yes No The project id.
orderId Integer Yes No The number for ordering the application. Reordering of existing applications is required if inserted in the middle.
isEnabled Boolean Yes No True if the application is enabled.
Return Value:
Returns the successfully updated CustomForm project application as CustomFormApplication business object.

RemoveCustomFormToProject
This method removes the CustomForm project application.
Syntax (C#):
CustomFormApplication RemoveCustomFormToProject(APIContext context, Int32 CustomFieldEntryId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
CustomFieldEntryId Integer No Yes The CustomFieldEntry id.
Return Value:
Returns the successfully removed CustomForm project application as CustomFormApplication business object.

GetCustomFieldEntryList
This method retrieves the list of CustomFieldEntry entries.
Syntax (C#):
CustomFieldEntry[] GetCustomFieldEntryList(APIContext context, Int32? referenceId, CustomFormType CustomFormType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
referenceId Integer Yes No The asset id, project id or comment id.
CustomFormType CustomFormType No Yes The asset type, project type or comment type.
Return Value:
Returns the list of CustomFieldEntry as CustomFieldEntry business objects.

AddCustomFieldEntry
This method creates the CustomForm application entry.
Syntax (C#):
CustomFieldEntry[] AddCustomFieldEntry(APIContext context, List <customfieldentry> data);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
data List <customfieldentry> No Yes The CustomFieldEntrys to create as bulk.
Return Value:
Returns the successfully created CustomFieldEntry as CustomFieldEntry business object.

UpdateCustomFieldEntry
This method updates the CustomFieldEntry.
Syntax (C#):
CustomFieldEntry[] UpdateCustomFieldEntry(APIContext context, List <customfieldentry> data);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
data No Yes The CustomFieldEntrys to update as bulk.
Return Value:
Returns the successfully updated CustomFieldEntry as CustomFieldEntry business object.

RemoveCustomFieldEntry
This method removes the CustomField entry.
Syntax (C#):
CustomFieldEntry RemoveCustomFieldEntry(APIContext context, Int32 CustomFieldEntryId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
CustomFieldEntryId Integer No Yes The CustomField entry id.
Return Value:
Returns the successfully removed CustomField entry as CustomField entry business object.

Deliverables
GetDeliverableProfile
This method retrieves the deliverable profile.
Syntax (C#):
Deliverable[] GetDeliverableProfile(APIContext context, Int32 deliverableId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
deliverableId Integer No Yes The deliverable id.
Return Value:
Returns the deliverable profile as Deliverable business object.

GetDeliverableList
This method retrieves the list of deliverables.
Syntax (C#):
Deliverable[] GetDeliverableList(APIContext context, Int32 projectId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id.
Return Value:
Returns the list of deliverable’s as Deliverable business objects.

AddDeliverable
This method creates the deliverable.
Syntax (C#):
Deliverable AddDeliverable(APIContext context, Int32 projectId, Int32? userId, Int32? statusId, Int32? phaseId, Int32? phaseGroupId, Boolean? isViewedByAll, String name, String description, String code, DateTime? startDate, DateTime? endDate, String[] tagList);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes Project id to assign the deliverable under.
userId Integer No Yes User id as the owner of the deliverable.
statusId Integer Yes No Status of the deliverable. Only deliverable statuses are valid.
phaseId Integer Yes No Phase of the deliverable. Only deliverable phases are valid.
phaseGroupId Integer Yes No Phase Group if the deliverable phase.
isViewedByAll Boolean Yes No True if allowed to be viewed by all project members. False if allowed to be viewed by specific members from the project members. Default is true.
name String No Yes The name of the deliverable.
description String Yes No The description of the deliverable.
code String No Yes The code of the deliverable.
startDate DateTime Yes No Start date of the deliverable in UTC. To remove the value assigned 1970-01-01 needs to be passed in.
endDate DateTime Yes No End date of the deliverable in UTC. To remove the value assigned 1970-01-01 needs to be passed in.
tagList String[] Yes No The tags for the deliverable. The new tags will replace the previous tags.
Return Value:
Returns the successfully created deliverable as Deliverable business object.

UpdateDeliverable
This method updates the deliverable.
Syntax (C#):
Deliverable UpdateDeliverable(APIContext context, Int32 deliverableId, Int32? userId, Int32? statusId, Int32? phaseId, Int32? phaseGroupId, Boolean? isViewedByAll, String name, String description, String code, DateTime? startDate, DateTime? endDate, String[] tagList);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
deliverableId Integer No Yes The deliverable id.
userId Integer Yes No User id as the owner of the deliverable.
statusId Integer Yes No Status of the deliverable. Only deliverable statuses are valid.
phaseId Integer Yes No Phase of the deliverable. Only deliverable phases are valid. To remove the value assigned -1 needs to be passed in.
phaseGroupdId Integer Yes No Phase Group if the deliverable phase. To remove the value assigned -1 needs to be passed in.
isViewedByAll Boolean Yes No True if allowed to be viewed by all project members. False if allowed to be viewed by specific members from the project members.
name String Yes No The name of the deliverable.
description String Yes No The description of the deliverable.
code String Yes No The code of the deliverable.
startDate DateTime Yes No Start date of the deliverable in UTC. To remove the value assigned 1970-01-01 needs to be passed in.
endDate DateTime Yes No End date of the deliverable in UTC. To remove the value assigned 1970-01-01 needs to be passed in.
tagList String[] Yes No The tags for the deliverable. The new tags will replace the previous tags.
Return Value:
Returns the successfully updated deliverable as Deliverable business object.

RemoveDeliverable
This method removes the deliverable.
Syntax (C#):
Deliverable RemoveDeliverable(APIContext context, Int32 deliverableId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
deliverableId Integer No Yes The deliverable id.
Return Value:
Returns the successfully removed deliverable as Deliverable business object.

GetDeliverableMemberList
This method retrieves the list of deliverable members.
Syntax (C#):
DeliverableMember[] GetDeliverableMemberList(APIContext context, Int32 deliverableId, DeliverableMemberType? deliverableMemberType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
deliverableId Integer No Yes The deliverable id.
deliverableMemberType DeliverableMemberType Yes No The deliverable members of the following type are retrieved.
Return Value:
Returns the list of deliverable members as DeliverableMember business objects.

AddTeamToDeliverable
This method adds the team to the deliverable.
Syntax (C#):
DeliverableMember AddTeamToDeliverable(APIContext context, Int32 deliverableId, Int32 teamId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
deliverableId Integer No Yes The deliverable id.
teamId Integer No Yes The team id.
Return Value:
Returns the successfully created deliverable member as DeliverableMember business object.

RemoveTeamFromDeliverable
This method removes the team from the deliverable.
Syntax (C#):
DeliverableMember RemoveTeamFromDeliverable(APIContext context, Int32 deliverableId, Int32 teamId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
deliverableId Integer No Yes The deliverable id.
teamId Integer No Yes The team id.
Return Value:
Returns the successfully removed deliverable member as DeliverableMember business object.

AddUserToDeliverable
This method adds the user to the deliverable.
Syntax (C#):
DeliverableMember AddUserToDeliverable(APIContext context, Int32 deliverableId, Int32 userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
deliverableId Integer No Yes The deliverable id.
userId Integer No Yes The user id.
Return Value:
Returns the successfully created deliverable member as DeliverableMember business object.

RemoveUserFromDeliverable
This method removes the user from the deliverable.
Syntax (C#):
DeliverableMember RemoveUserFromDeliverable(APIContext context, Int32 deliverableId, Int32 userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
deliverableId Integer No Yes The deliverable id.
userId Integer No Yes The user id.
Return Value:
Returns the successfully removed deliverable member as DeliverableMember business object.

Filesystem
GetFolderProfile
This method retrieves the folder’s profile information.
Syntax (C#):
Folder GetFolderProfile(APIContext context, Int32 folderId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
folderId Integer No Yes The folder id.
Return Value:
Returns the folder’s profile as Folder business object.

GetFolderMoveList
This method retrieves the list of folders inside the selected folder.
Syntax (C#):
Folder[] GetFolderMoveList(APIContext context, Int32? folderId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
folderId Integer Yes No The folder id
Return Value:
Returns the list of folder profiles as Folder business objects.

GetFolderItemList
This method retrieves the list of items inside the selected folder.
Syntax (C#):
FolderItem[] GetFolderItemList(APIContext context, Int32 folderId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
folderId Integer No Yes The folder id.
Return Value:
Returns the list of items inside the folder as FolderItem business objects.

AddFolder
This method creates the folder.
Syntax (C#):
Folder AddFolder(APIContext context, Int32? parentFolderId, String name, String description);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
parentFolderId Integer Yes No The parent folder id.
name String No Yes The name of the folder.
description String No Yes The description of the folder.
Return Value:
Returns the successfully created folder as Folder business object.

UpdateFolder
This method updates the folder.
Syntax (C#):
Folder UpdateFolder(APIContext context, Int32 folderId, Int32? parentFolderId, String name, String description);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
folderId Integer No Yes The folder id.
parentFolderId Integer Yes No The parent folder id. The folder will be moved if supplied and the folder is not at the previous location.
name String Yes No The name of the folder.
description String Yes No The description of the folder.
Return Value:
Returns the successfully updated folder as Folder business object.

RemoveFolder
This method removes the folder.
Syntax (C#):
Folder RemoveFolder(APIContext context, Int32 folderId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
folderId Integer No Yes The folder id.
Return Value:
Returns the successfully removed folder as Folder business object.

Localization
AddLocalization
This method creates new system localization and requires Partner API authorization.
Syntax (C#):
Localization AddLocalization(APIContext context, LocalizationType type, String txtKey, String txtDefaultValue);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
type LocalizationType No Yes The localization type.
txtKey String No Yes The key of the new system localization.
txtDefaultValue String No Yes The value of the new system localization.
Return Value:
Returns the successfully created system localization as Localization business object.

UpdateLocalization
This method updates the system localization and requires Partner API authorization.
Syntax (C#):
Localization UpdateLocalization(APIContext context, Int32 localizationId, LocalizationType type, String txtKey, String txtDefaultValue);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
localizationId Integer No Yes The system localization id.
txtKey String No Yes The key of the system localization.
txtDefaultValue String No Yes The value of the system localization.
Return Value:
Returns the successfully updated system localization as Localization business object.

RemoveLocalization
This method removes the system localization and requires Partner API authorization.
Syntax (C#):
Localization RemoveLocalization(APIContext context, Int32 localizationId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
localizationId Integer No Yes The system localization id.
Return Value:
Returns the successfully removed system localization as Localization business object.

GetLocalizationEntryProfile
This method retrieves the localization entry profile with the overridden entry replaced and requires Partner API authorization.
Syntax (C#):
LocalizationEntry GetLocalizationEntryProfile(APIContext context, Int32 languageId, Int32 localizationId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
languageId Integer No Yes The language that is required.
localizationId Integer No Yes The localization id.
Return Value:
Returns the localization entry profile as LocalizationEntry business object.

GetLocalizationEntryList
This method retrieves the list of localization entries with the overridden entries replaced and requires Partner API authorization.
Syntax (C#):
Localization[] GetLocalizationEntryList(APIContext context, LocalizationType type, Int32? language);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
type LocalizationType No Yes The type of localization that will be returned.
languageId Integer Yes No The language of the localization.
Return Value:
Returns the list of localization entries as LocalizationEntry business objects.

AddLocalizationEntry
This method creates the localization entry by language and requires Partner API authorization.
Syntax (C#):
LocalizationEntry AddLocalizationEntry(APIContext context, Int32 localizationId, Int32 languageId, String value);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
localizationId Integer No Yes The system localization id that is to be recreated.
languageId Integer No Yes The language id of the localization entry.
value String No Yes The value of the localization entry.
Return Value:
Returns the successfully created localization entry as LocalizationEntry business object.

UpdateLocalizationEntry
This method updates the localization entry and requires Partner API authorization.
Syntax (C#):
LocalizationEntry UpdateLocalizationEntry(APIContext context, Int32 localizationId, Int32 languageId, String value);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
localizationId Integer No Yes The system localization id that is to be updated for the localization entry.
languageId Integer No Yes The language id to of the localization entry.
value String No Yes The value of the localization entry.
Return Value:
Returns the successfully update localization entry as LocalizationEntry business object.

RemoveLocalizationEntry
This method removes the localization entry and requires Partner API authorization.
Syntax (C#):
LocalizationEntry RemoveLocalizationEntry(APIContext context, Int32 localizationEntryId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
localizationEntryId Integer No Yes The localization entry id.
Return Value:
Returns the successfully removed localization entry as LocalizationEntry business object.

AddLocalizationOverride
This method creates the localization override entry for the localization entry records and requires Partner API authorization.
Syntax (C#):
LocalizationOverride AddLocalizationOverride(APIContext context, Int32 localizationEntryId, String value);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
localizationEntryId Integer No Yes The localization entry id to override.
value Integer No Yes The new value of the localization entry.
Return Value:
Returns the successfully created localization override entry as LocalizationOverride business object.

UpdateLocalizationOverride
This method updates the localization override entry and requires Partner API authorization.
Syntax (C#):
LocalizationOverride UpdateLocalizationOverride(APIContext context, Int32 localizationEntryId, String value);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
localizationEntryId Integer No Yes The localization entry id to override.
value Integer No Yes The new value of the localization entry.
Return Value:
Returns the successfully updated localization override entry as LocalizationOverride business object.

RemoveLocalizationOverride
This method removes the localization override entry and reverts back to the original localization entry and requires Partner API authorization.
Syntax (C#):
LocalizationOverride RemoveLocalizationOverride(APIContext context, Int32 localizationOverrideId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
localizationOverrideId Integer No Yes The localization override entry id.
Return Value:
Returns the successfully created localization override entry as LocalizationOverride business object.

Options
GetAccountOptions
This method retrieves all the account based options as an AccountOption business object.
Syntax (C#):
AccountOption[] GetAccountOptions(APIContext context, Int32? intAccount, Int32? intOption);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
intAccount Integer Yes No The account id to filter account option results by.
intOption Integer Yes No The option id to filter the account option results by.
Return Value:
Returns the successfully created account options as an AccountOption business object.

Projects
GetProjectList
This method retrieves the list of all the projects.
Syntax (C#):
Project[] GetProjectList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the list of all the projects as Project business objects.

GetProjectProfile
This method retrieves the profile of the specified project.
Syntax (C#):
Project GetProjectProfile(APIContext context, Int32 projectId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id of the profile requested.
Return Value:
Returns the project’s profile as Project business object.

AddProject
This method creates the project.
Syntax (C#):
Project AddProject(APIContext context, Int32? userid, Int32? statusId, Int32? phaseId, Int32? phaseGroupId, DateTime? startDate, DateTime? endDate, String name, String description, String[] tagList, Int32? workflowTemplateId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userId Integer No No User id as owner of the project.
statusId Integer Yes No Status of the project. Only project statuses are valid.
phaseId Integer Yes No Phase of the project. Only project phases are valid.
phaseGroupId Integer Yes No Phase Group of the project phase.
startDate DateTime Yes No Start date of the project in UTC.
endDate DateTime Yes No End date of the project in UTC.
name String No Yes The name of the project.
description String Yes No The description of the project.
tagList String[] Yes No The tags for the project. The new tags will replace the previous tags.
workflowTemplateId Int32 Yes No The workflow template id associated with this project.
Return Value:
Returns the successfully created project as Project business object.

UpdateProject
This method updates the project.
Syntax (C#):
Project UpdateProject(APIContext context, Int32 projectId, Int32? userid, Int32? statusId, Int32? phaseId, Int32? phaseGroupId, DateTime? startDate, DateTime? endDate, String name, String description, String[] tagList);
Parameters:
>
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id.
userId Integer Yes No User id as owner of the project.
statusId Integer Yes No Status of the project. Only project statuses are valid.
To remove the value assigned -1 needs to be passed in.
phaseId Integer Yes No Phase of the project. Only project phases are valid.
To remove the value assigned -1 needs to be passed in.
phaseGroupId Integer Yes No Phase Group of the project phase.
To remove the value assigned -1 needs to be passed in.
startDate DateTime Yes No Start date of the project in UTC.
endDate DateTime Yes No End date of the project in UTC.
name String Yes No The name of the project.
description String Yes No The description of the project.
tagList String[] Yes No The tags for the project. The new tags will replace the previous tags.
Return Value:
Returns the successfully updated project as Project business object.

RemoveProject
This method removes the project.
Syntax (C#):
Project RemoveProject(APIContext context, Int32 projectId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id.
Return Value:
Returns the successfully removed project as Project business object.

GetProjectMemberList
This method retrieves the list of project members.
Syntax (C#):
ProjectMember[] GetProjectMemberList(APIContext context, Int32 projectId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id to retrieve the member list for.
Return Value:
Returns the project members of the project as ProjectMember business objects.

AddUpdateProjectMember
This method creates or updates the project member. If the project member exists in the system the update procedure is called. If the project member doesn’t exists the create procedure is called.
Syntax (C#):
ProjectMember AddUpdateProjectMember(APIContext context, Int32 projectId, Int32 referenceId, ReferenceType referenceType, Int32? roleId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id.
referenceId Integer No Yes The user id or the team id.
referenceType ReferenceType No Yes The user type or the team type.
roleId Integer Yes No The role assigned to the user or team.
Return Value:
Returns the successfully created or updated project member as ProjectMember business object.

RemoveProjectMember
This method removes the project member from the project.
Syntax (C#):
ProjectMember RemoveProjectMember(APIContext context, Int32 projectId, Int32 referenceId, ReferenceType referenceType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id.
referenceId Integer No Yes The user if or the team id.
referenceType ReferenceType No Yes The user type or the team type.
Return Value:
Returns the successfully removed project member as ProjectMember business object.

GetProjectTemplateProfile
This method retrieves the profile of the specified project template.
Syntax (C#):
ProjectTemplate GetProjectTemplateProfile(APIContext context, Int32 projectTemplateId);
Parameters:
Parameter Data Type Nullable Required Description
Context APIContext No Yes Authorizes the user into the Api.
projectTemplateId Integer No Yes The project template id of the profile requested.
Return Value:
Returns the project template’s profile as ProjectTemplate business object.

GetProjectTemplateList
This method retrieves the list of project templates.
Syntax (C#):
ProjectTemplate[] GetProjectTemplateList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the list of project templates as ProjectTemplate business objects.

AddProjectTemplate
This method creates the project template.
Syntax (C#):
ProjectTemplate AddProjectTemplate(APIContext context, Int32 userId, Int32? phaseId, Int32? phaseGroupId, Int32? workflowTemplateId, String name, String description, String[] tagList);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userId Integer No Yes The user id as the owner of the project.
phaseId Integer Yes No The phase of the project template. Only project phases are valid.
phaseGroupId Integer Yes No Phase Group of the project template phase.
workflowTemplateId Integer Yes No The workflow template to use when a project is created from this project template.
name String No Yes The name of the project.
description String No No The description of the project.
tagList String[] No No The tags for the project. The new tags will replace the previous tags.
Return Value:
Returns the successfully created project template as ProjectTemplate business object.

UpdateProjectTemplate
This method updates the project template.
Syntax (C#):
ProjectTemplate UpdateProjectTemplate(APIContext context, Int32 projectTemplateId, Int32? userId, Int32? phaseId, Int32? phaseGroupId, Int32? workflowTemplateId, String name, String description, String[] tagList);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectTemplateId Integer No Yes The project template id.
userId Integer Yes No The user id as the owner of the project.
phaseId Integer Yes No The phase of the project template. Only project phases are valid. To remove the value assigned -1 needs to be passed in.
phaseGroupId Integer Yes No Phase Group of the project template phase. To remove the value assigned -1 needs to be passed in.
workflowTemplateId Integer Yes No The workflow template to use when a project is created from this project template. To remove the value assigned -1 needs to be passed in.
name String No Yes The name of the project.
description String Yes No The description of the project.
tagList String[] Yes No The tags for the project. The new tags will replace the previous tags.
Return Value:
Returns the successfully updated project template as ProjectTemplate business object.

RemoveProjectTemplate
This method removes the project template.
Syntax (C#):
ProjectTemplate RemoveProjectTemplate(APIContext context, Int32 projectTemplateId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectTemplateId Integer No Yes This project template id.
Return Value:
Returns the successfully removed project template as ProjectTemplate business object.

Reminder
GetReminderList
This method retrieves the list of reminders.
Syntax (C#):
Reminder[] GetReminderList(APIContext context, Int32 referenceId, ReminderType referenceType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
referenceId Integer No Yes The deliverable id, todo id or review id.
referenceType ReminderType No Yes The reminder type of the reference id.
Return Value:
Returns the list of reminders as Reminder business objects.

AddReminder
This method creates the reminder.
Syntax (C#):
Reminder AddReminder(APIContext context, Int32 referenceId, Reminder referenceType, Int32 amount, AmountType amountType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
referenceId Integer No Yes The deliverable id, todo id and review id.
referenceType ReminderType No Yes The reminder type of the reference id.
amount Integer No Yes The amount of time for the reminder.
amountType AmountType No Yes The type of time of the reminder.
Return Value:
Returns the successfully created reminder as Reminder business object.

UpdateReminder
This method updates the reminder.
Syntax (C#):
Reminder UpdateReminder(APIContext context, Int32 reminderId, Int32? referenceId, ReminderType? referenceType, Int32? amount, AmountType? amountType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reminderId Integer No Yes The reminder id.
referenceId Integer Yes No The deliverable id, todo id and review id.
referenceType ReminderType Yes No The reminder type of the reference id.
amount Integer Yes No The amount of time for the reminder.
amountType AmountType Yes No The type of time of the reminder.
Return Value:
Returns the successfully updated reminder as Reminder business object.

RemoveReminder
This method removes the reminder.
Syntax (C#):
Reminder RemoveReminder(APIContext context, Int32 reminderId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reminderId Integer No Yes The reminder id.
Return Value:
Returns the successfully removed reminder as Reminder business object.

Reports
GenerateFeedbackSummary
This method generates the feedback summary file in bytes and requires Hosted API authorization.
Syntax (C#):
Byte[] GenerateFeedbackSummary(APIContext context, FeedbackSummaryOptions options);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
options FeedbackSummaryOptions No Yes The options to generate the feedback summary.
Return Value:
Returns the feedback summary in bytes.

GenerateFeedbackSummaryToLocalUri
This method generates and downloads the feedback summary to a local location and requires Hosted API authorization.
Syntax (C#):
Boolean GenerateFeedbackSummaryToLocalUri(APIContext context, FeedbackSummaryOptions options, String outputFilePathWithExtension);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
options FeedbackSummaryOptions No Yes The options to generate the review summary.
outputFilePathWithExtension String No Yes The full file path and file name with extension.
Return Value:
Returns true if the feedback summary was successfully stored on/as the outputFilePathWithExtension.

GenerateArchiveProject
This method generates the archived project file in bytes and requires Hosted API authorization.
Syntax (C#):
Byte[] GenerateArchiveProject(APIContext context, Int32 projectId, ArchiveProjectOptions options, FeedbackSummaryOptions feedbackSummaryOptions);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
projectId Integer No Yes The project id.
options ArchiveProjectOptions No Yes The options to archive sections of the project.
feedbackSummaryOptions FeedbackSummaryOptions No Yes The options to generate the feedback summary.
Return Value:
Returns the archived project in bytes as a .zip document.

GenerateArchiveProjectToLocalUri
This method generates and downloads the archived project files to a local location and requires Hosted API authorization.
Syntax (C#):
Boolean GenerateArchiveProjectToLocalUri(APIContext context, Int32 projectId, ArchiveProjectOptions options, FeedbackSummaryOptions feedbackSummaryOptions, String outputPath);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
projectId Integer No Yes The project id.
options ArchiveProjectOptions No Yes The options to archive sections of the project.
feedbackSummaryOptions FeedbackSummaryOptions No Yes The options to generate the feedback summary.
outputPath String No Yes The output path where the archived documents will be stored.
OutputPath can take one of these formats:
Directory: To store all the archived documents.
Path With Filename and Extension: To store a single file.
If only the review summary options are required then the output path should include the file name and the extension.
Return Value:
Returns true if the achieve project was successfully stored to the output path.

Resources
GetAccountUserList
This method retrieves the list of all the account users.
Syntax (C#):
AccountUser[] GetAccountUserList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the list of account users as AccountUser business objects.

AddAccountUser
This method adds the existing user to the currently logged in account.
Syntax (C#):
AccountUser AddAccountUser(APIContext context, Int32 userId, Int32 roleId, Int32 projectRoleId, Boolean isActive);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userId Integer No Yes The user id of the existing user.
roleId Integer No Yes The role id for the user on this account.
projectRoleId Integer No Yes The project role id for the user on this account.
isActive Boolean No Yes True if the user is active.
Return Value:
Returns the successfully created account user as AccountUser business object.

AddAccountUserNew
This method creates a new user and adds them to the currently logged in account.
Syntax (C#):
AccountUser AddAccountUserNew(APIContext context, String userName, String firstName, String lastName);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userName String No Yes The email address for the user.
firstName String No Yes The first name of the user.
lastName String No Yes The last name of the user.
Return Value:
Returns the successfully created account user as AccountUser business object.

UpdateAccountUser
This method updates the user in the currently logged in account.
Syntax (C#):
AccountUser UpdateAccountUser(APIContext context, Int32 userId, Int32? roleId, Int32? projectRoleId, Boolean? isActive);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userId Integer No Yes The user id of the existing user.
roleId Integer Yes No The role id for the user on this account.
projectRoleId Integer Yes No The project role id for the user on this account.
isActive Boolean Yes No True if the user is active.
Return Value:
Returns the successfully updated user as AccountUser business object.

ChangeAccountUserPassword
This method allows an account administrator to change another user’s password. This will only succeed if the user is only part of a single account. In situations where you need to change the password of a user who is part of more then one account, use the UpdateUser API call.
Syntax (C#):
Boolean ChangeAccountUserPassword(APIContext context, Int32 userId, String newPassword);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userId Integer No Yes The user id of the existing user.
newPassword String No Yes The new password to set for the user.
Return Value:
Returns true if the password was successfully reset.

AcceptTermsAndConditions
This method accepts the terms and conditions for a given user. If the user specified is a different user from the caller then partner API context’s are required.
Syntax (C#):
Boolean AcceptTermsAndConditions(APIContext context, Int32 userId, Boolean markAsAccepted);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userId Integer No Yes The user id of the existing user.
markAsAccepted Boolean No Yes The flag to determine if the terms and conditions are accepted.
Return Value:
Returns true if the terms and conditions were successfully accepted.

RemoveAccountUser
This method removes the user from the currently logged in account.
Syntax (C#):
AccountUser RemoveAccountUser(APIContext context, Int32 userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userId Integer No Yes The user id of the user.
Return Value:
Returns the successfully removed user as AccountUser business object.

GetTeamList
This method retrieves the list of all the teams.
Syntax (C#):
Team[] GetTeamList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the list of teams as Team business object.

GetTeamProfile
This method retrieves a single team’s profile.
Syntax (C#):
TeamProfile GetTeamProfile(APIContext context, Int32 teamId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
teamId Int32 No Yes The team id of which the team profile to be returned
Return Value:
Returns a TeamProfile business object.

GetUserTeamList
This method retrieves all the teams the user is associated with.
Syntax (C#):
Team[] GetUserTeamList(APIContext context, Int32 userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userId Integer No Yes The user id of the user.
Return Value:
Returns the teams associated to the user as Team business object.

AddTeam
This method creates a new team.
Syntax (C#):
Team AddTeam(APIContext context, String name, String description, Int32 managerId, Boolean? workRequiresDelegation, Int32? projectRoleId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
name String No Yes The name of the team.
description String Yes No The description of the team.
managerId Integer No Yes The user id who will be assigned the manager role.
workRequiresDelegation Boolean Yes No True if the team items must be reassigned by Managers only. False if the team items can be picked up by any members.
projectRoleId Integer Yes No The default project role of the team.
Return Value:
Returns the successfully created team as Team business object.

UpdateTeam
This method updates the team.
Syntax (C#):
Team UpdateTeam(APIContext context, Int32 teamId, String name, String description, Int32? managerId, Boolean? workRequiresDelegation, Int32? projectRoleId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
teamId Integer No Yes The team id.
name String Yes No The name of the team.
description String Yes No The description of the team.
managerId Integer Yes No The user id who will be assigned the manager role.
workRequiresDelegation Boolean Yes No True if the team items must be reassigned by Managers only. False if the team items can be picked up by any members.
projectRoleId Integer Yes No The default project role of the team.
Return Value:
Returns the successfully updated team a Team business object.

RemoveTeam
This method removes the team.
Syntax (C#):
Team RemoveTeam(APIContext context, Int32 teamId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
teamId Integer No Yes The team id.
Return Value:
Returns the successfully removed team a Team business object.

GetTeamMemberList
This method retrieves the list of team members.
Syntax (C#):
TeamMember[] GetTeamMemberList(APIContext context, Int32 teamId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
teamId Integer No Yes The team id.
Return Value:
Returns the list of team members as TeamMember business object.

AddUpdateUserToTeam
This method creates or updates the user to the team.
Syntax (C#):
TeamMember AddUpdateUserToTeam(APIContext context, Int32 teamId, Int32 userId, Boolean isTeamManager);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
teamId Integer No Yes The team id.
userId Integer No Yes The user id of the user to add to the team.
isTeamManager Boolean No Yes True if the user is a manager.
Return Value:
Returns the successfully created or updated user to the team as TeamMember business object.

RemoveUserFromTeam
This method removes the user from the team.
Syntax (C#):
TeamMember RemoveUserFromTeam(APIContext context, Int32 teamId, Int32 userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
teamId Integer No Yes The team id of the team.
userId Integer No Yes The user id of the user to remove from the team.
Return Value:
Returns the successfully removed user from the team as TeamMember business object.

Resource Urls
GetResourceUrl
This method retrieves the resource URL.
Syntax (C#):
String GetResourceUrl(APIContext context, ResourceUrlOptions urlOptions);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
urlOptions ResourceUrlOptions No Yes The url options.
Return Value:
Returns the resource URL.

GetResourceUrlForUser
This method retrieves the resource URL for another user and requires Partner API authorization.
Syntax (C#):
String GetResourceUrlForUser(APIContext context, ResourceUrlOptions urlOptions);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
urlOptions ResourceUrlOptions No Yes The url options
Return Value:
Returns the resource URL for another user.

Review
GetReviewProfile
This method retrieves the review profile.
Syntax (C#):
Review GetReviewProfile(APIContext context, Int32 reviewId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
Return Value:
Returns the review profile as Review business object.

GetReviewProfileFull
This method retrieves the complete review profile that includes the review, review items and review members.
Syntax (C#):
ReviewData GetReviewProfileFull(APIContext context, Int32 reviewId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
Return Value:
Returns the complete review profile as ReviewData business object.

GetReviewList
This method retrieves the list of reviews.
Syntax (C#):
Review[] GetReviewList(APIContext context, Int32 projectId, Int32? deliverableId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id to retrieve the reviews associated with the project.
deliverableId Integer Yes No The deliverable id to retrieve the reviews associated with the deliverable.
Return Value:
Returns the list of all the reviews as Review business objects.

AddUpdateReviewFull
This method creates or updates the complete review with the option to add in review members and review items.
Syntax (C#):
Review AddUpdateReviewFull(APIContext context, Int32? reviewId, Int32? projectId, Int32? referenceId, ReferenceType? referenceType, ReviewType reviewType, Int32? statusId, Int32? priority, AutoApproveMethod? autoApproveMethod, Boolean? isReviewCommentsOnly, Boolean? isAllowedFeedback, Boolean? isAllowedNotes, Boolean? isAllowedMembersToView, String title, String description, String code, String[] autoTags, DateTime? dueDate, List <reviewmember> arrMembers, List <reviewitem> arrItems, Boolean? requireResourceOnDeferral, Boolean? allowDeferralResponses, Boolean? bitElectronicSignatureRequired);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer Yes No The review id.
projectId Integer Yes No The project id.
referenceId Integer No Yes The deliverable or project id.
referenceType ReferenceType No Yes The deliverable type or project type of reference id.
reviewType ReviewType No Yes The type of review.
statusId Integer Yes No The status id of the review. Only review statuses are valid.
priority Integer Yes No The priority of the review. Normal Priority: 0 and High Priority: 1
autoApproveMethod AutoApproveMethod Yes No The option to turn on and off the auto approve.
isReviewCommentsOnly Boolean Yes No Allows reviewing comments only.
isAllowedFeedback Boolean Yes No Allows the capability to provide feedback.
isAllowedNotes Boolean Yes No Allows the capability to leave comments.
isAllowedMembersToView Boolean Yes No Allows the members to view comments.
title String No Yes The title of the review.
description String No Yes The instructions for the review.
code String No Yes The code of the review.
autoTags String[] No Yes The tags for the asset.
dueDate DateTime Yes No The due date of the review in UTC.
arrMembers List No No The members list of the review. See Review Member.
arrItems List No No The items list of the review. See Review Item.
requireResourceOnDeferral Boolean Yes No Reviewers are required to specify an alternative resource on deferral.
allowDeferralResponses Boolean Yes No Allows review members to defer review responses.
bitElectronicSignatureRequired Boolean Yes No Requires reviewers to sign with an electronic signature upon submitting responses.
Return Value:
Returns the successfully created or update review as Review business object.

RemoveReview
This method removes the review.
Syntax (C#):
Review RemoveReview(APIContext context, Int32 reviewId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
Return Value:
Returns the successfully removed review as Review business object.

GetReviewMemberList
This method retrieves the list of review members of the review.
Syntax (C#):
ReviewMember[] GetReivewMemberList(APIContext context, Int32 reviewId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
Return Value:
Returns the list of review members as ReviewMember business objects.

AddUpdateReviewMember
This method creates or updates the review member.
Syntax (C#):
ReviewMember AddUpdateReviewMember(APIContext context, Int32 reviewId, Int32 referenceId, ReferenceType referenceType, Int32? statusId, String comments, DateTime? completionDate);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
referenceId Integer No Yes The user id, team id or role id.
referenceType ReferenceType No Yes The user type, team type or role type of reference id.
statusId Integer Yes No Status of the review. Only review statuses are valid.
comments String No Yes The comment for the review.
completionDate DateTime Yes No Date the member completed the review in UTC.
Return Value:
Returns the successfully created or updated review member as ReviewMember business object.

RemoveReviewMember
This method removes the review member of the review.
Syntax (C#):
ReviewMember RemoveReviewMember(APIContext context, Int32 reviewId, Int32 referenceId, ReferenceType referenceType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
referenceId Integer No Yes The user type, team type or role id.
referenceType ReferenceType No Yes The user type, team type or role type of reference id.
Return Value:
Returns the successfully removed review member as ReviewMember business object.

GetReviewItemList
This method retrieves the list of review items of the review.
Syntax (C#):
ReviewItem[] GetReviewItemList(APIContext context, Int32 reviewId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
Return Value:
Returns the list of all the review items in the review as ReviewItem business objects.

GetReviewItemProfile
This method retrieves a specific review item of the review based upon the asset provided.
Syntax (C#):
ReviewItem GetReviewItemProfile(APIContext context, Int32 reviewId, Int32 assetId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
assetId Integer No Yes The asset Id
Return Value:
Returns a single review item in the review as a ReviewItem business object.

AddReviewItem
This method adds the asset as a review item to the review.
Syntax (C#):
ReviewItem AddReviewItem(APIContext context, Int32 reviewId, Int32 assetId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
assetId Integer No Yes The asset id.
Return Value:
Returns the successfully added review item as ReviewItem business object.

RemoveReviewItem
This method removes the review items from the review.
Syntax (C#):
ReviewItem RemoveReviewItem(APIContext context, Int32 reviewId, Int32 assetId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
assetId integer No Yes The asset id.
Return Value:
Returns the successfully removed review item as ReviewItem business object.

GetReviewResponses
This method retrieves the review responses associated with a review.
Syntax (C#):
ReviewResponses[] GetReviewResponses(APIContext context, Int32 reviewId, Int32? assetId, Int32? referenceId, Int32? referenceType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
reviewId Integer No Yes The review id.
assetId Integer Yes No The asset id.
referenceId Integer Yes No The reference id.
referenceType Integer Yes No The referenceType.
Return Value:
Returns a list of ReviewResponses as ReviewItem business objects.

Security / Roles
GetProjectRoleList
The method retrieves the list of project roles.
Syntax (C#):
Role[] GetProjectRoleList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the list of project roles as Role business objects.

AddProjectRole
This method creates the project role.
Syntax (C#):
Role AddProjectRole(APIContext context, String name, String code);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
name String No Yes The name of the project role.
code String No Yes The code of the project role.
Return Value:
Returns the successfully created project role as Role business object.

UpdateProjectRole
This method updates the project role.
Syntax (C#):
Role UpdateProjectRole(APIContext context, Int32 roleId, String name, String code);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The project role id.
name String No Yes The name of the project role.
code String No Yes The code of the project role.
Return Value:
Returns the successfully updated project role as Role business object.

RemoveProjectRole
This method removes the project role.
Syntax (C#):
Role RemoveProjectRole(APIContext context, Int32 roleId, Int32? newRoleId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The project role id.
newRoleId Integer Yes No The new project role id to replace the old project role if being used on the system.
Return Value:
Returns the successfully removed project role as Role business object.

GetAccountRoleList
This method retrieves the list of account role.
Syntax (C#):
Role[] GetAccountRoleList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the list of account roles as Role business objects.

AddAccountRole
This method creates the account role.
Syntax (C#):
Role AddAccountRole(APIContext context, String name, String code);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
name String No Yes The name of the account role.
code String No Yes The code of the account role.
Return Value:
Returns the successfully created account role as Role business object.

UpdateAccountRole
This method updates the account role.
Syntax (C#):
Role UpdateAccountRole(APIContext context, Int32 roleId, String name, String code);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The account role id.
name String No Yes The name of the account role.
code String No Yes The code of the account role.
Return Value:
Returns the successfully updated account role as Role business object.

RemoveAccountRole
This method removes the account role.
Syntax (C#):
Role RemoveAccountRole(APIContext context, Int32 roleId, Int32? newRoleId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The account role id.
newRoleId Integer Yes No The new account role id to replace the old account role if being used on the system.
Return Value:
Returns the successfully removed account role as Role business object.

GetInstanceRoleList
This method retrieves the list of account role.
Syntax (C#):
Role[] GetInstanceRoleList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the list of instance roles as Role business objects.

AddInstanceRole
This method creates the account role.
Syntax (C#):
Role AddInstanceRole(APIContext context, String name, String code);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
name String No Yes The name of the instance role.
code String No Yes The code of the instance role.
Return Value:
Returns the successfully created instance role as Role business object.

UpdateInstanceRole
This method updates the instance role.
Syntax (C#):
Role UpdateInstanceRole(APIContext context, Int32 roleId, String name, String code);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The instance role id.
name String No Yes The name of the instance role.
code String No Yes The code of the instance role.
Return Value:
Returns the successfully updated instance role as Role business object.

RemoveInstanceRole
This method removes the account role.
Syntax (C#):
Role RemoveInstanceRole(APIContext context, Int32 roleId, Int32? newRoleId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The instance role id.
newRoleId Integer Yes No The new instance role id to replace the old instance role if being used on the system.
Return Value:
Returns the successfully removed instance role as Role business object.

GetProjectRolePermissionList
This method retrieves the list of project role permissions.
Syntax (C#):
RolePermission[] GetProjectRolePermissionList (APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The project role’s id.
Return Value:
Returns the list of project role’s permissions as RolePermission business objects.

AddProjectRolePermission
This method enables the permission of the project role.
Syntax (C#):
RolePermission AddProjectRolePermission(APIContext context, Int32 roleId, Int32 permissionId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The project role id.
permissionId Integer No Yes The permission id.
Return Value:
Returns the successfully enabled project role permission as RolePermission business object.

RemoveProjectRolePermission
This method disables the permission of the project role.
Syntax (C#):
RolePermission RemoveProjectRolePermission(APIContext context, Int32 roleId, Int32 permissionId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The project role id.
permissionId Integer No Yes The permission id.
Return Value:
Returns the successfully disabled project role permission as RolePermission business object.

GetAccountRolePermissionList
This method retrieves the list of account role permissions.
Syntax (C#):
RolePermission[] GetAccountRolePermissionList (APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The account role’s id.
Return Value:
Returns the list of account role’s permissions as RolePermission business objects.

AddAccountRolePermission
This method enables the permission of the account role.
Syntax (C#):
RolePermission AddAccountRolePermission(APIContext context, Int32 roleId, Int32 permissionId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The account role id.
permissionId Integer No Yes The permission id.
Return Value:
Returns the successfully enabled account role permission as RolePermission business object.

RemoveAccountRolePermission
This method disables the permission of the account role.
Syntax (C#):
RolePermission RemoveAccountRolePermission(APIContext context, Int32 roleId, Int32 permissionId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The account role id.
permissionId Integer No Yes The permission id.
Return Value:
Returns the successfully disabled account role permission as RolePermission business object.

GetInstanceRolePermissionList
This method retrieves the list of instance role permissions.
Syntax (C#):
RolePermission[] GetInstanceRolePermissionList (APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The instance role’s id.
Return Value:
Returns the list of instance role’s permissions as RolePermission business objects.

AddInstanceRolePermission
This method enables the permission of the instance role.
Syntax (C#):
RolePermission AddInstanceRolePermission(APIContext context, Int32 roleId, Int32 permissionId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The instance role id.
permissionId Integer No Yes The permission id.
Return Value:
Returns the successfully enabled instance role permission as RolePermission business object.

RemoveInstanceRolePermission
This method disables the permission of the instance role.
Syntax (C#):
RolePermission RemoveInstanceRolePermission(APIContext context, Int32 roleId, Int32 permissionId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
roleId Integer No Yes The instance role id.
permissionId Integer No Yes The permission id.
Return Value:
Returns the successfully disabled instance role permission as RolePermission business object.

Status
GetStatusList
This method retrieves the status list based on the status type.
Syntax (C#):
Status[] GetStatusList(APIContext context, StatusType statusType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusType StatusType No Yes The types of status that are retrieved.
Return Value:
Returns the list of the status based on the status type as Status business objects.

AddStatus
This method creates the status or phase for one of the editable status types.
Syntax (C#):
Status AddStatus(APIContext context, EditableStatusType statusType, String name, String code, String color);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusType EditableStatusType No Yes The status and phase types that is editable for the Api user.
name String No Yes The name of the status or phase.
code String No Yes The code assigned to the status or phase.
color String No Yes The color assigned to the status or phase.
Return Value:
Returns the successfully created status or phase as Status business object.

UpdateStatus
This method updates the status or phase for one of the editable status types.
Syntax (C#):
Status UpdateStatus(APIContext context, EditableStatusType statusType, Int32 statusId, String name, String code, String color);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusType EditableStatusType No Yes The status and phase types that is editable for the api user.
statusId Integer No Yes The status id to update.
name String Yes No The name of the status or phase.
code String Yes No The code assigned to the status or phase.
color String Yes No The color assigned to the status or phase.
Return Value:
Returns the successfully updated status or phase as Status business object.

RemoveStatus
This method removes the status or phase.
Syntax (C#):
Status RemoveStatus(APIContext context, Int32 statusId, Int32? newStatusId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusId Integer No Yes The status or phase id.
newStatusId Integer Yes No The new status id to replace the old status if being used on the system.
Return Value:
Returns the successfully created status or phase as Status business object.

GetStatusGroupList
This method retrieves the status group list based on the status group type.
Syntax (C#):
StatusGroup[] GetStatusGroupList(APIContext context, StatusGroupType statusGroupType);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusGroupType StatusGroupType No Yes The types of status and phase groups that are retrieved.
Return Value:
Returns the list of the status groups based on the status group type as StatusGroup business objects.

GetStatusGroupListFromStatus
This method retrieves the status group list that is based on the status id.
Syntax (C#):
StatusGroup[] GetStatusGroupListFromStatus(APIContext context, Int32 statusId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusId Integer No Yes The status id that is associated with status groups.
Return Value:
Returns the list of the status groups that are based on the status as StatusGroup business objects.

AddStatusGroup
This method creates the status group.
Syntax (C#):
StatusGroup AddStatusGroup(APIContext context, EditableStatusGroupType statusGroupType, String name, String code);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusGroupType EditableStatusGroupType No Yes The status and phase group types that is editable for the api user.
name String No Yes The name of the status or phase group.
code String No Yes The code assigned to the status or phase group.
Return Value:
Returns the successfully created status group as StatusGroup business object.

UpdateStatusGroup
This method updates that status group.
Syntax (C#):
StatusGroup UpdateStatusGroup(APIContext context, EditableStatusGroupType statusGroupType, Int32 statusGroupId, String name, String code);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusGroupType EditableStatusGroupType No Yes The status and phase group types that is editable for the api user.
statusGroupId Integer No Yes The status group id to update.
name String No Yes The name of the status or phase group.
code String Yes No The code assigned to the status or phase group.
Return Value:
Returns the successfully updated status group as StatusGroup business object.

RemoveStatusGroup
This method removes the status group.
Syntax (C#):
StatusGroup RemoveStatusGroup(APIContext context, Int32 statusGroupId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusGroupId Integer No Yes The status group id.
Return Value:
Returns the successfully removed status group as StatusGroup business object.

GetStatusGroupItemList
This method gets a list of status’s based on a status group id.
Syntax (C#):
Status[] GetStatusGroupItemList(APIContext context, Int32 statusGroupId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusGroupId Integer No Yes The status group id.
Return Value:
Returns a list of Business status objects based on a StatusGroup.

AddStatusToStatusGroup
This method adds an existing status to a status group.
Syntax (C#):
Status AddStatusToStatusGroup(APIContext context, Int32 statusGroupId, Int32 statusId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusGroupId Integer No Yes The status group id.
statusId Integer No Yes The status id.
Return Value:
Returns a status Business object that has been successfully added to a StatusGroup.

RemoveStatusFromStatusGroup
This method removes a status from a status group.
Syntax (C#):
Status RemoveStatusFromStatusGroup(APIContext context, Int32 statusGroupId, Int32 statusId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
statusGroupId Integer No Yes The status group id.
statusId Integer No Yes The status id.
Return Value:
Returns a status Business object that has been successfully removed from a StatusGroup.

ToDos
GetToDoProfile
This method retrieves the deliverable’s todo profile.
Syntax (C#):
ToDo[] GetToDoProfile(APIContext context, Int32 toDoId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
toDoId Integer No Yes The deliverable todo id.
Return Value:
Returns the deliverable todo profile as ToDo business object.

GetToDoList
This method retrieves the list of todo’s.
Syntax (C#):
ToDo[] GetToDoList(APIContext context, Int32 projectId, Int32? deliverableId, Int32? assignedToId, ReferenceType? assignedToType, );
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
projectId Integer No Yes The project id to search under.
deliverableId Integer Yes No The deliverable id to search under.
assignedTold Integer Yes No The user id or role id the deliverable is assigned to.
assignedToType ReferenceType Yes No The user type or role type of the assigned to id.
Return Value:
Returns the list of the todo’s as Todo business object.

AddToDo
The method creates the deliverable todo.
Syntax (C#):
ToDo AddToDo(APIContext context, Int32? statusId, String name, String code, String description, Int32 projectId, Int32 assignToRefId, ReferenceType assignToType, Int32 referenceId, ToDoReferenceType referenceType, DateTime? dueDate);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
deliverableId Integer Yes No The deliverable id.
statusId Integer Yes No The status of the todo. Only the todo statuses are valid.
name String No Yes The name of the todo.
code String No Yes The code of the todo.
description String Yes No The description of the todo.
projectId Integer No Yes The project id of the todo.
assignToRefld Integer No Yes The user id, team id or the role id to assign the todo to.
assignToRefType ReferenceType No Yes The user type, team type or role type of the assigned to id.
referenceId Integer No Yes The project Id or delieverable Id to assigned the todo to.
referenceType Integer No Yes The reference type (project or deliverable).
dueDate DateTime Yes No The due date of the todo in UTC.
Return Value:
Returns the successfully created deliverable todo as ToDo business object.

UpdateToDo
This method updates the deliverable todo.
Syntax (C#):
ToDo UpdateToDo(APIContext context, Int32 toDoId, Int32? statusId, String name, String code, String description, Int32? projectId, Int32? assignToRefId, ReferenceType? assignToRefType, Int32 referenceId, ToDoReferenceType referenceType, DateTime? dueDate);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
toDoId Integer No Yes The todo id.
statusId Integer Yes No The status of the todo. Only the todo statuses are valid. To remove the value assigned -1 needs to be passed in.
name String No Yes The name of the todo.
code String No Yes The code of the todo.
description String No Yes The description of the todo.
projectId Integer Yes No The project id of the todo.
assignToRefld Integer Yes No The user id , team id or the role id to assign the todo to.
assignToRefType ReferenceType Yes No The user type, team type or role type of the assigned to id.
referenceId Integer Yes No The project Id or delieverable Id to assigned the todo to.
referenceType ToDoReferenceType Yes No The reference type (project or deliverable).
dueDate DateTime Yes No The due date of the todo in UTC. To remove the value assigned 1970-01-01 needs to be passed in.
Return Value:
Returns the successfully updated deliverable todo as ToDo business object.

RemoveToDo
This method removes the todo.
Syntax (C#):
ToDo RemoveToDo(APIContext context, Int32 toDoId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
toDoId Integer No Yes The todo id.
Return Value:
Returns the successfully removed deliverable todo as ToDo business object.

User
GetMyProfile
This method retrieves the current API user’s profile information.
Syntax (C#):
User GetMyProfile(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the current user’s profile as User business object.

UpdateMyProfile
This method updates the current user’s profile.
Syntax (C#):
User UpdateMyProfile(APIContext context, String firstName, String lastName, String userName, String ldapName, String password, Int32? timeZoneId, Int32? languageId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
firstName String Yes No The first name of the user.
lastName String Yes No The last name of the user.
userName String Yes No The email address of the user.
ldapName String Yes No The lightweight directory access protocol name.
password String Yes No The password of the user profile.
timeZoneId Integer Yes No The timezone assigned to the user.
languageId Integer Yes No The language assigned to the user.
Return Value:
Returns the successfully updated user profile as User business object.

GetUserProfile
This method retrieves the selected user profile information.
Syntax (C#):
User GetUserProfile(APIContext context, Int32 userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
userId Integer No Yes The user id to retrieve the profile of.
Return Value:
Returns the selected users profile as User business object.

AddUser
This method creates a new user and requires Hosted API authorization.
Syntax (C#):
User AddUser(APIContext context, Boolean? isActive, String firstName, String lastName, String userName, Int32 timeZoneId, Int32 languageId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
isActive Integer Yes No True if the user is active.
firstName String No Yes The first name of the user.
lastName String No Yes The last name of the user.
userName String No Yes The email address for the user.
timeZoneId Integer No Yes The timezone for the user.
languageId Integer No Yes The language for the user.
Return Value:
Returns the successfully created user profile as User business object.

UpdateUser
This method updates the selected user’s profile information and requires Hosted API authorization.
Syntax (C#):
User UpdateUser(APIContext context, Int32 userId, String firstName, String lastName, String userName, String ldapName, String password, Int32? timeZoneId, Int32? languageId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
userId Integer No Yes The user id to update the profile for.
firstName String Yes No The first name of the user.
lastName String Yes No The last name of the user.
userName String Yes No The email address of the user.
ldapName String Yes No The lightweight directory access protocol name.
password String Yes No The password of the user profile.
timeZoneId Integer Yes No The timezone assigned to the user.
languageId Integer Yes No The language assigned to the user.
Return Value:
Returns the successfully update user as User business object.

GetApiToken
This method retrieves the API token of the selected user and requires Partner API authorization.
Syntax (C#):
String GetApiToken(APIContext context, Int32 userId);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
userId Integer No Yes The user id to get the api token of.
Return Value:
Returns the API token for the selected user.

GetUserId
This method retrieves the user id from the email address and requires Partner API authorization.
Syntax (C#):
Int32 GetUserId(APIContext context, String emailAddress);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api and requires partner key credentials.
emailAddress String No Yes The email address of the user.
Return Value:
Returns the user id.

Workflow
GetProjectWorkflowTemplateList
This method retrieves the list of project workflow templates.
Syntax (C#):
Workflow[] GetProjectWorkflowTemplateList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the list of the project workflow templates as Workflow business objects.

GetDeliverableWorkflowTemplateList
This method retrieves the list of deliverable workflow templates.
Syntax (C#):
Workflow[] GetDeliverableWorkflowTemplateList(APIContext context);
Parameters:
Parameter Data Type Nullable Required Description
context APIContext No Yes Authorizes the user into the Api.
Return Value:
Returns the list of the deliverable workflow templates as Workflow business objects.