PATCH Project/{id}
Some tooltip text!
• 9 minutes to read
• 9 minutes to read
PATCH /api/v1/Project/{id}
Update a ProjectEntity with changes, as described in a JSON Patch or a JSON Merge Patch document.
See RFC6902 and RFC 7396. Update the Department field to "foo" can be done either as a JSON PATCH:
[ { "op": "replace", "path": "/Department", "value": "foo" } ]
or as a JSON MERGE PATCH, which describes the change directly:
{ "Department": "foo" }
JSON PATCH supports operations 'add', 'replace', 'remove' and 'test'. The path is case insensitive, and the leading slash is optional, so the paths "/department", "Department" and "department" are all equivalent.
Calls the {SuperOffice.CRM.Services.IProjectAgent} service SaveProjectEntity.
Path Part | Type | Description |
---|---|---|
id | int32 | The ProjectEntity id to update. Required |
Query String Parameters
Parameter Name | Type | Description |
---|---|---|
$select | string | Optional comma separated list of properties to include in the result. Other fields are then nulled out to reduce payload size: "Name,department,category" Default = show all fields. |
PATCH /api/v1/Project/{id}?$select=name,department,category/id
Request Headers
Parameter Name | Description |
---|---|
Authorization | Supports 'Basic', 'SoTicket' and 'Bearer' schemes, depending on installation type. |
X-XSRF-TOKEN | If not using Authorization header, you must provide XSRF value from cookie or hidden input field |
Content-Type | Content-type of the request body: |
Accept | Content-type(s) you would like the response in: application/json , text/json , application/xml , text/xml , application/json-patch+json , application/merge-patch+json |
Accept-Language | Convert string references and multi-language values into a specified language (iso2) code. |
SO-Language | Convert string references and multi-language values into a specified language (iso2) code. Overrides Accept-Language value. |
SO-Culture | Number, date formatting in a specified culture (iso2 language) code. Partially overrides SO-Language/Accept-Language value. Ignored if no Language set. |
SO-TimeZone | Specify the timezone code that you would like date/time responses converted to. |
SO-AppToken | The application token that identifies the partner app. Used when calling Online WebAPI from a server. |
Request Body: changes
JSON-Patch array of operations+path+value, or a MERGE-PATCH object (which will be converted to a list of JSON-PATCH operations).
Property Name | Type | Description |
---|---|---|
op | String | "add", "replace", "remove", "test" "move" and "copy" not supported |
path | String | The property names to modify. "/users/0/email", "/users/-", |
value | Object | New/Replaced value - string or object. |
Response:
ProjectEntity updated.
Response | Description |
---|---|
200 | ProjectEntity updated. |
404 | ProjectEntity with given id does not exist in the db. |
409 | Update blocked because a 'test' operation has detected a conflict with the entity value. |
412 | Update aborted because ProjectEntity has changed since the requested If-Unmodified-Since timestamp. |
Response body: ProjectEntityWithLinks
Property Name | Type | Description |
---|---|---|
ProjectId | int32 | Primary key |
Name | string | Project name |
ProjectNumber | string | Automatically generated number |
ProjectMembers | array | The persons which are members of the project |
Urls | array | The project's internet adresses |
CreatedDate | date-time | Registered date in UTC. |
UpdatedDate | date-time | Last updated date in UTC. |
Description | string | The actual text, max 2047 significant characters even though it is stored as a larger data type on some databases |
Postit | string | The actual text, max 2047 significant characters even though it is stored as a larger data type on some databases |
CreatedBy | Associate | The person that created the project |
UpdatedBy | Associate | The person that last updated the project |
Associate | Associate | The person that created the project Use MDO List name "associate" to get list items. |
ProjectStatus | ProjectStatus | Project status is a list defined by the database administrator. Different statuses of a project may be: “In planning”, “Started”, “Finished” and so on Use MDO List name "projectstatus" to get list items. |
ProjectType | ProjectType | Project type is a list defined by the database admin. for example: 'Large', 'Small', 'Party'... Use MDO List name "projecttype" to get list items. |
HasImage | bool | True if the project has an image. (This is the image that is displayed in the CRM client) |
ImageDescription | string | Description of the project image if it exists. (This is the image that is displayed in the CRM client) |
ActiveStatusMonitorId | int32 | Active status monitor identity with the lowest rank for project |
Links | array | List of all elements linked to the project |
ActiveLinks | int32 | Number of active links to documents, other appointments, and such |
Completed | bool | Done (0=false, 1=true). Status implies changes in which fields are shown in GUI, as well as which fields can be updated |
NextMilestoneDate | date-time | Calculated date, reflects date of closest non-complete future milestone activity |
NmdAppointmentId | int32 | ID of appointment that "caused" the nextMilestoneDate, can be 0 |
EndDate | date-time | Planned end date for project, inhertied from type and later editable |
ActiveErpLinks | int32 | The number of active erp links |
UserDefinedFields | object | Deprecated: Use {SuperOffice.CRM.Services.ProjectEntity.CustomFields} instead. Dictionary of user defined field data. The key string is the ProgId of the UdefField, or if the ProgId is empty it is a string of the format "SuperOffice:[UdefFieldIdentity]", e.g. "SuperOffice:1234" |
ExtraFields | object | Deprecated: Use {SuperOffice.CRM.Services.ProjectEntity.CustomFields} instead. Extra fields added to the carrier. This could be data from Plug-ins, the foreign key system, external applications, etc. |
CustomFields | object | Udef + Extra fields added to the carrier. Extra fields as defined by changes to database schema + user-defined fields as defined by admin. Custom fields combines user defined fields and extra fields into one bucket. The individual {SuperOffice.CRM.Services.ProjectEntity.ExtraFields} and UserDefinedFields properties are deprecated in favor of this combined collection. |
PublishEventDate | date-time | Publish event date |
PublishTo | date-time | Publication valid to (inclusive) |
PublishFrom | date-time | Publication valid from (inclusive) |
IsPublished | bool | Publication is published |
TableRight | TableRight | The carrier's table right |
FieldProperties | object | Field property dictionary mapping field names to field access rights. |
_Links | object |
Sample request
PATCH /api/v1/Project/{id}
Authorization: Basic dGplMDpUamUw
Accept: application/json; charset=utf-8
Accept-Language: sv
Content-Type: application/json; charset=utf-8
[
{
"op": "add",
"path": "officiis",
"value": {}
},
{
"op": "add",
"path": "officiis",
"value": {}
}
]
Sample response
HTTP/1.1 200 ProjectEntity updated.
Content-Type: application/json; charset=utf-8
{
"ProjectId": 665,
"Name": "Kulas-Johnson",
"ProjectNumber": "505880",
"ProjectMembers": [
{
"ProjectmemberId": 398,
"ContactId": 800,
"ProjectId": 708,
"ContactName": "Oberbrunner Group",
"ContactDepartment": "",
"ProjectName": "Goodwin, Klocko and Kassulke",
"EmailId": 40,
"EmailAddress": "kenya@collier.biz",
"CountryId": 871,
"Firstname": "Evelyn",
"MiddleName": "Parisian-Stokes",
"Lastname": "Beahan",
"PersonId": 539,
"Mrmrs": "qui",
"ProjectMemberTypeName": "Schiller-Kshlerin",
"Phone": "961.475.3859 x47615",
"PhoneId": 889,
"ProjectMemberTypeId": 113,
"EmailAddressName": "kaden_feest@beier.info",
"Comment": "voluptates",
"FullName": "Dedrick Wisozk",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 313
}
}
}
],
"Urls": [
{
"Value": "quis",
"StrippedValue": "aliquam",
"Description": "Organic needs-based database",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 790
}
}
},
{
"Value": "quis",
"StrippedValue": "aliquam",
"Description": "Organic needs-based database",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 790
}
}
}
],
"CreatedDate": "2017-09-20T13:28:31.8667032+02:00",
"UpdatedDate": "2010-08-07T13:28:31.8667032+02:00",
"Description": "Grass-roots directional ability",
"Postit": "placeat",
"CreatedBy": null,
"UpdatedBy": null,
"Associate": null,
"ProjectStatus": null,
"ProjectType": null,
"HasImage": false,
"ImageDescription": "Adaptive next generation attitude",
"ActiveStatusMonitorId": 913,
"Links": [
{
"EntityName": "Waelchi-Crona",
"Id": 106,
"Description": "User-centric discrete approach",
"ExtraInfo": "accusamus",
"LinkId": 864,
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 742
}
}
}
],
"ActiveLinks": 906,
"Completed": false,
"NextMilestoneDate": "2007-06-18T13:28:31.8667032+02:00",
"NmdAppointmentId": 78,
"EndDate": "2011-11-25T13:28:31.8667032+01:00",
"ActiveErpLinks": 230,
"UserDefinedFields": {
"SuperOffice:1": "521598876",
"SuperOffice:2": "Ms. Arvel Isac Zboncak PhD"
},
"ExtraFields": {
"ExtraFields1": "quo",
"ExtraFields2": "facilis"
},
"CustomFields": {
"CustomFields1": "quia",
"CustomFields2": "voluptatem"
},
"PublishEventDate": "2002-03-31T13:28:31.8667032+02:00",
"PublishTo": "2017-09-25T13:28:31.8667032+02:00",
"PublishFrom": "2008-05-21T13:28:31.8667032+02:00",
"IsPublished": false,
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 757
}
},
"_Links": {
"Self": "https://www.example.com/api/v1/project/321",
"Archive": "https://www.example.com/api/v1/project"
}
}