AnsweredAssumed Answered

createMember() undefined

Question asked by iainbrown on Dec 9, 2014
Latest reply on May 31, 2017 by tmaurer

I've been working on building a version of Ryan Rutan's admin essentials add-on, as detailed here: The specified item was not found.

 

Until the Fall release, although I was having a few issues with batch execution success rates, the createMember function was working, but now after the upgrade the createMember function appears to be undefined for the group that I'm working in (any group: I've tried multiple groups and Jive instances). I see the same behaviour in sandbox.jiveon.com as I do in an instance where I'm a full admin.

 

I am retrieving the group using the current context that the app has been loaded in:

 

     var options = { entityDescriptor: 700 + "," + ctx.jive.content.id };
     osapi.jive.corev3.places.get(options).execute( function(response) {
            if (response.error) {
                appObj.showError("Error loading DL: " + response.error.message + " (" + response.error.code + ")");
            } else {
                appObj.handleLoadContext(response.list[0]);
            } // end if
        });

 

I'm then using the place object later to add the member request:

 

appObj.currentCtx.createMember({ person : person.resources.self.ref, state : "member"});

 

It's at this point that I get undefined for the createMember function. I am the group owner.

 

You can see in the object that I'm logging: other functions are defined, but createMember is not:

 

Screen Shot 2014-12-09 at 12.08.44.png

 

 

This code has been working previously as you can see from the comments on Ryan's blog, particularly the one mentioning: ""500"message: "Internal server error: Membership was created but cannot be retrieved","

 

In the javascript API documentation there is a note that functions will be undefined where you don't have permission to execute them; has something changed in the permission model for adding memberships to groups that would have had an effect?

 

I have other php code that accesses the REST API using OAuth remotely and that still appears to be working ok:

 

POST to:

/members/places/$jivePlaceId

with data:

$jiveDoc =  '{ "person": "https://cisco-poc.jiveon.com/api/core/v3/people/'.$jiveMemberId.'", "state": "member" }';

 

 

davin.kluttz: anything you might be able to help me track down on this issue?

craig.mcclanahan: I wonder if you are able to provide any insight into any potential API changes I might be running into?

 

Thanks!

Outcomes