Hints on using alert definitions from the API

Basically I want to update an alert definition.

Anyone managed to get the PUT call working?

All I want to do is update the USER with an API call - move it from userA to userB say.

But I keep getting a 400 error:

/ssc/api/v1/alertDefinitions/35

{
  "message": "Resource of type com.fortify.server.platform.types.AlertDefinitionDto contained invalid or incompatible data in these field(s): 'projectVersionIds','monitorAllApps','monitoredEntityType','recipientType'",
  "responseCode": 400,
  "errorCode": -20117
}

Now - I basically used GET to get a specific ID.
Then took the data part, used as body, PUT it .. I get that error.

This doesnt make sense.

The projectVersionIds is null - which is a valid value.

Here's what comes out of the GET for id 35 ... and putting it straight back hits above error - doesnt make sense to me.

{
    "id": 35,
    "name": "Monitroing team responsible projects issues",
    "description": "",
    "customMessage": null,
    "recipientType": "ALL_USERS",
    "monitoredEntityType": "VARIABLE",
    "monitoredInstanceId": 10,
    "startDate": null,
    "endDate": null,
    "startAtDueDate": false,
    "createdBy": "i328381",
    "creationDate": "2018-04-27T09:01:04.163+0000",
    "enabled": false,
    "monitoredEntityName": "NEWIssues",
    "alertAllChildren": false,
    "userCanModify": true,
    "alertTriggers": [
      {
        "alertDefinitionId": 35,
        "monitoredAttribute": "VALUE_GT",
        "triggeredValue": "0",
        "resetAfterTriggering": false
      }
    ],
    "alertStakeholders": false,
    "monitorAllApps": false,
    "reminderPeriod": 0,
    "remindPeriodically": false,
    "monitorsRuntimeApp": false,
    "monitorsProjectVersions": true,
    "triggerDescriptionName": "NEWIssues",
    "triggerDescriptionOperation": ">",
    "triggerDescriptionValue": "0",
    "triggerDescription": "NEWIssues > 0",
    "projectVersionIds": null
}