loading

Identity Cloud: Configuration API v2

Implements login, registration, and profile management in your registration experience.

Learn more:


Overview

The Configuration API is a self-service tool for implementing login, registration, and profile management in your Registration experience. The endpoints detailed in this section of the documentation deal primarily with the flow: managing such things as fields, forms, screens, and translations. Another portion of the Configuration API is used for managing API clients and applications, while a third section is devoted to returning information about your user profile schemas (entity types).

Clients and Settings API

The Clients and Settings APIs are primarily used to manage your API clients (also known as “properties”). For example, these endpoints enable you to do such things as:

  • Create new API clients

  • Delete existing API clients

  • Modify the settings and permissions assigned to your API clients at either the global scope or the local (individual client) scope

In addition, several of the endpoints in this collection can be used to return information about your entity types (user databases).

The new clients and settings endpoints supersede the previous collection of clients and settings endpoints. The previous endpoints (now referred to as the “legacy” Clients and Settings API) remain valid. However, we strongly recommend that, if at all possible, you use the new Clients and Settings APIs detailed here.

Incidentally, there are at least two reasons. For one, the new Clients and Settings APIs adhere to the RESTful API standards. That wasn’t always true for the legacy APIs. For another, the new APIs are part of the Configuration API (CAPI). Eventually, CAPI will provide consistency across all the Identity Cloud APIs: regardless of the API or the endpoint, you’ll use the same authentication method, employ the same request and response formats, see the same error messages, etc. Switching to the new Clients and Settings APIs now will give you a head-start when additional CAPI APIs are released in the future.

Accessing the Configuration API endpoints

The Configuration API uses the following endpoint URL syntax:

https://{app_domain}.janrain.com/config/{app}/{endpoint}

To access your Configuration API endpoints, replace {app_domain} with your Identity Cloud API domain, replace {app} with your application ID, and replace {endpoint} with the appropriate endpoint. For example:

https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/clients

Authentication

The Configuration API requires Basic authentication. To create an authentication string, combine your API client ID, a colon (:), and your client secret into a single value. For example, if your client ID is abcdefg and your client secret is hijklmnop, that value would look like this:

abcdefg:hijklmnop

Next, take the newly created string and base64 encode it. For example, on a Mac, you can base encode the string using this command:

echo -n "abcdefg:hijklmnop" | base64

Or, if you’re running Microsoft Windows, you can encode the string by using a Windows PowerShell command similar to this:

[Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes("abcdefg:hijklmn"))

The resulting value (e.g., YWJjZGVmZzpoaWprbG1ub3A=) should be used in your authentication header.

If you are making API calls using Postman, select Basic Auth as your identification type, then use the client ID as the username and the client secret as the password.

Resources

This section provides details on the API’s various operations.

API summary

Download the RAML descriptors for this API.

Operation Method Endpoint
Clients  
Get permissions and metadata for all your API clients GET /api/v2/config/{app_id}/clients
Create an API client POST /api/v2/config/{app_id}/clients
Get permissions and metadata for an API client GET /api/v2/config/{app_id}/clients/{client_id}
Update permissions and metadata for an API client PUT /api/v2/config/{app_id}/clients/{client_id}
Delete an API client DELETE /api/v2/config/{app_id}/clients/{client_id}
Reset an API client secret PUT /api/v2/config/{app_id}/clients/{client_id}/secret
Get settings for an API client GET /api/v2/config/{app_id}/clients/{client_id}/settings
Modify API client settings PUT /api/v2/config/{app_id}/clients/{client_id}/settings
Settings  
Get information about available API client settings GET /api/v2/config/{app_id}/settings
Get global settings for an application GET /api/v2/config/{app_id}/settings/options
Entity Types  
Get information about all your entity types GET /api/v2/config/{app_id}/entityTypes
Get information about a specific entity type GET /api/v2/config/{app_id}/entityTypes/{entity_type}
Get information about an entity type’s attributes GET /api/v2/config/{app_id}/entityTypes/{entity_type}/attributes
Get information about the specified entity type attribute GET /api/v2/config/{app_id}/entityTypes/{entity_type}/attributes/{attribute_name}
Flows  
Get information about your flows GET /api/v2/config/{app_id}/flows
Get information about a specific flow GET /api/v2/config/{app_id}/flows/{flow}
Modify a flow PUT /api/v2/config/{app_id}/flows/{flow}
Copy a flow POST /api/v2/config/{app_id}/flows/{flow}/copy
Get information about the fields defined in a flow GET /api/v2/config/{app_id}/flows/{flow}/fields
Add a field to a flow POST /api/v2/config/{app_id}/flows/{flow}/fields
Get information about a specific field on a specific flow GET /api/v2/config/{app_id}/flows/{flow}/fields/{field}
Modify a field on a flow PUT /api/v2/config/{app_id}/flows/{flow}/fields/{field}
Remove a field from a flow DELETE /api/v2/config/{app_id}/flows/{flow}/fields/{field}
Get information about the forms referenced in a flow GET /api/v2/config/{app_id}/flows/{flow}/forms
Get information about the fields used by a form GET /api/v2/config/{app_id}/flows/{flow}/forms/{form}
Modify the fields used on a form PUT /api/v2/config/{app_id}/flows/{flow}/forms/{form}
Get information about the available locales GET /api/v2/config/{app_id}/flows/{flow}/locales
Get translation values GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}
Get information about the fields available for the specified flow GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/fields
Add a translatable field to a flow POST /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/fields
Get a translated field from a flow GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/fields/{field}
Modify a translatable field PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/fields/{field}
Get email template information GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates
Get information for a specific email template GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}
Modify an email template PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}
Get the body portion of an email template GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}/body
Modify the body of an email template PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}/body
Get the subject of an email template GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}/subject
Modify the subject of an email template PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}/subject
List available strings per locale GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings
Create a string per locale POST /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings
Get information for string GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings/{string}
Modify a string per locale PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings/{string}
Delete a string per locale DELETE /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings/{string}
Promote a flow POST /api/v2/config/{app_id}/flows/{flow}/promote
List available screens GET /api/v2/config/{app_id}/flows/{flow}/screens
Get information about a screen GET /api/v2/config/{app_id}/flows/{flow}/screens/{screen}
Modify a screen PUT /api/v2/config/{app_id}/flows/{flow}/screens/{screen}
List available strings GET /api/v2/config/{app_id}/flows/{flow}/strings
Create a string POST /api/v2/config/{app_id}/flows/{flow}/strings
Get information about a string GET /api/v2/config/{app_id}/flows/{flow}/strings/{string}
Modify a string PUT /api/v2/config/{app_id}/flows/{flow}/strings/{string}
Delete a string DELETE /api/v2/config/{app_id}/flows/{flow}/strings/{string}
Get available translations GET /api/v2/config/{app_id}/flows/{flow}/translations
Create a translation POST /api/v2/config/{app_id}/flows/{flow}/translations
Update a Translation PATCH /api/v2/config/{app_id}/flows/{flow}/translations
Get translations for a translation key GET /api/v2/config/{app_id}/flows/{flow}/translations/{key}
Delete a translation key DELETE /api/v2/config/{app_id}/flows/{flow}/translations/{key}
List all the versions of a flow GET /api/v2/config/{app_id}/flows/{flow}/versions
Get information for a flow version GET /api/v2/config/{app_id}/flows/{flow}/versions/{version}
Restore a flow POST /api/v2/config/{app_id}/flows/{flow}/versions/{version}

Get permissions and metadata for all your API clients

The /config/{app_id}/clients endpoint enables you to return information about all the API clients associated with an application.

GET /api/v2/config/{app_id}/clients

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/clients

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.

Status 200 application/json

Response body:

[
    {
        "_id": "ay6e3qmucvdyr29hmpvxjdjupe8bcsky",
        "_secret": "9956y4tv342e76nj9zub511ufbned98j",
        "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/ay6e3qmucvdyr29hmpvxjdjupe8bcsky",
        "_settings": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/ay6e3qmucvdyr29hmpvxjdjupe8bcsky/settings",
        "name": "this is a test client",
        "features": [
            "owner"
        ],
        "ipWhitelist": [
            "0.0.0.0/0"
        ]
    },
    {
        "_id": "ed7absqep5rffbmqx89c9mwexqvbnfnk",
        "_secret": "hdyebsdtvj5ujjkijk7tfrf968q63ysk9",
        "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/ed7absqep5rffbmqx89c9mwexqvbnfnk",
        "_settings": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/ed7absqep5rffbmqx89c9mwexqvbnfnk/settings",
        "name": "Default Login Client",
        "features": [
            "login_client"
        ],
        "ipWhitelist": [
            "0.0.0.0/0"
        ]
    },
    {
        "_id": "nhjsdtjwvaytevc2w5sx42skggvjn7bu",
        "_secret": "99ijf7ree8vcgrdq3qpppo3cddykjhs",
        "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/nhjsdtjwvaytevc2w5sx42skggvjn7bu",
        "_settings": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/nhjsdtjwvaytevc2w5sx42skggvjn7bu/settings",
        "name": "This is a client description",
        "features": [
            "login_client"
        ],
        "ipWhitelist": [
            "0.0.0.0/0"
        ]
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/clients

Create an API client

Creates a new API client.

POST /api/v2/config/{app_id}/clients

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/clients

Content-Type: application/json

Request body:

{
    "name": "Documentation Client",
    "ipWhitelist": [
        "0.0.0.0/0"
    ],
    "features": [
        "login_client"
    ]
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.

Status 200 application/json

Response body:

{
    "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/3bchk5hsx6v58dkn288nbybmxfyk32u7",
    "name": "Documentation Client",
    "_settings": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/3bchk5hsx6v58dkn288nbybmxfyk32u7/settings",
    "_secret": "55324vxdz3n35hjui77hh2qpoe6dbgs",
    "_id": "3bchk5hsx6v58dkn288nbybmxfyk32u7",
    "ipWhitelist": [
        "0.0.0.0/0"
    ],
    "features": [
        "login_client"
    ]
}

Sample curl request

curl -X POST \
  https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/clients \
  -H 'Authorization: Basic dXQ0YmdycmE3dzI4MmpjZm15cGZxeDlwemhxaGpqMmI6eXk4MmhxdXhnbWt6bWMzcGRoZ3VmdDNwNHluc3R6cjU=' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "Documentation Client",
   "ipWhitelist": ["0.0.0.0/0"],
   "features": ["login_client"]
}'

Get permissions and metadata for an API client

The /config/{app_id}/clients/{client_id} endpoint enables you to: 1) return information for a specific API client; 2) modify permissions for a specific API client; and, 3) delete a specific API client

GET /api/v2/config/{app_id}/clients/{client_id}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/xj2dmg2mqsm6a8gx89cwn3fu929p4pd

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
client_id String xj2dmg2mqsm6a8gx89cwn3fu929p4pd ID of the API client. You can find client IDs on the Console’s Manage Properties page.

Status 200 application/json

Response body:

{
    "_id": "nhjsdtjwvaytevc2w5sx42skggvjn7bu",
    "_secret": "343bf7reecgdskz4q3qphydw3cddy44sr2",
    "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/nhjsdtjwvaytevc2w5sx42skggvjn7bu",
    "_settings": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/nhjsdtjwvaytevc2w5sx42skggvjn7bu/settings",
    "name": "This is a client description",
    "features": [
        "login_client"
    ],
    "ipWhitelist": [
        "0.0.0.0/0"
    ]
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/
    nhjsdtjwvaytevc2w5sx42skggvjn7bu

Update permissions and metadata for an API client

Updates permissions and settings for an existing API client. To update an API client, you must specify the client properties in the request body of your API call.

PUT /api/v2/config/{app_id}/clients/{client_id}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/xj2dmg2mqsm6a8gx89cwn3fu929p4pd

Content-Type: application/json

Request body:

{
    "name": "Documentation Login Client",
    "features": [
        "login_client"
    ]
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
client_id String xj2dmg2mqsm6a8gx89cwn3fu929p4pd ID of the API client. You can find client IDs on the Console’s Manage Properties page.

Status 200 application/json

Object type: Client

Download schema: clients-clientid-put.json

Response body:

{
    "_id": "3bchk5hsx6v58dkn288nbybmxfyk32u7",
    "_secret": "j383npa9g4hfdye9t5es72x8r374tdfh",
    "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/3bchk5hsx6v58dkn288nbybmxfyk32u7",
    "_settings": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/3bchk5hsx6v58dkn288nbybmxfyk32u7/settings",
    "name": "Documentation Login Client",
    "features": [
        "login_client"
    ],
    "ipWhitelist": [
        "0.0.0.0/0"
    ]
}

Sample curl request

curl -X PUT \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/
    2grgd9hc949kg7ehqzwzvjgvhddex3rb \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
     "name": "Documentation Login Client",
     "features": ["login_client"]
}'

Delete an API client

Deletes an existing API client. Your API call must have the owner permission in order to delete a client. Note that you cannot delete any API client that has the owner feature.

DELETE /api/v2/config/{app_id}/clients/{client_id}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/xj2dmg2mqsm6a8gx89cwn3fu929p4pd

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
client_id String xj2dmg2mqsm6a8gx89cwn3fu929p4pd ID of the API client. You can find client IDs on the Console’s Manage Properties page.

Status 204

Sample curl request

curl -X DELETE \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/
    nmub5w3rru9k6rzupqaeb7bbwv6jn658 \
    -H 'Authorization: Basic aW1fYV...NfbXk='

Reset an API client secret

Resets the client secret for an API client. The client secret, for our purposes, is the password for the API client, and should be reset if you believe this secret has been exposed to unauthorized users, if a user who had access to the secret has left your organization, and so on. When resetting a client secret, the request body of your API call must include the hoursToLive property. When you reset a client secret, the new secret takes effect immediately. At the same time, you can allow the old secret to remain in effect for as long as one week (168 hours). (That means that, for the specified amount of time, the API client will have two valid secrets: the old secret and the new secret.) The specified amount of time is dictated by the hoursToLive property, which can be set to any integer value between 0 hours and 168 hours, inclusive. Setting hoursToLive to 0 causes the old secret to expire as soon as the new secret takes effect.

PUT /api/v2/config/{app_id}/clients/{client_id}/secret

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/xj2dmg2mqsm6a8gx89cwn3fu929p4pd/secret

Content-Type: application/json

Request body:

{
    "hoursToLive": "4"
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
client_id String xj2dmg2mqsm6a8gx89cwn3fu929p4pd ID of the API client. You can find client IDs on the Console’s Manage Properties page.

Status 200 application/json

Response body:

{
    "secret": "gd98kuyeg4xegv9t5es72x8r374nhgf"
}

Sample curl request

curl -X PUT \
https://api.datateam.dev.or.janrain.com/config/73jzx34tnr5ruhsze494ssgz2b/clients/
    3bchk5hsx6v58dkn288nbybmxfyk32u7/secret \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
     "hoursToLive": "4"'
}

Get settings for an API client

Returns the settings associated with a specific API client. Client settings, global settings, and custom settings are returned as separate JSON objects. To return settings information for a specified API client, your API call must run with either owner credentials or with the API credentials of the client in question.

GET /api/v2/config/{app_id}/clients/{client_id}/settings

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/xj2dmg2mqsm6a8gx89cwn3fu929p4pd/settings

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
client_id String xj2dmg2mqsm6a8gx89cwn3fu929p4pd ID of the API client. You can find client IDs on the Console’s Manage Properties page.

Status 200 application/json

Object type: ClientMetadata

Download schema: clients-clientid-settings-get.json

Response body:

{
    "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/nhjsdtjwvaytevc2w5sx42skggvjn7bu/settings",
    "default_flow_name": "standard",
    "default_flow_version": "20170915215708415365",
    "email_method": "ses_sync",
    "rpx_app_id": "kbcpdniaklcfajlapmif",
    "rpx_key": "69a70c57f856dcb7a28f672fc0c8e8556c1e3672",
    "rpx_realm": "capture",
    "site_name": "New Test Site",
    "_global": {
        "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/settings",
        "cache_settings": 0,
        "default_flow_name": "standard",
        "default_flow_version": "20170915215708415365",
        "email_method": "ses_sync",
        "password_recover_url": "https://documentation.akamai.com/#/passwordReset",
        "rpx_app_id": "kbcpdniaklcfajlapmif",
        "rpx_key": "69a70c57f856dcb7a28f672fc0c8e8556c1e3672",
        "rpx_realm": "capture",
        "site_name": "https://documentation.akamai.com"
    },
    "custom": {}
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/73jzx34tnr5ruhsze494ssgz2b/clients/
    nhjsdtjwvaytevc2w5sx42skggvjn7bu/settings

Modify API client settings

Modifies the client settings associated with a specific API client. This endpoint can be used to: 1) add new client settings; 2)modify existing client settings; 3) delete existing client settings.

PUT /api/v2/config/{app_id}/clients/{client_id}/settings

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/xj2dmg2mqsm6a8gx89cwn3fu929p4pd/settings

Content-Type: application/json

Object type: ClientSettings

Download schema: clients-clientid-settings-put-req.json

Request body:

{
    "site_name": "Documentation Test Site",
    "login_attempts_threshold": "60",
    "login_attempts": "4",
    "recover_code_lifetime": "2400",
    "verification_code_lifetime": "2400"
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
client_id String xj2dmg2mqsm6a8gx89cwn3fu929p4pd ID of the API client. You can find client IDs on the Console’s Manage Properties page.

Status 200 application/json

Response body:

{
    "site_name": "Documentation Test Site",
    "login_attempts_threshold": "60",
    "login_attempts": "4",
    "recover_code_lifetime": "2400",
    "verification_code_lifetime": "2400"
}

Sample curl request

curl -X PUT \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/clients/
    xyv3q7xhces2yy7cumgrte24epx4m2st/settings \
    -H 'Content-Type: application/json' \
    -d '{
      "site_name":"Documentation Test Site"
    }
'

Get information about available API client settings

Returns settings and values applied at the API client level; in the Console, these are the settings defined in the Manage Application section. This endpoint returns all the global client settings as well as any custom settings configured at the global level. Your API call must have owner permissions in order to return the global settings.

GET /api/v2/config/{app_id}/settings

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/settings

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.

Status 200 application/json

Object type: AppSettings

Download schema: settings-get.json

Response body:

{
    "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/settings",
    "cache_settings": 0,
    "default_flow_name": "standard",
    "default_flow_version": "20170915215708415365",
    "email_method": "ses_sync",
    "password_recover_url": "https://documentation.akamai.com/#/passwordReset",
    "rpx_app_id": "kbcpdniaklcfajlapmif",
    "rpx_key": "69a70c57f856dcb7a28f672fc0c8e8556c1e3672",
    "rpx_realm": "capture",
    "site_name": "documentation.akamai.com"
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
   https://v1.api.us.janrain.com/config/73jzx34tnr5ruhsze494ssgz2b/settings

Get global settings for an application

Returns information about available client settings. These settings are summarized on the API Client Settings page.

GET /api/v2/config/{app_id}/settings/options

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/settings/options

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.

Status 200 application/json

Object type: AppGlobalSettings

Download schema: settings-options-get.json

Response body:

[
    {
        "globalOnly": true,
        "group": "Backplane",
        "name": "backplane_bus",
        "type": "string",
        "values": []
    },
    {
        "globalOnly": true,
        "group": "Backplane",
        "name": "backplane_password",
        "type": "string",
        "values": []
    },
    {
        "globalOnly": true,
        "group": "Backplane",
        "name": "backplane_server",
        "type": "string",
        "values": [
            "backplane1.janrainbackplane.com"
        ]
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/settings/options

Get information about all your entity types

Returns information about all the entity types associated with an application.

GET /api/v2/config/{app_id}/entityTypes

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/Test",
        "name": "Test"
    },
    {
        "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user",
        "name": "user"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes

Get information about a specific entity type

The /config/{app_id}/entityTypes/{entity_type} endpoint provides a way to return information about a specific entity type associated with an application.

GET /api/v2/config/{app_id}/entityTypes/{entity_type}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
entity_type String user Name of the entity type.

Status 200 application/json

Object type: EntityType

Download schema: entityTypes-entityType.json

Response body:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/test",
    "_attributes": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/test/attributes"
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user

Get information about an entity type’s attributes

The /config/{app_id}/entityTypes/{entity_type}/attributes endpoint returns detailed information about each attribute in an entity type, including the attribute name and datatype.

GET /api/v2/config/{app_id}/entityTypes/{entity_type}/attributes

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user/attributes

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
entity_type String user Name of the entity type.

Status 200 application/json

Response body:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user/attributes",
    "attributes": [
        {
            "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user/attributes/id",
            "required": false,
            "description": "simple identifier for this entity",
            "reverse-query": false,
            "ignore-update": null,
            "query": false,
            "unique": false,
            "case-sensitive": null,
            "name": "id",
            "locally-unique": false,
            "default": null,
            "primary-key": false,
            "length": null,
            "type": "id"
        }
    ]
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user/attributes

Get information about the specified entity type attribute

The /config/{app_id}/entityTypes/{entity_type}/attributes endpoint returns detailed information about the specified attribute, including the attribute name and datatype.

GET /api/v2/config/{app_id}/entityTypes/{entity_type}/attributes/{attribute_name}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user/attributes/displayName

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
entity_type String user Name of the entity type.
attribute_name String displayName Case-sensitive name of the attribute to be returned.

Status 200 application/json

Response body:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user/attributes/displayName",
    "required": false,
    "description": "The name of this Contact, suitable for display to end-users.",
    "reverse-query": false,
    "ignore-update": null,
    "query": true,
    "unique": false,
    "case-sensitive": false,
    "name": "displayName",
    "locally-unique": false,
    "default": null,
    "primary-key": false,
    "length": 1000,
    "type": "string"
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user/attributes/displayName

Get information about your flows

Returns a list of flows.

GET /api/v2/config/{app_id}/flows

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/standard",
        "name": "standard"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow",
        "name": "myCoolFlow"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows

Get information about a specific flow

Returns information about a flow.

GET /api/v2/config/{app_id}/flows/{flow}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 200 application/json

Response body:

{
    "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow",
    "name": "myCoolFlow",
    "version": "2015111701280483247",
    "userData": [
        "email",
        "displayName",
        "givenName"
    ],
    "schemas": [
        "myCoolEntityType"
    ]
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
   https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard

Modify a flow

Updates/replaces the userData object or the entityTypes in the flow. The userData object lists the schema attributes to store in the janrainCaptureProfileData object in Local Storage for a logged-in user.

PUT /api/v2/config/{app_id}/flows/{flow}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard

Content-Type: application/json

Request body:

{
    "userData": [
        "email",
        "displayName",
        "familyName",
        "primaryAddress.country"
    ],
    "schemas": [
        "myCoolEntityType"
    ]
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 204

Sample curl request

curl -X PUT \
   https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation \
   -H 'Authorization: Basic aW1fYV...NfbXk=' \
   -H 'Content-Type: application/json' \
   -d '{
      "userData": [
        "email",
        "displayName",
        "primaryAddress.country"
    ]
}'

Copy a flow

Creates a new flow by copying an existing flow. The name attribute in the request specifies the name of the new flow. This endpoint cannot be used to overwrite an existing flow.

POST /api/v2/config/{app_id}/flows/{flow}/copy

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/copy

Content-Type: application/json

Request body:

{
    "name": "documentation"
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 201

Sample curl request

curl -X POST \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/copy \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
         "name": "documentation"
}'

Get information about the fields defined in a flow

Returns a list of fields defined in the flow.

GET /api/v2/config/{app_id}/flows/{flow}/fields

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/fields

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/fields/signInEmailAddress",
        "name": "signInEmailAddress"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/fields/currentPassword",
        "name": "currentPassword"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/fields

Add a field to a flow

Adds a field to the flow. The schemaAttribute must be a dot-separated path to an existing schema attribute.

POST /api/v2/config/{app_id}/flows/{flow}/fields

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/fields

Content-Type: application/json

Request body:

{
    "type": "text",
    "name": "myCustomTextField",
    "schemaAttribute": "displayName",
    "socialProfileData": "profile.displayName",
    "label": {
        "key": "b6ced670-7140-4446-9839-da3474860b1a"
    },
    "tip": {
        "key": "8b93448a-6f00-448c-952b-0f1536107cf7"
    },
    "placeholder": {
        "key": "6e15067b-2ca5-43c3-af96-930766d63375"
    },
    "validation": [
        {
            "rule": "required",
            "value": true,
            "message": {
                "key": "bb2b21a1-98df-4dce-84f7-534013c46225"
            }
        },
        {
            "rule": "unique",
            "value": true,
            "message": {
                "key": "63f7c18f-521a-4b4f-94c4-0b04b870c82e"
            }
        }
    ]
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 201

Sample curl request

curl -X POST \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/fields \
    -H 'Content-Type: application/json' \
    -d '{
       "type": "text",
       "name": "userFullName",
       "schemaAttribute": "displayName"
}'

Get information about a specific field on a specific flow

Returns a field definition from the flow. Includes validations.

GET /api/v2/config/{app_id}/flows/{flow}/fields/{field}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/fields/currentPassword

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
field String currentPassword Name of the field.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/fields/signInEmailAddress",
        "name": "signInEmailAddress"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/fields/currentPassword",
        "name": "currentPassword"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/fields/signInEmailAddress

Modify a field on a flow

Updates/replaces a field in the flow.

PUT /api/v2/config/{app_id}/flows/{flow}/fields/{field}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/fields/currentPassword

Content-Type: application/json

Request body:

{
    "type": "text",
    "name": "myCustomTextField",
    "schemaAttribute": "displayName",
    "socialProfileData": "profile.displayName",
    "label": {
        "key": "b6ced670-7140-4446-9839-da3474860b1a"
    },
    "tip": {
        "key": "8b93448a-6f00-448c-952b-0f1536107cf7"
    },
    "placeholder": {
        "key": "6e15067b-2ca5-43c3-af96-930766d63375"
    },
    "validation": [
        {
            "rule": "required",
            "value": true,
            "message": {
                "key": "bb2b21a1-98df-4dce-84f7-534013c46225"
            }
        },
        {
            "rule": "unique",
            "value": true,
            "message": {
                "key": "63f7c18f-521a-4b4f-94c4-0b04b870c82e"
            }
        }
    ]
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
field String currentPassword Name of the field.

Status 204

Sample curl request

curl -X PUT \
   https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/fields/userFullName \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
       "type": "text",
       "schemaAttribute": "familyName",
       "name": "userFullName"
}'

Remove a field from a flow

Removes a field from the flow. Also removes the field from any forms that were using it.

DELETE /api/v2/config/{app_id}/flows/{flow}/fields/{field}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/fields/currentPassword

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
field String currentPassword Name of the field.

Status 204

Sample curl request

curl -X DELETE \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/fields/displayName

Get information about the forms referenced in a flow

Returns a list of forms in the flow.

GET /api/v2/config/{app_id}/flows/{flow}/forms

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/forms

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/forms/signInForm",
        "name": "signInForm"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/forms/editProfileForm",
        "name": "editProfileForm"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms

Get information about the fields used by a form

Returns a list of fields in a form.

GET /api/v2/config/{app_id}/flows/{flow}/forms/{form}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/forms/registrationForm

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
form String registrationForm Case-sensitive name of the form to be returned.

Status 200 application/json

Response body:

{
    "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/forms/signInForm",
    "fields": [
        {
            "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/fields/signInEmailAddress",
            "name": "signInEmailAddress",
            "required": false
        },
        {
            "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/fields/currentPassword",
            "name": "currentPassword",
            "required": false
        }
    ]
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/registrationForm

Modify the fields used on a form

Updates/replaces the list of fields and features in the form. Any fields added to the form must already exist in the flow.

PUT /api/v2/config/{app_id}/flows/{flow}/forms/{form}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/forms/registrationForm

Content-Type: application/json

Request body:

{
    "fields": [
        {
            "required": true,
            "name": "signInEmailAddress"
        },
        {
            "required": true,
            "name": "currentPassword"
        },
        {
            "required": false,
            "name": "displayName"
        }
    ]
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
form String registrationForm Case-sensitive name of the form to be returned.

Status 204

Sample curl request

curl -X PUT \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/signInForm \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
        "fields": [
            {
            "required": true,
            "name": "signInEmailAddress"
            },
        {
            "required": true,
            "name": "currentPassword"
        },
        {
            "required": false,
            "name": "displayName"
        }
    ]
}'

Get information about the available locales

Returns a list of available locales.

GET /api/v2/config/{app_id}/flows/{flow}/locales

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/locales/en-US",
        "name": "en-US"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/locales/it-IT",
        "name": "it-IT"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk='\
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales

Get translation values

Returns the translation values for a locale.

GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.

Status 200 application/json

Response body:

{
    "1ab1f15d-2555-49af-bd88-cf984ad40a13": "Come se scrive?",
    "a8670648-f9f7-4c0b-92cd-e477fe67b617": "Come se dice.",
    "991a5781-cbe1-4770-bbf1-395168a11d59": "Olio di gomito."
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US

Get information about the fields available for the specified flow

Returns a list of fields defined in the flow. Alias of /config/{app}/flows/{flow}/fields.

GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/fields

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/fields

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/locales/en-US/fields/signInEmailAddress",
        "name": "signInEmailAddress"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/locales/en-US/fields/currentPassword",
        "name": "currentPassword"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/fields

Add a translatable field to a flow

Adds a field to the flow. Works just like /config/{app}/flows/{flow}/fields/{field} except translatable values are accepted in the locale specified. The schemaAttribute must be a dot-separated path to an existing schema attribute.

POST /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/fields

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/fields

Content-Type: application/json

Request body:

{
    "type": "text",
    "name": "userCountry",
    "schemaAttribute": "primaryAddress.country",
    "label": "Country",
    "tip": "The country where the user lives.",
    "socialProfileData": "profile.primaryAddress.country",
    "placeholder": "Country"
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.

Status 201

Sample curl request

curl -X POST \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/fields \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
        "type": "text",
        "name": "userCountry",
        "schemaAttribute": "primaryAddress.country",
        "label": "Country",
        "tip": "The country where the user lives.",
        "socialProfileData": "profile.primaryAddress.country",
        "placeholder": "Country"
    }
'

Get a translated field from a flow

Returns a field definition from the flow translated into the locale specified. Includes validations.

GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/fields/{field}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/fields/optIn

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
field String optIn Name of the field.

Status 200 application/json

Response body:

{
    "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/fields/myCustomTextField",
    "type": "text",
    "name": "myCustomTextField",
    "schemaAttribute": "displayName",
    "label": "foo",
    "tip": "foo",
    "socialProfileData": "profile.displayName",
    "placeholder": "foo",
    "_relationships": {
        "forms": [
            {
                "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/forms/editProfileForm",
                "name": "editProfileForm"
            }
        ]
    },
    "validation": [
        {
            "rule": "required",
            "value": true,
            "message": "foo"
        },
        {
            "rule": "unique",
            "value": true,
            "message": "foo"
        }
    ]
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
  https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/fields/optIn

Modify a translatable field

Updates/replaces a field in the flow.

PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/fields/{field}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/fields/optIn

Content-Type: application/json

Request body:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/fields/middleName",
    "schemaAttribute": "middleName",
    "name": "middleName",
    "type": "text",
    "tip": "",
    "placeholder": "Middle Name or Middle Initial",
    "label": "Middle Name or Middle Initial",
    "_relationships": {
        "forms": [
            {
                "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/ccp_editProfileForm",
                "name": "ccp_editProfileForm"
            },
            {
                "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/ccp_registrationForm",
                "name": "ccp_registrationForm"
            },
            {
                "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/editProfileForm",
                "name": "editProfileForm"
            },
            {
                "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/registrationForm",
                "name": "registrationForm"
            },
            {
                "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/socialRegistrationForm",
                "name": "socialRegistrationForm"
            }
        ]
    }
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
field String optIn Name of the field.

Status 201

Sample curl Request

curl -X PUT https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/fields/middleName -H ‘Authorization: Basic aW1fYV…NfbXk=’ -H ‘Content-Type: application/json’ -d ‘{ “self“: ”/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/fields/middleName“, ”schemaAttribute“: ”middleName“, ”name“: ”middleName“, ”type“: ”text“, ”tip“: ”“, ”placeholder“: ”Middle Name or Middle Initial“, ”label“: ”Middle Name or Middle Initial“, ”relationships”: { “forms”: [ { “self“: ”/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/ccp_editProfileForm“, ”name“: ”ccp_editProfileForm“ }, { ”self”: “/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/ccp_registrationForm”, “name”: “ccp_registrationForm” }, { “self“: ”/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/editProfileForm“, ”name“: ”editProfileForm“ }, { ”self”: “/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/registrationForm”, “name”: “registrationForm” }, { “_self”: “/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/forms/socialRegistrationForm”, “name”: “socialRegistrationForm” } ] } }’ ```

Get email template information

Returns a list of all email templates in the specified locale.

GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/mailTemplates

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/locales/en-US/mailTemplates/reactivateAccount",
        "name": "reactivateAccount"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/locales/en-US/mailTemplates/passwordRecover",
        "name": "passwordRecover"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/locales/en-US/mailTemplates/registrationVerification",
        "name": "registrationVerification"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/locales/en-US/mailTemplates/emailAddressChanged",
        "name": "emailAddressChanged"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/mailTemplates

Get information for a specific email template

Returns a single email template in the specified locale.

GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/mailTemplates/registrationVerification

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
template String registrationVerification Name of the email template to be returned.

Status 200 application/json

Response body:

{
    "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/locales/en-US/mailTemplates/registrationVerification",
    "name": "registrationVerification",
    "subject": "Verify your email",
    "textBody": "Welcome to {*#settings*}{*&site_name*}{*/settings*}, {*#user*}{*&displayName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address.\n\n{*&email_verification_url*}\n",
    "htmlBody": "<p>\nWelcome to {*#settings*}{*&site_name*}{*/settings*}, {*#user*}{*&displayName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address.\n</p>\n<p>\n<a href=\"{*email_verification_url*}\">{*email_verification_url*}</a>\n</p>\n"
}

Sample curl request

curl -G -H 'Authorization: Basic aW1fYV...NfbXk=' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/mailTemplates/registrationVerification

Modify an email template

Update a single email template in the specified locale. Note that, when modifying emails, no single line in that email can exceed 998 characters. (Technically, the limit is 1,000 characters, but you must allow for a two-character carriage return-linefeed at the end of each line.) Can you have an email that has 5 lines, each containing 997 characters? Yes. Can you have an email that has 1 lines containing 1,001 characters? No.

PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/mailTemplates/registrationVerification

Content-Type: application/json

Request body:

{
    "subject": "{*#settings*}{*&site_name*}{*/settings*} email verification required",
    "textBody": "Welcome to {*#settings*}{*&site_name*}{*/settings*}, {*#user*}{*&givenName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address.\n\n{*&email_verification_url*}\n",
    "name": "registrationVerification",
    "htmlBody": "<p>\nWelcome to {*#settings*}{*site_name*}{*/settings*}, {*#user*}{*givenName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address.\n</p>\n<p>\n<a href=\"{*email_verification_url*}\">{*email_verification_url*}</a>\n</p>\n"
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
template String registrationVerification Name of the email template to be returned.

Status 204

Sample curl request

curl -X PUT \
  https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/mailTemplates/registrationVerification \
  -H 'Authorization: Basic aW1fYV...NfbXk=' \
  -d '{
    "subject": "{*#settings*}{*&site_name*}{*/settings*} email verification required",
    "textBody": "Welcome to {*#settings*}{*&site_name*}{*/settings*}, {*#user*}{*&givenName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address.\n\n{*&email_verification_url*}\n",
    "name": "registrationVerification",
    "htmlBody": "\nWelcome to {*#settings*}{*site_name*}{*/settings*}, {*#user*}{*givenName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address.\n
\n
\n{*email_verification_url*}\n
\n"
}'

Get the body portion of an email template

Returns the body for this email template in the specified locale. The Accept header determines whether the text or html version is returned.

GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}/body

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/mailTemplates/registrationVerification/body

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
template String registrationVerification Name of the email template to be returned.

Status 200 text/plain

Response body:

Welcome to {*#settings*}{*&site_name*}{*/settings*}, {*#user*}{*&displayName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address

{*&email_verification_url*}

Sample curl request

curl -G -H 'Authorization: Basic aW1fYV...NfbXk=' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/mailTemplates/registrationVerification/body

Modify the body of an email template

Update the body for this email template in the specified locale. The Content-Type header determines whether the text or html version is updated.

PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}/body

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/mailTemplates/registrationVerification/body

Content-Type: text/plain

Request body:

Welcome to {*#settings*}{*&site_name*}{*/settings*}, {*#user*}{*&displayName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address.

{*&email_verification_url*}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
template String registrationVerification Name of the email template to be returned.

Status 204

Sample curl request

curl -X PUT \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/mailTemplates/passwordChanged/body \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -d '<p>
Welcome to {*#settings*}{*site_name*}{*/settings*}, {*#user*}{*givenName*}{*/user*}! To complete your Janrain registration, point your web browser towards the URL below and verify your email address.
</p>
<p>
    <a href="{*email_verification_url*}">{*email_verification_url*}</a>
</p>
'email_verification_url*
}

Get the subject of an email template

Returns the subject for this email template in the specified locale.

GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}/subject

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/mailTemplates/registrationVerification/subject

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
template String registrationVerification Name of the email template to be returned.

Status 200 text/plain

Response body:

Verify your email

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/mailTemplates/registrationVerification/subject

Modify the subject of an email template

Update the subject for this email template in the specified locale.

PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/mailTemplates/{template}/subject

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/mailTemplates/registrationVerification/subject

Content-Type: text/plain

Request body:

{*#settings*}{*&site_name*}{*/settings*} email verification is required
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
template String registrationVerification Name of the email template to be returned.

Status 204

Sample curl request

curl -X PUT \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/mailTemplates/registrationVerification/subject \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: text/plain' \
    -d '{*#settings*}{*&site_name*}{*/settings*} email verification is required'

List available strings per locale

Returns a list of the strings defined in a flow.

GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/strings

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/locales/en-US/strings/emailAddressData",
        "name": "emailAddressData"
    },
    {
        "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/locales/en-US/strings/poweredByJanrain",
        "name": "poweredByJanrain"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings

Create a string per locale

Adds a string to a flow.

POST /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/strings

Content-Type: application/json

Request body:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/strings/educationCenter",
    "name": "educationCenter",
    "value": "The Akamai Education Center"
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.

Status 201

Sample curl Request

curl -X POST \
  https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/strings \
  -H 'Authorization: Basic aW1fYV...NfbXk=' \
  -H 'Content-Type: application/json' \
  -d '{
        "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/strings/educationCenter",
        "name": "educationCenter",
        "value": "The Janrain Education Center"
    }'

Get information for string

Returns a string definition from the flow.

GET /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings/{string}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/strings/educationCenter

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
string String educationCenter Name of the string.

Status 200 application/json

Response body:

{
    "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/locales/en-US/strings/poweredByJanrain",
    "name": "poweredByJanrain",
    "value": "Powered by Janrain"
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
   -H 'Content-Type: application/json' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/strings/educationCenter

Modify a string per locale

Updates/replaces a string in the flow.

PUT /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings/{string}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/strings/educationCenter

Content-Type: application/json

Request body:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/janrainEducationCenter",
    "name": "janrainEducationCenter",
    "value": {
        "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/janrainEducationCenter",
        "path": "strings.addressCountry.options[40].text",
        "key": "2e644df5ac113d206b4cf8acbf469fa1",
        "values": {
            "en-US": "Cape Verde"
        }
    }
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
string String educationCenter Name of the string.

Status 204

Sample curl request

curl -X PUT \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/strings/educationCenter \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
        "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/strings/educationCenter",
        "name": "educationCenter",
        "value": "The Janrain Education Center, home of Janrain University and Janrain'\''s technical documentation"
    }'

Delete a string per locale

Removes a string from a flow.

DELETE /api/v2/config/{app_id}/flows/{flow}/locales/{locale}/strings/{string}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/locales/en-US/strings/educationCenter

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
locale String en-US ISO language code for the locale.
string String educationCenter Name of the string.

Status 204

Sample curl request

curl -X DELETE \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/locales/en-US/strings/educationCenter \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json'

Promote a flow

Promotes a flow to another app. The app_id and credentials must be specified in the request body. The flow name remains the same. If the other app has a flow with the same name, it will be overwritten.

POST /api/v2/config/{app_id}/flows/{flow}/promote

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/promote

Content-Type: application/json

Request body:

{
    "app_id": "pplwjvt8j120okhjj98udgd6rh",
    "client_id": "fhy7652mq5ppfhy4y2m768bha8wbsgdt",
    "client_secret": "84i888uccecbhwnaxpxemkki59dcffg"
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 200 application/json

Response body:

{
    "_self": "/config/someotherappid12345678/flows/myCoolFlow",
    "name": "myCoolFlow",
    "version": "2015111705580676795"
}

Sample curl request

curl -X POST \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/promote \
    -H 'Content-Type: application/json' \
    -d '{
      "app_id": "pplwjvt8j120okhjj98udk9u3g",
      "client_id": "f98765de35ppfhy4y2d322bha8wbsfhjy",
      "client_secret": "hfy45rhfbscbhwncvpxemkki59dk55g"
}'

List available screens

Returns a dictionary of all screens for a flow.

GET /api/v2/config/{app_id}/flows/{flow}/screens

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/screens

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/screens/traditionalAuthenticateMerge",
        "name": "traditionalAuthenticateMerge"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/screens/reactivateAccountSuccess",
        "name": "reactivateAccountSuccess"
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/screens/signIn",
        "name": "signIn"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/screens

Get information about a screen

Returns a list of information for a specific screen in a flow.

GET /api/v2/config/{app_id}/flows/{flow}/screens/{screen}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/screens/changePassword

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
screen String changePassword Name of the screen.

Status 200 application/json

Response body:

{
    "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/screens/signIn",
    "modal": true,
    "name": "signIn"
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/screens/changePassword

Modify a screen

Updates the modal value for a screen in a flow. Requires a boolean modal value and the name of a valid screen name. The _self path is optional.

PUT /api/v2/config/{app_id}/flows/{flow}/screens/{screen}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/screens/changePassword

Content-Type: application/json

Request body:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/screens/changePassword",
    "name": "changePassword",
    "modal": false
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
screen String changePassword Name of the screen.

Status 204

Sample curl request

curl -X PUT \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/janrainEducationCenter \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
        "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/janrainEducationCenter",
        "name": "janrainEducationCenter",
        "key": "2e644df5ac113d206b4cf8acbf469fa1",
        "value": {
             "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/janrainEducationCenter",
             "path": "strings.addressCountry.options[40].text",
             "values": {
             "en-US": "Cape Verde"
             }
        }
}'

List available strings

Returns a list of strings defined in the flow.

GET /api/v2/config/{app_id}/flows/{flow}/strings

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/strings

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/strings/emailAddressData",
        "name": "emailAddressData"
    },
    {
        "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/strings/poweredByJanrain",
        "name": "poweredByJanrain"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
  -H 'Content-Type: application/json' \
  https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings

Create a string

Adds a string to the flow. Strings must contain either schemaId or value. Do not provide both.

POST /api/v2/config/{app_id}/flows/{flow}/strings

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/strings

Content-Type: application/json

Request body:

{
    "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/strings/janrainEducationCenter",
    "name": "akamaiEducationCenter",
    "schemaId": "akamaiEducationCenter",
    "value": {
        "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/strings/janrainEducationCenter",
        "key": "a0861174cd5d46eb65d38ee3ec137d55",
        "path": "strings.janrainEducationCenter.value",
        "values": {
            "en-US": "Akamai Education Center"
        }
    }
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 201

Sample curl request

curl -X POST \
  https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
        "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/strings/janrainEducationCenter",
        "name": "janrainEducationCenter",
        "schemaId": "janrainEducationCenter",
        "value": {
            "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/strings/janrainEducationCenter",
            "key": "a0861174cd5d46eb65d38ee3ec137d55",
            "path": "strings.janrainEducationCenter.value",
            "values": {
                "en-US": "Janrain Education Center"
            }
        }
}'

Get information about a string

Returns a string definition from the flow.

GET /api/v2/config/{app_id}/flows/{flow}/strings/{string}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/strings/myCoolString

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
string String myCoolString Name of the string to be returned.

Status 200 application/json

Response body:

{
    "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/strings/myCoolString",
    "name": "myCoolString",
    "schemaId": "myCoolAttribute",
    "value": {
        "_self": "/config/4qeam8586cpkuru3ju8kj2xwdf/flows/myCoolFlow/strings/myCoolString",
        "key": "a0861174cd5d46eb65d38ee3ec137d55",
        "path": "strings.myCoolString.value",
        "values": {
            "en-US": "This is a cool string"
        }
    }
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/poweredByJanrain

Modify a string

Updates/replaces a string in the flow. Strings must contain either schemaId or value. Do not provide both.

PUT /api/v2/config/{app_id}/flows/{flow}/strings/{string}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/strings/myCoolString

Content-Type: application/json

Request body:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/janrainEducationCenter",
    "name": "janrainEducationCenter",
    "value": {
        "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/janrainEducationCenter",
        "path": "strings.addressCountry.options[40].text",
        "key": "2e644df5ac113d206b4cf8acbf469fa1",
        "values": {
            "en-US": "Cape Verde"
        }
    }
}
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
string String myCoolString Name of the string to be returned.

Status 204

Sample curl request

url -X PUT \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/screens/changePassword \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    -d '{
        "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/screens/changePassword",
        "name": "changePassword",
        "modal": false
     }'

Delete a string

Removes a string from a flow.

DELETE /api/v2/config/{app_id}/flows/{flow}/strings/{string}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/strings/myCoolString

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
string String myCoolString Name of the string to be returned.

Status 204

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
  -H 'Content-Type: application/json' \
  https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/poweredByJanrain

Get available translations

Returns a dictionary of all translations.

GET /api/v2/config/{app_id}/flows/{flow}/translations

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/translations

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 200 application/json

Response body:

[
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/translations/991a5781-cbe1-4770-bbf1-395168a11d59",
        "key": "991a5781-cbe1-4770-bbf1-395168a11d59",
        "path": "fields.someField.label",
        "values": {
            "en-US": "Register",
            "fr-FR": "Faire inscrire",
            "it-IT": "Registrati"
        }
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/translations/1ab1f15d-2555-49af-bd88-cf984ad40a13",
        "key": "1ab1f15d-2555-49af-bd88-cf984ad40a13",
        "path": "fields.anotherField.label",
        "values": {
            "en-US": "Hello!",
            "fr-FR": "Bonjour!",
            "it-IT": "Bongiorno!"
        }
    },
    {
        "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/translations/a8670648-f9f7-4c0b-92cd-e477fe67b617",
        "key": "a8670648-f9f7-4c0b-92cd-e477fe67b617",
        "path": "fields.oneMoreField.label",
        "values": {
            "en-US": "Goodbye!",
            "fr-FR": "Au revoir!",
            "it-IT": "Arrivederci!"
        }
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/translations

Create a translation

Adds new translation strings to the translations dictionary. You must supply a list of values for each locale defined in the flow. For a list of locales, call /config/{app}/flows/{flow}/locales.

POST /api/v2/config/{app_id}/flows/{flow}/translations

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/translations

Content-Type: application/json

Request body:

[
    {
        "values": {
            "en-US": "Hello!",
            "fr-FR": "Bonjour!",
            "it-IT": "Bongiorno!"
        }
    },
    {
        "values": {
            "en-US": "Goodbye!",
            "fr-FR": "Au revoir!",
            "it-IT": "Arrivederci!"
        }
    }
]
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 204

Sample curl request

curl -X POST \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/translations \
    -H 'Content-Type: application/json' \
    -H 'Postman-Token: be9dedc1-e232-453c-9fb8-de37805522ea' \
    -H 'cache-control: no-cache' \
    -d '[
        {
            "values": {
            "en-US": "Hello!",
            "fr-FR": "Bonjour!",
            "it-IT": "Bongiorno!"
        }
    },
    {
        "values": {
          "en-US": "Goodbye!",
          "fr-FR": "Au revoir!",
          "it-IT": "Arrivederci!"
        }
    }
]'

Update a Translation

Updates existing translations. This endpoint does not delete data.

PATCH /api/v2/config/{app_id}/flows/{flow}/translations

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/translations

Content-Type: application/json

Request body:

[
    {
        "key": "a8670648-f9f7-4c0b-92cd-e477fe67b617",
        "values": {
            "en-US": "See ya!"
        }
    }
]
Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 204

Sample curl request

curl -X PATCH \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/translations \
    -H 'Authorization: Basic dXQ0YmdycmE3dzI4MmpjZm15cGZxeDlwemhxaGpqMmI6eXk4MmhxdXhnbWt6bWMzcGRoZ3VmdDNwNHluc3R6cjU=' \
    -H 'Content-Type: application/json' \
    -d '[
        {
            "key": "afeba216c561f421e6e19e6cfed3acd8",
            "values": {
                "it-IT": "Nome utente o password errati. Per favore riprova.",
                "en-US": "Incorrect username or password. Please try again.",
                "fr-FR": "Identifiant ou mot de passe incorrect. Veuillez r&#233;essayer."
            }
        }
]'

Get translations for a translation key

Returns a dictionary of all translations for a key.

GET /api/v2/config/{app_id}/flows/{flow}/translations/{key}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/translations/afeba216c561f421e6e19e6cfed3acd8

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
key String afeba216c561f421e6e19e6cfed3acd8 Unique identifier of the translation key.

Status 200 application/json

Response body:

{
    "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/translations/991a5781-cbe1-4770-bbf1-395168a11d59",
    "key": "991a5781-cbe1-4770-bbf1-395168a11d59",
    "path": "",
    "values": {
        "en-US": "Elbow grease.",
        "it-IT": "Olio di gomito."
    }
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/translations/afeba216c561f421e6e19e6cfed3acd8

Delete a translation key

Deletes a translation string if it is not in use.

DELETE /api/v2/config/{app_id}/flows/{flow}/translations/{key}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/translations/afeba216c561f421e6e19e6cfed3acd8

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
key String afeba216c561f421e6e19e6cfed3acd8 Unique identifier of the translation key.

Status 204

Sample curl request

curl -X DELETE \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/translations/826d98bbef2eea2cee1058da8f6d6b2b \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json'

List all the versions of a flow

Returns a list of all versions for a particular flow, along with a change note for each version.

GET /api/v2/config/{app_id}/flows/{flow}/versions

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/versions

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.

Status 200 application/json

Response body:

[
    {
        "change": "Updated field: givenName",
        "version": "HEAD"
    },
    {
        "change": "Updated field: givenName",
        "version": "201601201956110829464"
    },
    {
        "change": "Updated field: firstName",
        "version": "201601201954520534731"
    },
    {
        "change": "Created.",
        "version": "201601201954370741786"
    }
]

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/versions

Get information for a flow version

Returns the version of the flow.

GET /api/v2/config/{app_id}/flows/{flow}/versions/{version}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/versions/20180813153404361880

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
version String 20180813153404361880 Version number of the flow to be returned.

Status 200 application/json

Response body:

{
    "...shortened...": "...for brevity...",
    "version": "00000000-0000-0000-0000-000000000000",
    "authProfileData": [
        "name",
        "verifiedEmail",
        "identifier"
    ],
    "userData": [
        "email",
        "displayName"
    ]
}

Sample curl request

curl -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json' \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/versions/20180813153404361880

Restore a flow

Restores a flow to a previous version of that flow.

POST /api/v2/config/{app_id}/flows/{flow}/versions/{version}

Sample: /api/v2/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/standard/versions/20180813153404361880

Parameter Type Sample Description
URL path parameters
app_id String htb8fuhxnf8e38jrzub3c7pfrr Application ID. You can find your application ID on the Console’s Manage Application page.
flow String standard Name of the flow.
version String 20180813153404361880 Version number of the flow to be returned.

Status 204

Sample curl request

curl -X POST \
    https://v1.api.us.janrain.com/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/versions/20180813153404361880 \
    -H 'Authorization: Basic aW1fYV...NfbXk=' \
    -H 'Content-Type: application/json'

Data

This section provides details for each type of data object the API exchanges.

Download the JSON schemas for this API.

Client

Updates permissions and settings for an API client.

Download schema: clients-clientid-put.json

Sample PUT response:

{
    "_id": "3bchk5hsx6v58dkn288nbybmxfyk32u7",
    "_secret": "j383npa9g4hfdye9t5es72x8r374tdfh",
    "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/3bchk5hsx6v58dkn288nbybmxfyk32u7",
    "_settings": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/3bchk5hsx6v58dkn288nbybmxfyk32u7/settings",
    "name": "Documentation Login Client",
    "features": [
        "login_client"
    ],
    "ipWhitelist": [
        "0.0.0.0/0"
    ]
}

Client members

Member Type Description
Client: Updates permissions and settings for an API client.
_id String API client ID.
_secret String API client secret. The secret functions as the API client password.
_self String Path used to directly access the client in an API call.
_settings String Path used to directly access the client settings in an API call.
features Array Array containing the administrative features to be assigned to the client. Features control access to user records and to management tools. For example, the owner feature provides access to all user records while the login_client feature only allows access to records associated with the authenticated user.
ipWhitelist Array Arrays containing the IP addresses that will comprise the client’s IP whitelist: only IP addresses found on the whitelist can use the client to make API calls. To use any IP address to make API calls, set the whitelist to 0.0.0.0/0.
name String Name of the API client.

ClientMetadata

Returns permission and metadata information for the specified API client.

Download schema: clients-clientid-settings-get.json

Sample GET response:

{
    "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/clients/nhjsdtjwvaytevc2w5sx42skggvjn7bu/settings",
    "default_flow_name": "standard",
    "default_flow_version": "20170915215708415365",
    "email_method": "ses_sync",
    "rpx_app_id": "kbcpdniaklcfajlapmif",
    "rpx_key": "69a70c57f856dcb7a28f672fc0c8e8556c1e3672",
    "rpx_realm": "capture",
    "site_name": "New Test Site",
    "_global": {
        "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/settings",
        "cache_settings": 0,
        "default_flow_name": "standard",
        "default_flow_version": "20170915215708415365",
        "email_method": "ses_sync",
        "password_recover_url": "https://documentation.akamai.com/#/passwordReset",
        "rpx_app_id": "kbcpdniaklcfajlapmif",
        "rpx_key": "69a70c57f856dcb7a28f672fc0c8e8556c1e3672",
        "rpx_realm": "capture",
        "site_name": "https://documentation.akamai.com"
    },
    "custom": {}
}

ClientMetadata members

Member Type Description
ClientMetadata: Returns permission and metadata information for the specified API client.
_global ClientMetadata Standard API client settings.

ClientSettings

Updates client settings for the specified API client.

Download schema: clients-clientid-settings-put-req.json

Sample PUT request:

{
    "site_name": "Documentation Test Site",
    "login_attempts_threshold": "60",
    "login_attempts": "4",
    "recover_code_lifetime": "2400",
    "verification_code_lifetime": "2400"
}

ClientSettings members

Member Type Description
ClientSettings: Updates client settings for the specified API client.
login_attempts String Number of traditional login or password reset attempts a user can make in a given timespan (see login_attempts_threshold) before getting locked out. This feature is intended for preventing brute force login attacks, so the count includes both successful and failed login attempts.
login_attempts_threshold String Time, in seconds, before a user’s number of attempts (see login_attempts) counter resets to 0. The counter starts at the beginning of the threshold time period based on a sliding window rather than the exact time of the user’s last attempt.
recover_code_lifetime String Sets the duration, in seconds, that the password recover link is valid.
site_name String Used in email templates to specify the name of the site where the email was triggered from.
verification_code_lifetime String Sets the duration, in seconds, that an email verification code is valid.

AppSettings

Returns all the global API client settings, including custom settings as well as the default settings.

Download schema: settings-get.json

Sample GET response:

{
    "_self": "/config/73jzx34tnr5ruhsze494ssgz2b/settings",
    "cache_settings": 0,
    "default_flow_name": "standard",
    "default_flow_version": "20170915215708415365",
    "email_method": "ses_sync",
    "password_recover_url": "https://documentation.akamai.com/#/passwordReset",
    "rpx_app_id": "kbcpdniaklcfajlapmif",
    "rpx_key": "69a70c57f856dcb7a28f672fc0c8e8556c1e3672",
    "rpx_realm": "capture",
    "site_name": "documentation.akamai.com"
}

AppSettings members

Member Type Description
AppSettings: Returns all the global API client settings, including custom settings as well as the default settings.
_self String Path used to directly access the settings in an API call.
cache_settings Integer When set to 0, API clients settings are not cached and are refreshed on each API call. When set to any other value client settings are cached.
default_flow_name String The flow used in OAuth API endpoints if you do not set the flow parameter. This is also the fallback flow name setting for Customer Care Portal if ccp_flow_name is not set.
default_flow_version String The flow used in OAuth API endpoints if you do not set the flow_version parameter. This is also the fallback flow version setting for Customer Care Portal if ccp_flow_version is not set.
email_method String Method for generating emails during the registration flow. If Akamai is managing your transactional emails this should always be set to ses_sync.
password_recover_url String The base URL used when generating a password reset link.
rpx_app_id String The unique identifier of your Social Login application. This can be found in the settings page of your Social Login dashboard.
rpx_key String The API key (secret) of your Social Login application. This can be found on the Manage Application page in the Console.
rpx_realm String The realm of your Social Login application if you are using a standard Identity Cloud domain. You can find this value on the Manage Application page in the Console. This is identifiable as the subdomain to rpxnow.com in your application domain.
site_name String Used in email templates to specify the name of the site where the email was triggered from.

AppGlobalSettings

Returns information for all the settings (both global and local settings) than can be configured for an API client.

Download schema: settings-options-get.json

Sample GET response:

[
    {
        "globalOnly": true,
        "group": "Backplane",
        "name": "backplane_bus",
        "type": "string",
        "values": []
    },
    {
        "globalOnly": true,
        "group": "Backplane",
        "name": "backplane_password",
        "type": "string",
        "values": []
    },
    {
        "globalOnly": true,
        "group": "Backplane",
        "name": "backplane_server",
        "type": "string",
        "values": [
            "backplane1.janrainbackplane.com"
        ]
    }
]

AppGlobalSettings members

Member Type Description
AppGlobalSettings: Returns information for all the settings (both global and local settings) than can be configured for an API client.
globalOnly Boolean When set to true, indicates that the setting can only be configured at the global scope, and cannot be configured for individual API clients.
group String General group that the setting belongs to.
name String Name of the setting. Site names are case sensitive. For example, you cannot type site_name as Site_Name. If you do, that incorrect setting will be ignored.
type String Datatype of the setting.
values Array Allowed values for the setting. For example, invitation_search_allow_empty can only be set to true or false. A blank values property means that there is not a predefined set of values for the property.

EntityType

Returns information about a specific entity type.

Download schema: entityTypes-entityType.json

Sample GET response:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/test",
    "_attributes": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/test/attributes"
}

EntityType members

Member Type Description
EntityType: Returns information about a specific entity type.
_attributes String Path used to directly access attributes of the entity type in an API call.
_self String Path used to directly access the entity type in an API call.

Attribute

Returns properties and constraints associated with the specified schema attribute.

Download schema: entityTypes-entityType-attributes-attribute.json

Sample GET response:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/entityTypes/user/attributes/displayName",
    "required": false,
    "description": "The name of this Contact, suitable for display to end-users.",
    "reverse-query": false,
    "ignore-update": null,
    "query": true,
    "unique": false,
    "case-sensitive": false,
    "name": "displayName",
    "locally-unique": false,
    "default": null,
    "primary-key": false,
    "length": 1000,
    "type": "string"
}

Attribute members

Member Type Description
Attribute: Returns properties and constraints associated with the specified schema attribute.
_self String Path used to directly access the attribute in an API call.
case-sensitive Boolean Enforces case-sensitivity when 1) checking uniqueness on an attribute value; or, 2) when searching in Console or by using the /entity.find API endpoint. If the case-sensitive property is set to true then the names Smith, SMITH, and smith are treated as three different values. If case-sensitive is set to false then Smith, SMITH, and smith are treated as being the exact same value.
default String, Null Assigns a default value if no value is submitted to the attribute during record creation. For example, you might assign the value US to be the default value for the primaryAddress.country property. If a user fails to enter their country of residence, then primaryAddress.country will automatically be set to US.
description String Description of an attribute and its use.
ignore-update String, Null Allows data to be written to an attribute once and then ignores all future updates. For example, when you create a new user profile, the date and time are recorded in the created attribute. After that initial write, however, the created attribute cannot be changed.
length Integer Enforces a maximum length (number of characters) less than or equal to the supplied integer value. For example, if the length is set to 7 then apple (5 characters) is an acceptable value; pomegranate (11 characters) is not an acceptable value and will be rejected.
locally-unique Boolean Enforces uniqueness on a plural attribute within an individual user record. For example, suppose, in the clients plural, a user has a client with a clientId of hb7ntpcgqf7c5fk3jrehq8wpatn23bvd. Because clientId is locally unique, trying to add another client to the user profile that has the client ID hb7ntpcgqf7c5fk3jrehq8wpatn23bvd will fail. However, other users in the entity type can have a client with that client ID.
name String Name of the attribute. When naming attributes, keep in mind that 1) attribute names are case-sensitive; and, 2) you must specify the full attribute path when adding a new plural or object attribute. For example, to add an attribute named county to the primaryAddress object you need to use the name primaryAddress.county.
primary-key Boolean Allows a plural entry to be targeted in an /entity.update call by using the value stored in the attribute as a unique identifier (as opposed to using the plural ID as the unique identifier).
query Boolean Indexes the attribute for improved search performance and for wildcard searching. Only indexed attributes (i.e., attributes where the query property is set to true) can be used in a Console search.
required Boolean Requires a non-null value be provided for an attribute. For example, if displayName is set to required that means that the user must enter a display name. Processing (such as user registration) cannot continue until a value has been entered for the displayName attribute.
reverse-query Boolean Indexes the attribute to enable leading wildcard searches (for example, *@gmail.com, where the wildcard character is the first character in the target search value).
type String Datatype of the attribute.
unique Boolean Enforces uniqueness on an attribute value across an entire entity type. For example, if email is marked as a unique attribute, then only one user in that entity type can have the email address karim.nafir@mail.com.

Flow

Returns information about the specified flow. Flows help manage login and registration experiences. For example, the flow determines the information users must supply when creating a new account.

Download schema: flows-flow-get.json

Sample GET response:

{
    "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow",
    "name": "myCoolFlow",
    "version": "2015111701280483247",
    "userData": [
        "email",
        "displayName",
        "givenName"
    ],
    "schemas": [
        "myCoolEntityType"
    ]
}

Flow members

Member Type Description
Flow: Returns information about the specified flow. Flows help manage login and registration experiences. For example, the flow determines the information users must supply when creating a new account.
_self String Path used to directly access the flow in an API call.
name String Name of the flow.
schemas Array Name of the entity type associated with the flow. By default, flows are associated with the user entity type.
userData Array List of schema attributes maintained in the janrainCaptureProfileData object in Local Storage for a logged-in user.
version String Version number of the flow. Version numbers are timestamps that indicate when the flow was created or modified. The first four digits in the version number represent the year, the next two digits represent the month, and digits 7–8 represent the day of the month.

FlowVersion

Returns information about the specified version of a flow.

Download schema: flows-flow-versions-version-get.json

Sample GET response:

{
    "...shortened...": "...for brevity...",
    "version": "00000000-0000-0000-0000-000000000000",
    "authProfileData": [
        "name",
        "verifiedEmail",
        "identifier"
    ],
    "userData": [
        "email",
        "displayName"
    ]
}

FlowVersion members

Member Type Description
FlowVersion: Returns information about the specified version of a flow.
authProfileData Array Social identity provider values returned during the onCaptureLoginSuccess and onCaptureRegistrationSuccess events.
userData Array Schema attributes maintained in the janrainCaptureProfileData object in Local Storage for the logged-in user.
version String Version number of the flow. Version numbers are timestamps that indicate when the flow was created or modified. The first four digits in the version number represent the year, the next two digits represent the month, and digits 7–8 represent the day of the month.

Field

Adds a field to a flow.

Download schema: flows-flow-fields-post-req.json

Sample POST request:

{
    "type": "text",
    "name": "myCustomTextField",
    "schemaAttribute": "displayName",
    "socialProfileData": "profile.displayName",
    "label": {
        "key": "b6ced670-7140-4446-9839-da3474860b1a"
    },
    "tip": {
        "key": "8b93448a-6f00-448c-952b-0f1536107cf7"
    },
    "placeholder": {
        "key": "6e15067b-2ca5-43c3-af96-930766d63375"
    },
    "validation": [
        {
            "rule": "required",
            "value": true,
            "message": {
                "key": "bb2b21a1-98df-4dce-84f7-534013c46225"
            }
        },
        {
            "rule": "unique",
            "value": true,
            "message": {
                "key": "63f7c18f-521a-4b4f-94c4-0b04b870c82e"
            }
        }
    ]
}

Field members

Member Type Description
Field: Adds a field to a flow.
label Field.label UI label associated withe field.
name String Name of the field.
placeholder Field.placeholder Field’s placeholder text in the JavaScript SDK (widget).
schemaAttribute String Schema attribute associated with the field.
socialProfileData String Determines how user data returned from a social login is mapped to the registration field. This is only used for social registration.
tip Field.tip Tooltip associated with the field.
type String Datatype of the field.
validation Field.validation[] Validation rule associated with the field.
Field.label: UI label associated withe field.
key String Unique identifier of the label.
Field.placeholder: Field’s placeholder text in the JavaScript SDK (widget).
key String Unique identifier associated with the placeholder.
Field.tip: Tooltip associated with the field.
key String Unique identifier of the tip.
Field.validation[]: Validation rule associated with the field.
message Field.validation[].message Message displayed to the end user if validation fails.
rule String Type of validation rule being added.
value Boolean Set to true to enable the validation rule. Set to false (or delete) to disable the rule.
Field.validation[].message: Message displayed to the end user if validation fails.
key String Unique identifier associated with the validation message.

MailTemplate

Updates a transactional email template in the specified locale.

Download schema: flows-flow-locales-locale-mailTemplates-template-put-req.json

Sample PUT request:

{
    "subject": "{*#settings*}{*&site_name*}{*/settings*} email verification required",
    "textBody": "Welcome to {*#settings*}{*&site_name*}{*/settings*}, {*#user*}{*&givenName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address.\n\n{*&email_verification_url*}\n",
    "name": "registrationVerification",
    "htmlBody": "<p>\nWelcome to {*#settings*}{*site_name*}{*/settings*}, {*#user*}{*givenName*}{*/user*}! To complete your new registration, just click on or browse to the URL below to verify this email address.\n</p>\n<p>\n<a href=\"{*email_verification_url*}\">{*email_verification_url*}</a>\n</p>\n"
}

MailTemplate members

Member Type Description
MailTemplate: Updates a transactional email template in the specified locale.
htmlBody String Message body (in HTML format) for the email.
name String Name of the email.
subject String Subject line for the email.
textBody String Message body (in plain text format) for the email.

String

Update a flow string. Strings represent static text displayed in login and registration forms.

Download schema: flows-flow-strings-string-put-req.json

Sample PUT request:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/janrainEducationCenter",
    "name": "janrainEducationCenter",
    "value": {
        "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/strings/janrainEducationCenter",
        "path": "strings.addressCountry.options[40].text",
        "key": "2e644df5ac113d206b4cf8acbf469fa1",
        "values": {
            "en-US": "Cape Verde"
        }
    }
}

String members

Member Type Description
String: Update a flow string. Strings represent static text displayed in login and registration forms.
_self String Path used to directly access the string in an API call.
name String Name of the string.
value String.value JSON-formatted object containing the string’s properties and property values.
String.value: JSON-formatted object containing the string’s properties and property values.
_self String Path used to directly access the string in an API call.
key String Unique identifier assigned to the string.
path String Provides information regarding the forms and form locations where the string is used.
values String.value.values Property values of the string.
String.value.values: Property values of the string.
locale String ISO locale code for the language the string is written in.
test String String text.

Screen

Updates the modal property for the specified screen.

Download schema: flows-flow-screens-screen-put-req.json

Sample PUT request:

{
    "_self": "/config/htb8fuhxnf8e38jrzub3c7pfrr/flows/documentation/screens/changePassword",
    "name": "changePassword",
    "modal": false
}

Screen members

Member Type Description
Screen: Updates the modal property for the specified screen.
_self String Path used to directly access the screen in an API call.
modal Boolean When true, indicates that the screen runs as a modal. That means that the screen must be addressed or dismissed before any further processing can take place. When false, the screen does not run as a modal.
name String Name of the screen being modified.

TranslationKey

Returns all the translations associated with the specified translation key.

Download schema: flows-flow-translations-key-get.json

Sample GET response:

{
    "_self": "/config/v86cchggr5cdvbfh7ydk8s63zz/flows/myCoolFlow/translations/991a5781-cbe1-4770-bbf1-395168a11d59",
    "key": "991a5781-cbe1-4770-bbf1-395168a11d59",
    "path": "",
    "values": {
        "en-US": "Elbow grease.",
        "it-IT": "Olio di gomito."
    }
}

TranslationKey members

Member Type Description
TranslationKey: Returns all the translations associated with the specified translation key.
_self String Path used to directly access the translation key in an API call.
key String Unique identifier assigned to the translation key.
path String Specifies the flow locations where the translation is used.
values TranslationKey.values Individual translations associated with the translation key Includes both the translation and the ISO language code.
TranslationKey.values: Individual translations associated with the translation key Includes both the translation and the ISO language code.
{locale} String Regular expression that specifies that the translation values can only contain the letters A-Z (either uppercase or lowercase).

Errors

This section provides details on the error responses and HTTP status codes generated by the Configuration API.

Error responses

Error responses for the Advanced Policy Manager API are returned as JSON-formatted objects. For example:

{
    "errors": "Authentication required."
}

Each error response is also assigned an HTTP status code, as shown in the following section.

HTTP status codes

The following table lists the HTTP status codes that you might encounter when using the Configuration API. Note that the error messages that accompany a given status code will vary depending on the type of object your API call is working with.

Code Description
200 The API call succeeded.
201 Resource successfully created.
204 Successfully processed request.
400 Missing data for the required field.
400 The metadata feature can only be applied by Akamai. Remove “metadata” from the list of client features and try the API call again.
400 Clients with the login feature cannot have any other features. Remove all the features except login_client from the API call and try again.
400 Not a valid string.
400 Not a valid CIDR address. You must use the Classless Internet Domain Routing format when specifying IP addresses.
400 Not a valid feature name.
400 Must be between 0 and 168. The hoursToLive property must be set to an integer value between 0 and 168, inclusive.
400 {setting key} can only be configured as a global setting.
400 {setting key} is not a valid string.
400 {setting key} must be valid JSON.
400 {setting key} must be an integer.
400 Value is supplied that does not pass additional validation rules defined for the specified key. Verify the validation rules for the specified key and then try your API call again.
400 must be a boolean value.

Last modified: 6/27/2019