Overview

Namespaces

  • LoginRadiusSDK
    • Advance
    • Clients
    • CustomerRegistration
      • Account
      • Authentication
      • Social
    • Utility

Classes

  • LoginRadiusSDK\Advance\ConfigAPI
  • LoginRadiusSDK\Advance\WebHooksAPI
  • LoginRadiusSDK\Clients\DefaultHttpClient
  • LoginRadiusSDK\CustomerRegistration\Account\AccountAPI
  • LoginRadiusSDK\CustomerRegistration\Account\CustomObjectAPI
  • LoginRadiusSDK\CustomerRegistration\Account\CustomRegistrationDataAPI
  • LoginRadiusSDK\CustomerRegistration\Account\RoleAPI
  • LoginRadiusSDK\CustomerRegistration\Authentication\AuthCustomObjectAPI
  • LoginRadiusSDK\CustomerRegistration\Authentication\UserAPI
  • LoginRadiusSDK\CustomerRegistration\Social\AdvanceSocialLoginAPI
  • LoginRadiusSDK\CustomerRegistration\Social\SocialLoginAPI
  • LoginRadiusSDK\Utility\Functions

Interfaces

  • LoginRadiusSDK\Clients\IHttpClient

Exceptions

  • LoginRadiusSDK\LoginRadiusException
  • Overview
  • Namespace
  • Class
  1:   2:   3:   4:   5:   6:   7:   8:   9:  10:  11:  12:  13:  14:  15:  16:  17:  18:  19:  20:  21:  22:  23:  24:  25:  26:  27:  28:  29:  30:  31:  32:  33:  34:  35:  36:  37:  38:  39:  40:  41:  42:  43:  44:  45:  46:  47:  48:  49:  50:  51:  52:  53:  54:  55:  56:  57:  58:  59:  60:  61:  62:  63:  64:  65:  66:  67:  68:  69:  70:  71:  72:  73:  74:  75:  76:  77:  78:  79:  80:  81:  82:  83:  84:  85:  86:  87:  88:  89:  90:  91:  92:  93:  94:  95:  96:  97:  98:  99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 
<?php

/**
 * @link                : http://www.loginradius.com
 * @category            : CustomerRegistration
 * @package             : CustomObjectAPI
 * @author              : LoginRadius Team
 * @license             : https://opensource.org/licenses/MIT
 */

namespace LoginRadiusSDK\CustomerRegistration\Account;

use LoginRadiusSDK\Utility\Functions;

/**
 * Class CustomObjectAPI
 *
 * This is the main class to communicate with LoginRadius Custom Object APIs.
 */
class CustomObjectAPI
{

    /**
     *
     * @param type $apikey
     * @param type $apisecret
     * @param type $options
     */
    public function __construct($apikey = '', $apisecret = '', $options = array())
    {
        new Functions($apikey, $apisecret, $options);
    }

    /**
     * This API is used to create custom objects.
     *
     * @param $uid='xxxxxx';//// UID, the identifier for each user account
     * @param $object_name= 'xxxxxxxxxxxx';//LoginRadius Custom Object name
     * @param $data='{"objectdata":"field1"}';
     * @return type
     */
    public function insert($uid, $object_name, $data, $fields = '*')
    {
        return $this->apiClientHandler($uid . '/customObject/', array('ObjectName' => $object_name, 'fields' => $fields), array('method' => 'POST', 'post_data' => $data, 'content_type' => 'json'));
    }

    /**
     * This API is used to retrieve the Custom Object for the specified account based on the account ID(UID).
     *
     * @param $uid='xxxxxx';//// UID, the identifier for each user account
     * @param $object_name= 'xxxxxxxxxxxx';//LoginRadius Custom Object name
     * @return type
     */
    public function getObjectByAccountid($uid, $object_name, $fields = '*')
    {
        return $this->apiClientHandler($uid . '/customObject/', array('ObjectName' => $object_name, 'fields' => $fields));
    }

    /**
     * This API is used to update  the Custom Object for the specified account based on the record ID($object_record_id).
     *
     * @param $uid='xxxxxx';//// UID, the identifier for each user account
     * @param $object_name= 'xxxxxxxxxxxx';//LoginRadius Custom Object name
     * @param $object_record_id='xxxxxxxxx';//Unique identifier of the user's record in Custom Object
     * @param $update_type='xxxxxxxxx';
     * @param $data='{
     * "field1": "Store my field1 value",
     * "field2": "Store my field2 value"
     * }';
     * @return type
     */
    public function updateObjectByRecordID($uid, $object_name, $object_record_id, $update_type, $data, $fields = '*')
    {
        return $this->apiClientHandler($uid . '/customObject/' . $object_record_id, array('ObjectName' => $object_name, 'updatetype'=> $update_type, 'fields' => $fields), array('method' => 'PUT', 'post_data' => $data, 'content_type' => 'json'));
    }

    /**
     * This API is used to retrieve the Custom Object for the specified account based on the record ID($object_record_id).
     *
     * @param $uid='xxxxxx';//// UID, the identifier for each user account
     * @param $object_name= 'xxxxxxxxxxxx';//LoginRadius Custom Object name
     * @param $object_record_id='xxxxxxxxx';//Unique identifier of the user's record in Custom Object
     * @return type
     */
    public function getObjectByRecordID($uid, $object_name, $object_record_id, $fields = '*')
    {
        return $this->apiClientHandler($uid . '/customObject/' . $object_record_id, array('ObjectName' => $object_name, 'fields' => $fields));
    }

    /**
     * This API is used to remove the specified Custom Object based on the account ID(UID).
     *
     * @param $uid='xxxxxx';//// UID, the identifier for each user account
     * @param $object_name= 'xxxxxxxxxxxx';//LoginRadius Custom Object name
     * @param $object_record_id='xxxxxxxxx';//Unique identifier of the user's record in Custom Object
     * @return type
     */
    public function delete($uid, $object_name, $object_record_id, $fields = '*')
    {
        return $this->apiClientHandler($uid . '/customObject/' . $object_record_id, array('ObjectName' => $object_name, 'fields' => $fields), array('method' => 'DELETE', 'post_data' => true));
    }

    /**
     * Custom Object API handler
     *
     * @param type $path
     * @param type $query_array
     * @param type $options
     * @return type
     */
    private function apiClientHandler($path, $query_array = array(), $options = array())
    {
        return Functions::apiClient("/identity/v2/manage/account/" . $path, $query_array, array_merge(array('authentication' => 'secret'), $options));
    }
}
API documentation generated by ApiGen