User/List

List all users for a brand using the search criteria below. Max results 300.

Provide a 'user_id' to also return the users login history.

Parameters
Parameter Type Required Description
user_id string optional Specify a 'user_'id' to retrieve a specific users details.
customer_account_id string optional Specify to find users connected to a specific 'customer_account_id'.
email_address string optional The email address connected to the user.
username string optional Search for part of or a full username.
custom_field_1 string optional The value of 'custom_field_1' or a portion of it if supplied.
custom_field_2 string optional The value of 'custom_field_2' or a portion of it if supplied.
GET https://api.recurringstack.com/{format}/User/List
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('user_id' => "",'customer_account_id' => "",'email_address' => "",'username' => "",'custom_field_1' => "",'custom_field_2' => "");
try { $response = $rstack->request('User/List','GET',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/Create

Create a new user connected to a customer account.

A user is created automatically when the account is created using the 'Account/Create' service, use this endpoint to create additional users.

Parameters
Parameter Type Required Description
customer_account_id string required The 'customer_account_id' you want to create the username under.
first_name string required The users first name.
last_name string required The users last name.
email_address string required The users email address; must be unique on the customer account.
phone_number_country_code string optional The country code for the users phone number.
phone_number string optional The users phone number.
password string optional The users new password; leave blank to generate a random password.
access_level string required 'ADMIN' and 'USER' are valid options. Only ADMINs can make a new ADMIN and only an ADMIN can create; edit; or assign IAM profiles.
custom_field_1 string optional A csutom value you want to store for your records.
custom_field_2 string optional A custom value you want to store for your records.
locale string required The language for the user; for acceptable values utilize the 'Reference/List' endpoint.
timezone_id string required The timezone for the customer account. Utilize the 'Reference/List' service to find acceptable values.
avatar_uri string optional Provide the web address to a gif; jpg; jpeg; or png to use as the users profile avatar.
send_new_user_email string required Specify a Y or N to send the new user email template. This email contains the initial password if password is left blank.
POST https://api.recurringstack.com/{format}/User/Create
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('customer_account_id' => "",'first_name' => "",'last_name' => "",'email_address' => "",'phone_number_country_code' => "",'phone_number' => "",'password' => "",'access_level' => "",'custom_field_1' => "",'custom_field_2' => "",'locale' => "",'timezone_id' => "",'avatar_uri' => "",'send_new_user_email' => "");
try { $response = $rstack->request('User/Create','POST',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/Update

Update an existing user profile. Only provide the parameters you wish to update.

If password is updated it will NOT be returned in the response for security reasons.

Parameters
Parameter Type Required Description
user_id string required The 'user_id' you want to update.
first_name string optional The users first name.
last_name string optional The users last name.
email_address string optional The users email address; must be unique on the customer account.
phone_number_country_code string optional The country code for the users phone number.
phone_number string optional The users phone number.
password string optional Provide a new value to update the users password.
access_level string required 'ADMIN' and 'USER' are valid options. Only ADMINs can make a new ADMIN and only an ADMIN can create; edit; or assign IAM profiles.
custom_field_1 string optional A csutom value you want to store for your records.
custom_field_2 string optional A custom value you want to store for your records.
avatar_uri string optional Provide the web address to a gif; jpg; jpeg; or png to use as the users profile avatar.
locale string optional The language for the user; for acceptable values utilize the 'Reference/List' endpoint.
timezone_id string optional The timezone for the customer account. Utilize the 'Reference/List' service to find acceptable values.
verified string optional For use with your two step verification system; specify a Y or N to set the account as verified.
PATCH https://api.recurringstack.com/{format}/User/Update
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('user_id' => "",'first_name' => "",'last_name' => "",'email_address' => "",'phone_number_country_code' => "",'phone_number' => "",'password' => "",'access_level' => "",'custom_field_1' => "",'custom_field_2' => "",'avatar_uri' => "",'locale' => "",'timezone_id' => "",'verified' => "");
try { $response = $rstack->request('User/Update','PATCH',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/Suspend

Suspend a user and place the 'user_id' in suspended status.

Status Ledger:
1 - Active
2 - Suspended
3 - Deleted

Parameters
Parameter Type Required Description
user_id string required The 'user_id' you want to suspend.
PATCH https://api.recurringstack.com/{format}/User/Suspend
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('user_id' => "");
try { $response = $rstack->request('User/Suspend','PATCH',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/Delete

Delete a specific user or 'user_id'.

Status Ledger:
1 - Active
2 - Suspended
3 - Deleted

Parameters
Parameter Type Required Description
user_id string required The 'user_id' you want to delete.
PATCH https://api.recurringstack.com/{format}/User/Delete
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('user_id' => "");
try { $response = $rstack->request('User/Delete','PATCH',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/Restore

Restore a user from suspended or deleted.

Status Ledger:
1 - Active
2 - Suspended
3 - Deleted
Deleted users can be restored up to 90 days after being deleted, after which the deletion becomes permanent.

Parameters
Parameter Type Required Description
user_id string required The 'user_id' you want to restore.
PATCH https://api.recurringstack.com/{format}/User/Restore
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('user_id' => "");
try { $response = $rstack->request('User/Restore','PATCH',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/Authenticate

Authenticate a user as part of a sign in process.

The user will be returned with an additional 'authenticated' namespace with the 'Y' value if authentication is successful.
Either 'email_address' or 'username' is required.

Parameters
Parameter Type Required Description
email_address string optional The 'email_address' of the user. Must be provided if 'username' is not provided.
username string optional The 'username' of the user. Must be provided if 'email_address' is not provided.
password string optional The customers plain text password. Required if 'override_password_requirement' is not set to 'Y'.
override_password_requirement string optional Provide a 'Y' to authenticate the user without the password. This is useful for third party sign in services where the users email address has already been authenticated. 'email_address' must be supplied (will not work with 'username' only).
ip_address string optional Provide the users IP address to record it in the login history.
url string optional Provide the Url where the user is signing in from to store it in the login history.
temporary_token string optional Obtained from the 'User/OAuthAuthenticate' service. If provided email_address; username; or password should not be provided.
POST https://api.recurringstack.com/{format}/User/Authenticate
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('email_address' => "",'username' => "",'password' => "",'override_password_requirement' => "",'ip_address' => "",'url' => "",'temporary_token' => "");
try { $response = $rstack->request('User/Authenticate','POST',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/2FARequest

Send a two factor authentication (2FA) verification code via SMS, phone call, or email. 'SMS' and 'call' 2FA request may carry an additional fee.

If sending a 2FA verification code via email the 'User/2FARequest' notification must be previously configured.
After a 2FA request is submitted you'll utilize the '2FAVerify' service to verify the code sent to the customer either via email, SMS, or phone call. Once the code has been verified the <last_phone_verification_date> or <last_email_verification_date> will be updated on the user profile. You can compare these dates to the current date on your platform to determine the next time to initiate a 2FA request for a user.

Parameters
Parameter Type Required Description
verification_user_id string required The 'user_id' you want to start the verification process for.
verification_method string required Acceptable values are 'email'; 'sms'; or 'call'.
POST https://api.recurringstack.com/{format}/User/2FARequest
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('verification_user_id' => "",'verification_method' => "");
try { $response = $rstack->request('User/2FARequest','POST',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/2FAVerify

Verify a users identity; email address; or phone number using the verification code sent via the 'User/2FARequest' notification. If verification is successful the users details will be returned with the 'authenticated' namespace set to 'Y'.

Error messages generated by this service are catered towards the end user.

Parameters
Parameter Type Required Description
verification_user_id string required The 'user_id' you wish to verify. This should be the same 'user_id' supplied when calling the 'User/2FA' service.
verification_code string required The 35 character (for email verification) or 6 digit code for SMS verification.
verification_method string required Acceptable values are 'email'; 'sms'; or 'call'.
force_verification string optional Provide a value of 'Y' to force verification without a correct 'verification_code'.
POST https://api.recurringstack.com/{format}/User/2FAVerify
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('verification_user_id' => "",'verification_code' => "",'verification_method' => "",'force_verification' => "");
try { $response = $rstack->request('User/2FAVerify','POST',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/PasswdReset

This service will send a temporary password good for one hour to the users e-mail address.

The 'User/PasswdReset' notification must be setup to utilize this service.
One of 'email_address' or 'username' is required, not both.

Parameters
Parameter Type Required Description
email_address string optional The 'email_address' of the user you wish to reset the password for.
username string optional The 'username' of the user you wish to reset the password for.
POST https://api.recurringstack.com/{format}/User/PasswdReset
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('email_address' => "",'username' => "");
try { $response = $rstack->request('User/PasswdReset','POST',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/CreateToken

This service allows you to create a temporary token that can be used with the 'User/Authenticate' service allowing you to bypass the username and password requirement.



A temporary link for the user to sign in to the Customer Facing Portal (CFP) without using their credentials will also be generated. Utilize this link if for example your customer is already signed in to an existing app and you'd like to direct them to the CFP for account management from within that app using either a button or link.

Parameters
Parameter Type Required Description
customer_account_id string required The 'customer_account_id' of the user.
user_id string required The 'user_id' of the user you wish to create a login link for.
expiration string optional Provide a expiration for the link in minutes. If none is provided the default of 1 minute will be utilized; the maximum expiration minutes is 10.
cfp_redirect string optional Provide a location in the Customer Facing Portal (CFP) to redirect the user when using the cfp_link. To redirect a user to the subscribe flow for example provide the value 'subscribe'.
POST https://api.recurringstack.com/{format}/User/CreateToken
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('customer_account_id' => "",'user_id' => "",'expiration' => "",'cfp_redirect' => "");
try { $response = $rstack->request('User/CreateToken','POST',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

User/OAuthAuthenticate

Creates a link allowing an end-user to sign in or create a new account with a third party identity service. Currently, Facebook and Google are supported identity providers.

Upon successful authentication the end-user will be redirected to your 'redirect_uri' with a 'temporary_token' appended to the url. You can call the 'User/Authenticate' service with the 'temporary_token' to retreive the users account details.

Users are considered having an existing account when their authenticated email address matches the email address associated with the user.
Errors are appended to your 'failure_url' in the following format "failure_url?error=The error here"

Parameters
Parameter Type Required Description
identity_service string required Specifiy one of the supported identity services (valid options are google or facebook)
redirect_uri string required A fully qualified domain name where the user should be redirected after successful authentication with the identity service. The 'temporary_token' will be appended to the end of the url.
failure_uri string required A fully qualified domain name where the user should be redirected if authentication fails or the end-user cancels the process.
create_if_not_exists string required Wether a new account should be created for the authenticated user if one does not curently exist; essentialy allowing 'sign up' with a third party identity provider. Valid options are either 'Y' or 'N'.
POST https://api.recurringstack.com/{format}/User/OAuthAuthenticate
//key,user_key,brand_id,response_format (xml or json),return (clean = return object, leave blank to return raw)
$rstack = new recurringstack('','','','xml','clean'); 

$params = array('identity_service' => "",'redirect_uri' => "",'failure_uri' => "",'create_if_not_exists' => "");
try { $response = $rstack->request('User/OAuthAuthenticate','POST',$params); } catch(Exception $e) { $error =  $e->getMessage(); echo "Error: $error"; }
print_r($response);
Response

Your content here

Lorem ipsum dolor sit amet consectetur adipisicing elit. Qui, natus temporibus voluptate corporis possimus ab aut cumque.

Homepage

Quick Tips

You may remove all ID or Class names which contain _dm-, they are only used for demonstration.


Boxed Layout

Fluid Layout Remove the .boxed-layout and .centered-layout classes from the body.
Centered Layout Add a class .centered-layout to the body.
Boxed Layout Add a class .boxed-layout to the body.
Boxed Layout with background image

Add background image to the body.

<body class="boxed-layout" style='background-image: url("path_to_img/image.jpg");'>
    ..
    ..
</body>

Or it could be in your own class.

.bg-img {
background-image: url("path_to_img/image.jpg");
}
<body class="boxed-layout bg-img">
    ..
    ..
</body>

Color Schemes

Replace the current Bootstrap CSS and Nifty CSS path with the new path of the CSS color schemes you wish to use.

This is where you can change the color scheme of your app / website.

<head>
    ...
    <title>My Project</title>
    ...

    <!-- STYLESHEETS -->
    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~--- -->

    <!-- Bootstrap CSS [ REQUIRED ] -->
    <link rel="stylesheet" href="documentation/assets/css/color-schemes/SELECTED-SCEHEMS/bootstrap.min.css">

    <!-- Nifty CSS [ REQUIRED ] -->
    <link rel="stylesheet" href="documentation/assets/css/color-schemes/SELECTED-SCEHEMS/nifty.min.css">

</head>

Header

Sticky header Add a class .hd--sticky to the #root.
Expanded header Add a class .hd--expanded to the #root.
Expanded header with overlapping content. Add a class .overlapping to the #content > .content__header.
Disable rounded header. Add a class .rounded-0 to the #content > .content__header.

Animations

Add the following class to the body to change the animation transition.

Transition function name Class name
In Quart .in-quart
Out Quart .out-quart
In Back .in-back
Out Back .out-back
In Out Back .in-out-back
easeInOutBack .easeInOutBack
steps .steps
jumping .jumping
rubber .rubber
RecurringStack Documentation
RecurringStack Docs
Sign In

Background Images

Add an image to replace the solid background color
Layouts
Layouts
Transitions
Header
Additional Offcanvas New in BS v.5.0

Select the offcanvas placement.

Sidebars
Navigation
Right sidebar
Color Schemes
Light Completely bright color themes.
Dark Completely dark color themes.
Expanded Header
Fair Header
Full Header
Primary Nav
Brand
Tall Header New in v3.0
Scrollbars

Hides native scrollbars and creates custom styleable overlay scrollbars.

Offcanvas Header
Content Here

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sapiente eos nihil earum aliquam quod in dolor, aspernatur obcaecati et at. Dicta, ipsum aut, fugit nam dolore porro non est totam sapiente animi recusandae obcaecati dolorum, rem ullam cumque. Illum quidem reiciendis autem neque excepturi odit est accusantium, facilis provident molestias, dicta obcaecati itaque ducimus fuga iure in distinctio voluptate nesciunt dignissimos rem error a. Expedita officiis nam dolore dolores ea. Soluta repellendus delectus culpa quo. Ea tenetur impedit error quod exercitationem ut ad provident quisquam omnis! Nostrum quasi ex delectus vero, facilis aut recusandae deleniti beatae. Qui velit commodi inventore.