Janrain provides access to advanced features through a RESTful web API that requires only the ability to post HTTP requests and parse XML or JSON responses. You can use these requests to retrieve contact data, map an identity to multiple accounts, gain access to analytics, and more. The RESTful format allows you to communicate with your application, and relay the results to your own site.

Janrain also uses RESTful APIs for user authentication.

Note:  Our RESTful API supports both POST and GET methods, but for security reasons, POST should be used.

Capture

Capture - Clients
Resource Description
POST/clients/addAdd a new client to Capture.  Once created, your new client will have access to the Capture API, an...
POST/clients/clear_whitelistClear the IP whitelist for a target client, resetting it to the default value that allows all IP add...
POST/clients/deleteDelete a client from Capture. Only the 'owner' client may make this API call....
POST/clients/listGet a list of the clients in your Capture application, optionally filtered by client feature. Only t...
POST/clients/set_descriptionChange the description of a client. This can also be thought of as the "name" of the client. This...
POST/clients/set_featuresChange the features that a target client has by overwriting the old feature list. This API call may ...
POST/clients/set_whitelistChange the IP whitelist for a target client, overwriting the previous whitelist. Only the 'owner' cl...
Capture - Entity
Resource Description
POST/entityRetrieve a single entity (and any nested objects). Validating User Passwords The entity...
POST/entity.adoptThis call adopts an orphaned plural element into a parent plural. Orphaned plural elements do not be...
POST/entity.bulkCreateCreate multiple new data records of a specific entityType in a single API call. If the requ...
POST/entity.countCount the number of records in an entityType....
POST/entity.createCreate a new data record for an entityType. Once created, Capture returns the new id...
POST/entity.deleteDelete a single entity (and any nested objects) from an application, or delete an element of a plura...
POST/entity.bulkDeleteUsed to select, and delete a range of records. A set of operators are used to build a query which is...
POST/entity.findRetrieve user information from an application. These data entities are returned in JSON format. This...
POST/entity.purgeUse entity.purge to both permanently delete all entities in the specified entityType...
POST/entity.replaceReplace part of an entity with a value. Any object attributes that you do not spec...
POST/entity.updateUpdates part of an existing entity by appending attributes with data. This data is provided in a JSO...
Capture - OAuth
Resource Description
POST/oauth/auth_nativeUse this call for standard, mobile, native authorization. This call necessarily refers to a flow. If...
POST/oauth/auth_native_traditionalUse this call to create a traditional username and password-type, sign-in process for mobile applica...
POST/oauth/forgot_password_nativeThis call's behavior is determined primarily by your flow and the form parameter you pass i...
POST/oauth/link_account_nativeUse this call to link user accounts. Flow Name and Flow Version The locale, ...
POST/oauth/register_nativeThis is the second step in two-step registration. You must have previously called auth_native...
POST/oauth/register_native_traditionalThis call creates a new user. This call necessarily refers to a flow. If you do not use the optional...
POST/oauth/tokenExchange an authorization code for an access_token. There are two ways to authenticate C...
POST/oauth/verify_email_nativeThis call's behavior is determined primarily by your flow and the form parameter you pass i...
Capture - Settings
Resource Description
POST/settings/deleteDelete a key from the settings for a particular client. Returns a Boolean indicating whether the key...
POST/settings/delete_defaultDelete a key from the application-wide default settings. Returns a Boolean indicating whether the ke...
POST/settings/getGet the value associated with a key for a particular client_id. If the key has no value for...
POST/settings/get_multiLook up multiple keys. Each value is retrieved, as in the settings/get command, by first lo...
POST/settings/itemsGet all settings for a particular client, including those from the application-wide default settings...
POST/settings/keysGet all keys for a particular client, including those from the application-wide default settings. Re...
POST/settings/setAssign a key-value pair for a particular client_id. If the key does not exist, it will be c...
POST/settings/get_defaultGet the default value of a key for the current application. Returns the value of the key, or null if...
POST/settings/set_defaultSet the application-wide default value for a key. This will create a new key with a default value, ...
POST/settings/set_multiAssign multiple settings for a particular client_id. Returns a JSON object in which each ke...
Capture - Versions
Resource Description
POST/versions/entityRetrieve a past value of single entity by primary key and timestamp. The example below s...
POST/versions/entityTypeRetrieve a past schema of an entityType by timestamp. Formatting the 'timesta...
Capture - Access Codes and Tokens
Resource Description
POST/access/getAccessTokenThis API call retrieves an accessToken for signing in to an application....
POST/access/getAuthorizationCodeGet an authorization code that can be exchanged for an access_token and a refresh_token...
POST/access/getCreationTokenGets a creation token which can be used to make API calls without the use of a client id and secret....
POST/access/getVerificationCodeGets a verification code that can later be used with useVerificationCode. The useVerifi...
POST/access/useVerificationCodeUses a verification code to set a time field to the current time. Any particular verification code c...
Capture - Webhooks
Resource Description
POST/webhooks/addThis is used to add and configure a webhook. Once this RESTful call is successfully made, the attrib...
POST/webhooks/deleteThis deletes a webhook. ...
POST/webhooks/findThis returns the configuration of a specific webhook....
POST/webhooks/listReturns a list of all the configured webhooks associated with an installation of Capture....
POST/webhooks/updateThis updates an existing webhook. Values passed in the parameters overwrite the current configuratio...
Capture - EntityType
Resource Description
POST/entityTypeReturn a JSON representation of an existing entityType....
POST/entityType.addAttributeAdds an attribute to an existing entityType. This adds that attribute to all objects of tha...
POST/entityType.addRuleThis call creates rules for user data validation on specific attributes in your schema. User dat...
POST/entityType.createCreate a new entityType with the specified set of attributes. EntityType JSON Struct...
POST/entityType.getAccessSchemaRetrieve the access schema for a particular client. An access schema defines the subset of attribut...
POST/entityType.listReturn a JSON representation of all entityTypes....
POST/entityType.removeAttributeRemove an existing attribute from an entityType. Warning: All data asso...
POST/entityType.removeRuleThis removes any data validation currently configured for a specific attribute in a schema. For a...
POST/entityType.rulesThis lists the data validation rules that are currently set on a specific entityType. Each ...
POST/entityType.setAccessSchemaSet the access schema for a particular client. An access schema defines the subset of attributes to ...
POST/entityType.setAttributeConstraintsSet the list of constraints for an attribute. Warning: This is not an additive o...

Engage

Resource Description
POST/add_or_update_access_tokenAdds or updates an OAuth access_token for a user outside the usual Engage sign-in flow. ...
POST/analytics_accessThe analytics_access call returns the analytic data from your application. This can be auto...
POST/auth_infoThis call is used to authenticate users for Engage. You must use https to make thi...
POST/get_app_settingsEnables you to make API calls to get the following application properties (from the application sett...
POST/get_available_providersReturns a list of configured providers for an application. The ...
POST/get_contactsThe get_contacts call uses the apiKey and identifier to return a list of ...
POST/get_user_dataUse the get_user_data call to obtain an up-to-date copy of a user's profile as previously r...
POST/providersThis call returns a list of configured sign-in or social providers configured for a widget. ...
POST/set_app_settingsEnables you to make API calls to set the following application properties (from the application sett...
POST/set_auth_providersUse set_auth_providers to define the list of identity providers provided by the Engage serv...
Engage - Mapping
Resource Description
POST/all_mappingsThe all_mappings call returns all of the stored mappings of an application, which is identi...
POST/mapUse the map to associate a primary key with a user's social identity. Note...
POST/mappingsThe mappings call returns all the stored Identity Providers associated with a particular user's prim...
POST/unmapUnmapping removes an Identity Provider from a primary key as well as allowing you to optionally unli...
Engage - Sharing
Resource Description
POST/sharing/broadcastThe broadcast call shares activity information directly with a provider. The information pr...
POST/sharing/directThis API shares activity information directly with the specified recipients on a provider's networ...
POST/get_share_countReturns the number of a times a given URL has been shared....
POST/get_share_providersNote: This API call works only with the current Sharing widget. It returns a lis...
POST/set_share_providersUse set_share_providers to define the providers offered by the new ...
Engage - Configure RP
Resource Description
POST/add_domain_patternsUse the add_domain_patterns call to append domains to the current whitelist for an applicat...
POST/get_backplane_propertiesUse this call for Backplane Protocol enabled widgets only. For more information on updating widgets ...
POST/get_domain_patternsUse this call to return a list of all domains currently whitelisted for an application....
POST/lookup_rpWe provide the lookup_rp call to help developers integrate Janrain Engage into your plugin....
POST/set_backplane_propertiesThe set_backplane_properties call configures the Backplane server used to communicate with ...
POST/set_domain_patternsUse the set_domain_patterns call to replace the current whitelist for an application....
Engage - Legacy Sharing
Resource Description
POST/activityThis is a legacy call, and should only be used with existing ...
POST/auth_infosThis is a legacy call, and should only be used with existing ...
POST/set_statusThis is a legacy call, and should only be used with existing ...

Partner

Resource Description
POST/app/add_bp_busThis call creates a bus owner and password, and a new Backplane bus with the new owner the owner of ...
POST/appsThis call lists all applications managed by a partner. This constitutes one "parent" RP and some num...
Partner - Admin
Resource Description
POST/admin/addThis call adds an administrator user to the RP. Note: Multiple user entities can...
POST/admin/deleteThis call deletes an admin user on an RP. Note: The API call will not delete an ...
POST/admin/getThis call returns all admin users currently assigned to the RP. It also lists the email associated w...
Partner - App
Resource Description
POST/app/add_domainThis call adds a domain to an existing Engage application....
POST/app/createThis call creates a new Engage application. You can use the new application immediately for authenti...
POST/app/create_inviteThis call generates an email invitation for administrative access to an existing application....
POST/app/deleteThis call deletes an existing Engage application. This operation completely destroys the Engage appl...
POST/app/get_pending_invitesThis API call is deprecated. Please use the ...
POST/app/get_propertiesThis call returns a list of the configured properties for an Engage application. You can use this in...
POST/app/get_provider_permissionsThis call returns an Engage application’s permissions for a provider, as set with the set_prov...
POST/app/reset_api_keyThis call resets the API key for a given partner RP application....
POST/app/set_propertiesThis call configures Engage application properties for a given application. Use this function to bin...
POST/app/set_provider_permissionsThis call sets an Engage application’s permissions for a provider. The permissions that you can se...
POST/app/verify_domainThis function automates the server-side component of the provider-specific domain verification mecha...

Help Us Improve!

Give us your feedback