EP : Extended Permissions
+ : Consider the permission with + and all permissions above it.
Permission hierarchy : Account Admin > Project Manager > Project Member > Contact
Object (Campaign) security hierarchy : Manage > Contribute > View
Following is the campaign json structure required for add and update campaign. There are 3 arrays standardFields, customFields, deletedFields. If standard field is to be added put its details under standardFields array, with its field Id and value. If customFields is to be added put its details under customFields array, with its field Id and value. If value of any custom field is to be removed, put its Id and old value in the deletedFields array.
If field type is single select, multi select, radio or check box, pass Option Id as value. Applicable for both standard and custom fields.If multi select or check box, then specify different objects for each option.One example given in standard fields array for multi select field - 87327 which has two option Ids 66900, 66902
Following is the json structure with example :
{"standardFields":
[
{"id":Provide field Id,
"value":Provide value for that standard field },
{"id":1384,"value":"camp descripion"},
{"id":1386,"value":"08/04/2016"},
{"id":87326,"value":66898},
{"id":87327,"value":66900},
{"id":87327,"value":66902}
],
"customFields":
[
{"id":Provide field Id,
"value":Provide value for that custom field},
{"id":89900,"value":"abc@xyz.com"}
],
"deletedFields":
[
{"id":Provide field Id,
"deletedValue":Provide old value to delete}
]
}
Following are filter details to be used for Campaign list calls. If applying filter on standard field pass the standard field Id in parameter standardFieldId. If applying filter on custom field pass the custom field Id in parameter columnId. Then provide what type of filter is to be applied like 'is' or 'is not' or 'not in' etc. This value is to be passed in the comparatorId parameter. Pass filter value in parameter 'value'. If filter value is of option type, then pass comma separated option Ids. Every column has a type. Hence pass this type in the parameter columnType.
Parameters comparatorId, value, columnType are required parameters. Depending on the column to which the filter is to be applied pass standardFieldId or columnId. Any one of these Ids is required to be passed.
To get list of columns, give call to ListListColumns of Account module. Pass account Id and form type 3 (ie Campaign form) to the call. The response contains list of ListColumn object. The ListColumn object contains Field object which will give the field details. The Field object contains the GlobalList object.
The 'displayName' field gives the name of the column.
If the global list Id is not null, the field is a standard field and if global list Id is null, the field is a custom field. If filter is to be applied on standard field then pass that field's global list Id to 'standardFieldId' parameter. If filter is to be applied on custom field pass the field Id to 'columnId' parameter.
The Field object contains 'fieldType' ie what type of field it is, like text, number, date, etc. Pass this fieldType to the 'columnType' parameter. Depending on type of field pass its value.
standardFieldId : Provide field Id of the standard column on which filter is to be applied.
columnId : Provide field Id of the custom column on which filter is to be applied.
comparatorId : Comaparators that can be used for the column.
Give call to ListFieldComparator of Form module to get list of comparators.
Provide column type as fieldTypeId to the call.
It will return list of comparators that can be use for the field. Then provide the comparator to be applied on the filter.
value : Value to be provided for the filter.
columnType : Type of column.
Following are the types of columns and their Ids and type of value to be passed for that filter :
1 : text => Pass string value
3 : number => Pass integer value
4 : date => Pass date value
7 : single select => If field is of type single select then its an option field. In this case pass the option Id. Different calls are to be given to get the options for the field. Their details are given in next para.
9 : multi select => If field is of type multi select then its an option field. In this case pass the option Id. Different calls are to be given to get the options for the field. Their details are given in next para.
Following are the single select, multi select fields and call to be given to get their option list :
standardFieldColumnName : isBlocked (Campaign blocked)
value: Provide Id (Give active options call to get options - ListActiveOptions of form module)
standardFieldColumnName : onBudget (Campaign on budget)
value: Provide Id (Give active options call to get options - ListActiveOptions of form module)
standardFieldColumnName : isOnSchedule (Campaign on schedule)
value: Provide Id (Give active options call to get options - ListActiveOptions of form module)
standardFieldColumnName : clientName (Client)
value: Provide comma separated ids (Give call to get active client list - ListAllActiveClient of client module)
standardFieldColumnName : createdByUser (Created by)
value: Provide comma separated Ids (Give call to get active account user list - ListActiveUser)
standardFieldColumnName : modifiedByUser (Modified by)
value: Provide comma separated Ids (Give call to get active account user list - ListActiveUser)
Following is the list of output columns for List campaign calls.
Add new files with the help of AddFile of file module.In response of Add File will get FileIds in file object under customParams. Can add one or more files. After adding files pass these file id's as comma separated to the newFileIds parameter.
For standard fields need to be pass values in update call, otherwise
those values will get deleted.For custom fields we need to pass the
values to deleted fields array in request '''("deletedFields":[]")'''
then those will get deleted.
To get old file ids give call to ListFiles of file module. Pass documentType : 6 , objectType:6 and pass campaignId as objectId. This will return list of campaign files. Pass this Id's to the oldFileIds parameter. If some old files are to be removed do not specify that id's.
Get active campaign list for the account. The list will contain active campaigns with details of the columns specified in the output column list. If output columns not specified, default column values will be returned.
Different filters can be applied to the list. For example if campaign starting with particular name are required, then filter can be applied to campaign name. Filter details are given below with their parameters.
Sorting can be applied to any of the column. Provide sort column and direction for it.
To get list of particular size paging can be applied. For example to get first 50 projects, pass limit as 50 and start as 0. Paging details are given below with the parameters.
Different modes can be applied to the list. Details are given under listMode parameter.
Access
Project Member +
Parameters
Name
Located in
Description
Required
Schema
listMode
query
Provide any one mode,
default = will return active campaign list
gantt / calendar = will return campaigns within the start and end
date limit. Parameters startDate, endDate required in this case.
Provide comma separated list of output columns.
For standard fields provide column name and for custom field provide field Id.
Eg=> name,startDate,dueDate,345,347
Refer to Standard Fields at the top. Specify column name from the list.
To get custom field Ids give call to ListListColumns .The response will give list of ListColumn. Under each ListColumn is the Field object. Under the Field object there is a Globallist object. If global list Id is null, means that field is a custom field. Pass the field Id as output column.
Get archived campaign list for the account. The list will contain archived campaigns with details of the columns specified in the output column list. If output columns not specified, default column values will be returned.
Different filters can be applied to the list. For example if campaign starting with particular name are required, then filter can be applied to campaign name. Filter details are given below with their parameters.
Sorting can be applied to any of the column. Provide sort column and direction for it.
To get list of particular size paging can be applied. For example to get first 50 projects, pass limit as 50 and start as 0. Paging details are given below with the parameters.
Different modes can be applied to the list. Details are given under listMode parameter.
Access
Project Member +
Parameters
Name
Located in
Description
Required
Schema
listMode
query
Provide any one mode,
default = will return active campaign list
gantt / calendar = will return campaigns within the start and end
date limit. Parameters startDate, endDate required in this case.
Provide comma separated list of output columns.
For standard fields provide column name and for custom field provide field Id.
Eg=> name,startDate,dueDate,345,347
Refer to Standard Fields at the top. Specify column name from the list.
To get custom field Ids give call to ListListColumns .The response will give list of ListColumn. Under each ListColumn is the Field object. Under the Field object there is a Globallist object. If global list Id is null, means that field is a custom field. Pass the field Id as output column.
Get deleted campaign list for the account. The list will contain deleted campaigns with details of the columns specified in the output column list. If output columns not specified, default column values will be returned.
Sorting can be applied to any of the column. Provide sort column and direction for it.
To get list of particular size paging can be applied. For example to get first 50 projects, pass limit as 50 and start as 0. Paging details are given below with the parameters.
Export campaign list. The list will contain campaigns with details of the columns specified in the output column list. If output columns not specified, default column values will be returned.
Different filters can be applied to the list. For example if campaign starting with particular name are required, then filter can be applied to campaign name. Filter details are given below with their parameters.
Sorting can be applied to any of the column. Provide sort column and direction for it.
Specify campaign state to get active or archived campaign list.
Provide comma separated list of output columns.
For standard fields provide column name and for custom field provide field Id.
Eg=> name,startDate,dueDate,345,347
Refer to Standard Fields at the top. Specify column name from the list.
To get custom field Ids give call to ListListColumns .The response will give list of ListColumn. Under each ListColumn is the Field object. Under the Field object there is a Globallist object. If global list Id is null, means that field is a custom field. Pass the field Id as output column.
Export active searched campaign list. Provide searched campaign Ids in parameter 'campaignIds'. The list will contain campaigns with details of the columns specified in the output column list. If output columns not specified, default column values will be returned.
Different filters can be applied to the list. For example if campaign starting with particular name are required, then filter can be applied to campaign name. Filter details are given below with their parameters.
Sorting can be applied to any of the column. Provide sort column and direction for it.
Access
Project Member +
Parameters
Name
Located in
Description
Required
Schema
outputColumns
query
Provide comma separated list of output columns.
For standard fields provide column name and for custom field provide field Id.
Eg=> name,startDate,dueDate,345,347
Refer to Standard Fields at the top. Specify column name from the list.
To get custom field Ids give call to ListListColumns .The response will give list of ListColumn. Under each ListColumn is the Field object. Under the Field object there is a Globallist object. If global list Id is null, means that field is a custom field. Pass the field Id as output column.
Export archived searched campaign list. Provide searched campaign Ids in parameter 'campaignIds'. The list will contain campaigns with details of the columns specified in the output column list. If output columns not specified, default column values will be returned.
Different filters can be applied to the list. For example if campaign starting with particular name are required, then filter can be applied to campaign name. Filter details are given below with their parameters.
Sorting can be applied to any of the column. Provide sort column and direction for it.
Access
Project Member +
Parameters
Name
Located in
Description
Required
Schema
outputColumns
query
Provide comma separated list of output columns.
For standard fields provide column name and for custom field provide field Id.
Eg=> name,startDate,dueDate,345,347
Refer to Standard Fields at the top. Specify column name from the list.
To get custom field Ids give call to ListListColumns .The response will give list of ListColumn. Under each ListColumn is the Field object. Under the Field object there is a Globallist object. If global list Id is null, means that field is a custom field. Pass the field Id as output column.
Provide campaign scheduling option if want to copy project details as per below=>
1) Do Not Move - Shift Dates Manually
2) Shift Projects based on Campaign Start Date
3) Shift Projects based on Campaign Due Date
4) Shift Projects based on Project Reference Task/Review Start Date
5) Shift Projects based on Project Reference Task/Review Due Date
Provide reference task/review Id when want to use "Shift Projects based on Project Reference Task/Review Start Date"(Option 4) OR "Shift Projects based on Project Reference Task/Review Due Date"(Option 5)
Provide reference Object type task(9) OR review(10) when want to use "Shift Projects based on Project Reference Task/Review Start Date"(Option 4) OR "Shift Projects based on Project Reference Task/Review Due Date"(Option 5)
Provide reference date when want to use "Shift Projects based on Project Reference Task/Review Start Date"(Option 4) OR "Shift Projects based on Project Reference Task/Review Due Date"(Option 5)