/castle-php

PHP library for Castle

Primary LanguagePHPMIT LicenseMIT

Latest Stable Version Total Downloads License

Build Status Code Climate Coverage Status

PHP SDK for Castle

Castle adds real-time monitoring of your authentication stack, instantly notifying you and your users on potential account hijacks.

Getting started

Obtain the latest version of the Castle PHP bindings with:

git clone https://github.com/castle/castle-php

To get started, add the following to your PHP script:

require_once("/path/to/castle-php/lib/Castle.php");

Configure the library with your Castle API secret.

Castle::setApiKey('YOUR_API_SECRET');

Errors

Whenever something unexpected happens, an exception is thrown to indicate what went wrong.

Name Description
Castle_Error A generic error
Castle_RequestError A request failed. Probably due to a network error
Castle_ApiError An unexpected error for the Castle API
Castle_SecurityError The session signature doesn't match, either it has been tampered with or the Castle API key has been changed.
Castle_ConfigurationError The Castle secret API key has not been set
Castle_UnauthorizedError Wrong Castle API secret key
Castle_ChallengeRequiredError You need to prompt the user for Two-step verification
Castle_BadRequest The request was invalid. For example if a challenge is created without the user having MFA enabled.
Castle_ForbiddenError The user has entered the wrong code too many times and a new challenge has to be requested.
Castle_NotFoundError The resource requestd was not found. For example if a session has been revoked.
Castle_UserUnauthorizedError The user is locked or has entered the wrong credentials
Castle_InvalidParametersError One or more of the supplied parameters are incorrect. Check the response for more information.