Depends on what they want to do. If it's just to add activity that can be done with an activity object as follows or just inserted directly into the database table.
Code:
$activity = new \CB\Plugin\Activity\Table\ActivityTable();
$activity->set( 'type', ACTIVITY_TYPE_HERE );
$activity->set( 'title', 'shared this custom activity' );
$activity->set( 'message', 'This is my custom activity.' );
$activity->set( 'user_id', USER_ID_HERE );
$activity->store();
If access controls are needed then acting on the triggers to extend the query or remove unauthorized activity rows is needed. Also note CB Auto Actions can log activity so it maybe easier for them to just fire a CB trigger so CB Auto Actions can act on it.