Vesta Control Panel - Forum

Community Forum

Skip to content

Advanced search
  • Quick links
    • Main site
    • Github repo
    • Google Search
  • FAQ
  • Login
  • Register
  • Board index Dev Section Scripting / API
  • Search

Update user API code PHP (Vestacp Class code)

Questions regarding the API
Application Programming Interface
Post Reply
  • Print view
Advanced search
1 post • Page 1 of 1
daansk44
Posts: 56
Joined: Tue Sep 06, 2016 7:21 pm

Os: CentOS 6x
Web: apache + nginx
Update user API code PHP (Vestacp Class code)
  • Quote

Post by daansk44 » Thu Nov 30, 2017 8:27 am

Hey everyone,

I am writing an api class for Vestacp, and want to add a code to update users.
Is there a way.

You can download the code for free on
https://gitlab.com/daansk44/vestacontrolpanelapiclasses

Code: Select all

<?php

class VestaClass
{
    
    // basic
    
    protected $vst_hostname;
    protected $vst_username;
    protected $vst_password;
    protected $vst_returncode;
    
    // User settings
    
    protected $username;
    protected $password;
    protected $email;
    protected $fist_name;
    protected $last_name;
    
    // end user settings
    // For make database
    
    protected $db_name;
    protected $db_user;
    protected $db_pass;
    
    // Package
    
    protected $package;
    
    // making domain
    
    protected $domain;
    
    // https://vestacp.com/docs/api/
    
    public function MakeDatabase($vst_hostname, $vst_username, $vst_password, $username, $vst_returncode, $db_name, $db_user, $db_pass)
    {
        $vst_command = 'v-add-database';
        
        // Prepare POST query
        
        $postvars = array(
            'user' => $vst_username,
            'password' => $vst_password,
            'returncode' => $vst_returncode,
            'cmd' => $vst_command,
            'arg1' => $username,
            'arg2' => $db_name,
            'arg3' => $db_user,
            'arg4' => $db_pass
        );
        $postdata = http_build_query($postvars);
        
        // Send POST query via cURL
        
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, 'https://' . $vst_hostname . ':8083/api/');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
        $answer = curl_exec($curl);
        
        // Check result
        
        if ($answer == 0) {
            return "Database has been successfuly created\n";
        } else {
            return "Query returned error code: " . $answer . "\n";
        }
    }
    
    public function MakeUser($vst_hostname, $vst_username, $vst_password, $username, $vst_returncode, $password, $email, $fist_name, $last_name, $package)
    {
        
        // Server credentials
        
        $vst_command = 'v-add-user';
        
        // Prepare POST query
        
        $postvars = array(
            'user' => $vst_username,
            'password' => $vst_password,
            'returncode' => $vst_returncode,
            'cmd' => $vst_command,
            'arg1' => $username,
            'arg2' => $password,
            'arg3' => $email,
            'arg4' => $package,
            'arg5' => $fist_name,
            'arg6' => $last_name
        );
        $postdata = http_build_query($postvars);
        
        // Send POST query via cURL
        
        $postdata = http_build_query($postvars);
        $curl     = curl_init();
        curl_setopt($curl, CURLOPT_URL, 'https://' . $vst_hostname . ':8083/api/');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
        $answer = curl_exec($curl);
        
        // Check result
        
        if ($answer == 0) {
            return "User account has been successfuly created\n";
        } else {
            return "Query returned error code: " . $answer . "\n";
        }
    }
    
    public function MakeWebDNSMail($vst_hostname, $vst_username, $vst_password, $username, $vst_returncode, $domain)
    {
        
        // Server credentials
        
        $vst_command = 'v-add-domain';
        
        // Prepare POST query
        
        $postvars = array(
            'user' => $vst_username,
            'password' => $vst_password,
            'returncode' => $vst_returncode,
            'cmd' => $vst_command,
            'arg1' => $username,
            'arg2' => $domain
        );
        $postdata = http_build_query($postvars);
        
        // Send POST query via cURL
        
        $postdata = http_build_query($postvars);
        $curl     = curl_init();
        curl_setopt($curl, CURLOPT_URL, 'https://' . $vst_hostname . ':8083/api/');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
        $answer = curl_exec($curl);
        
        // Check result
        
        if ($answer == 0) {
            return "Domain has been successfuly created\n";
        } else {
            return "Query returned error code: " . $answer . "\n";
        }
    }
    
    public function GetUsersFromServer($vst_hostname, $vst_username, $vst_password, $username)
    {
        
        // Prepare POST query
        
        $postvars = array(
            'user' => $vst_username,
            'password' => $vst_password,
            'cmd' => $vst_command,
            'arg1' => $username,
            'arg2' => $format
        );
        $postdata = http_build_query($postvars);
        
        // Send POST query via cURL
        
        $postdata = http_build_query($postvars);
        $curl     = curl_init();
        curl_setopt($curl, CURLOPT_URL, 'https://' . $vst_hostname . ':8083/api/');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
        $answer = curl_exec($curl);
        
        // Parse JSON output
        
        $data = json_decode($answer, true);
        
        // Print result
        
        return ($data);
    }
    
    public function DeleteUser($vst_hostname, $vst_username, $vst_password, $username, $vst_returncode)
    {
        
        // Prepare POST query
        
        $postvars = array(
            'user' => $vst_username,
            'password' => $vst_password,
            'returncode' => $vst_returncode,
            'cmd' => $vst_command,
            'arg1' => $username
        );
        $postdata = http_build_query($postvars);
        
        // Send POST query via cURL
        
        $postdata = http_build_query($postvars);
        $curl     = curl_init();
        curl_setopt($curl, CURLOPT_URL, 'https://' . $vst_hostname . ':8083/api/');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
        $answer = curl_exec($curl);
        
        // Check result
        
        if ($answer == 0) {
            echo "User account has been successfuly deleted\n";
        } else {
            echo "Query returned error code: " . $answer . "\n";
        }
    }
}

?> 
Top


Post Reply
  • Print view
1 post • Page 1 of 1

Return to “Scripting / API”



  • Board index
  • All times are UTC
  • Delete all board cookies
  • The team
Powered by phpBB® Forum Software © phpBB Limited
*Original Author: Brad Veryard
*Updated to 3.2 by MannixMD
 

 

Login  •  Register

I forgot my password