4 Replies Latest reply on Nov 19, 2014 2:12 PM by 51864

    How to update an Opportunity via the SOAP API

      Hey everybody,

      My company utilizes Microsoft Dynamics CRM. The CRM instance pushes opportunity data into Marketo. From a separate application, I am trying to update the opportunity via the SOAP API, but having difficulty. I keep getting a response stating that the Opportunity is unchanged.
       

      The id referenced in the request is captured by using getMObject in a previous request. My request using SyncMObjects looks like this:

      $params = new \stdClass();

      $mObj = new \stdClass();
      $mObj->type = 'Opportunity';
      $mObj->id = $id;

      $attrib1 = new \stdClass();
      $attrib1->name="Probability";
      $attrib1->value="80%";

      $attribList = array ($attrib1);

      $costAttrib = new \stdClass();
      $costAttrib->attrType="Tag";
      $costAttrib->attrList = $attribList;

      $mObj->typeAttribList= array($costAttrib);
      $params->mObjectList = array($mObj);

      $params->operation="UPDATE";

      My response is this:
      $success->result->mObjStatusList->mObjStatus->id=7923;
      $success->result->mObjStatusList->mObjStatus->status="UNCHANGED";

      I have tried a variety of different small changes, but keep getting the unchanged result. What am I missing? Am I missing a required attribute to update an opportunity?

      Let me know when you can!

      Thanks!
      Phil Hotchkiss