We use cookies to improve your experience. No personal information is gathered and we don't serve ads. Cookies Policy.

ExpressionEngine Logo ExpressionEngine
Features Pricing Support Find A Developer
Partners Upgrades
Blog Add-Ons Learn
Docs Forums University
Log In or Sign Up
Log In Sign Up
ExpressionEngine Logo
Features Pro new Support Find A Developer
Partners Upgrades
Blog Add-Ons Learn
Docs Forums University Blog
  • Home
  • Forums

Member Management API? Can I add/remove/update members via an API?

Development and Programming

OwenKav's avatar
OwenKav
1 posts
15 years ago
OwenKav's avatar OwenKav

Hi all,

I’m new to EE and doing some research for a client who needs to integrate EE with a 3rd party system (NATS from Too Much Media).

Does EE offer an API – or some other mechanism – that allows the following?

  • ADD a user
  • REMOVE a user
  • CHECK if a username is available

Thanks so much in advance!

Owen

       
OwenKav's avatar
OwenKav
1 posts
15 years ago
OwenKav's avatar OwenKav

If not via API, would this just be done by straight SQL? (yuck)

       
sedev's avatar
sedev
14 posts
15 years ago
sedev's avatar sedev

Hi OwenKav,

Looks like no one helped you out with this one. Did you manage to find out if this is possible?

Cheers,

Seamus

       
Rob Sanchez's avatar
Rob Sanchez
335 posts
15 years ago
Rob Sanchez's avatar Rob Sanchez

Take a look at the member model.

$this->EE->load->model('member_model');
$this->EE->load->helper('security');

$data['username']     = $this->input->post('username');
$data['password']    = do_hash($this->input->post('password'));
$data['email']        = $this->EE->input->post('email');
$data['ip_address']    = $this->EE->input->ip_address();
$data['unique_id']    = random_string('encrypt');
$data['join_date']    = $this->EE->localize->now;
$data['language']     = $this->EE->config->item('deft_lang');
$data['timezone']     = ($this->EE->config->item('default_site_timezone') && $this->EE->config->item('default_site_timezone') != '') ? $this->EE->config->item('default_site_timezone') : $this->EE->config->item('server_timezone');
$data['daylight_savings'] = ($this->EE->config->item('default_site_dst') && $this->EE->config->item('default_site_dst') != '') ? $this->EE->config->item('default_site_dst') : $this->EE->config->item('daylight_savings');
$data['time_format'] = ($this->EE->config->item('time_format') && $this->EE->config->item('time_format') != '') ? $this->EE->config->item('time_format') : 'us';
$data['group_id'] = 1;

if ($this->EE->member_model->get_members('', '', '', $data['username'], '', 'username')->num_rows() > 0)
{
   $this->EE->output->show_user_error('submission', 'Username already exists!!!!');
}

$member_id = $this->EE->member_model->create_member($data);

$this->EE->member_model->delete_member($member_id);

You’d, of course, have to do this in your own custom module/template.

       
sedev's avatar
sedev
14 posts
15 years ago
sedev's avatar sedev

Just what I was looking for! Thanks a lot, Rob.

Seamus

       

Reply

Sign In To Reply

ExpressionEngine Home Features Pro Contact Version Support
Learn Docs University Forums
Resources Support Add-Ons Partners Blog
Privacy Terms Trademark Use License

Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.