Fundpress Auth Service - Client

The fundpress authentication service also allows for the provisioning of new clients, but which are only available for people holding Super Admin privileges.

Add Client /auth/addClient

A client in Fundpress stores information about the asset management organization itself, its system configuration, data configuration, and users. A client is the root of everything in the system and the first thing that needs to be configured when onboarding a new customer.

Service call details.

Parameter Value
End Point https://api.fundpress.io/auth/addClient
Headers X-KSYS-TOKEN
Content Type application/json
HTTP Method POST
Return Type JSON
Return Data A reflection of the created client
Body
{
    "clientName": "ABC Capital Management",
    "stagingClient": true,
    "modules": ["Management", "Roles", "Users", ..."SSO", "DataMonitoring"],
    "enableDocumentEntitlement": true,
    "enabledEntityTypeEntitlements": ["FUND", "CLSS", "BMRK", "ACCT"],
    "allow2FA": true,
    "snapshotFrequency": 24,
    "enabledCaseSensitive": false
}
JSON Key Required Description
clientName TRUE The Client Name
stagingClient FALSE Whether the client is used to stage data (i.e. not a prod client. Allows for cleardown of data
modules TRUE A list of modules the client has access to
enableDocumentEntitlement FALSE Whether document entitlements are enabled
enabledEntityTypeEntitlements FALSE Which entity types have entitlements enabled
allow2FA FALSE Whether to allow this client to configure 2 factor authentication
snapshotFrequency FALSE The interval between snapshot runs (in hours)
enabledCaseSensitive FALSE Set case sensitive for translations
Response
{
    "clientId": 2,
    "clientName": "ABC Capital Management",
    "s3Folder": "d8a58971-b869-432a-8e9c-3df1048ab1b3",
    "stagingClient": true,
    "modules": ["Management", "Roles", "Users", ..."SSO", "DataMonitoring"],
    "enableDocumentEntitlement": true,
    "enabledEntityTypeEntitlements": [],
    "allow2FA": true,
    "snapshotFrequency": 24,
    "enabledCaseSensitive": false
}

List Clients /auth/listClients

Allows a super admin user to search for a client.

Service call details.

Parameter Value
End Point https://api.fundpress.io/auth/listClients
Headers X-KSYS-TOKEN
Content Type application/json
HTTP Method POST
Return Type JSON
Return Data A list of clients in the system
Body
{
    "clientName": "ABC"
}
JSON Key Required Description
clientName TRUE A search term to find a client
Response
[
    {
        "clientId": 2,
        "clientName": "ABC Capital Management",
        "s3Folder": "d8a58971-b869-432a-8e9c-3df1048ab1b3",
        "stagingClient": false,
        "modules": ["Management", "Roles", "Users", ..."SSO", "DataMonitoring"],
        "enableDocumentEntitlement": true,
        "enabledEntityTypeEntitlements": [],
        "allow2FA": true,
        "snapshotFrequency": 24,
        "enabledCaseSensitive": false
    }
]

Update Client auth/updateClient

Allows a super admin to update a client.

Service call details.

Parameter Value
End Point https://api.fundpress.io/auth/updateClient
Headers X-KSYS-TOKEN
Content Type application/json
HTTP Method POST
Return Type JSON
Return Data A reflection of the updated client
Body
{
    "clientId": 2,
    "clientName": "DEF Capital Management",
    "modules": ["Management", "Roles", "Users", ..."SSO", "DataMonitoring"],
    "stagingClient": true,
    "enableDocumentEntitlement": true,
    "enabledEntityTypeEntitlements": [],
    "allow2FA": true,
    "snapshotFrequency": 24,
    "enabledCaseSensitive": false
}
JSON Key Required Description
clientId TRUE The id of the Client to update
clientName TRUE The Client Name
modules TRUE A list of modules the client has access to
stagingClient FALSE Determines if the client is in staging mode
enableDocumentEntitlement FALSE Whether document entitlements are enabled
enabledEntityTypeEntitlements FALSE Which entity types have entitlements enabled
allow2FA FALSE Whether to allow this client to configure 2 factor authentication
snapshotFrequency FALSE The interval between snapshot runs (in hours)
enabledCaseSensitive FALSE Set case sensitive for translations
Response
{
    "clientId": 2,
    "clientName": "DEF Capital Management",
    "s3Folder": "d8a58971-b869-432a-8e9c-3df1048ab1b3",
    "stagingClient": true,
    "modules": ["Management", "Roles", "Users", ..."SSO", "DataMonitoring"],
    "enableDocumentEntitlement": true,
    "enabledEntityTypeEntitlements": [],
    "allow2FA": true,
    "snapshotFrequency": 24,
    "enabledCaseSensitive": false
}

Get Client auth/getClient

A person with Super Admin privileges can retrieve specific clients by specifying the clientId in the query string

Query String

auth/getClient?clientId=2

Parameter Required Description
clientId FALSE The id of the Client to retrieve
Response
{
    "clientId": 2,
    "clientName": "DEF Capital Management",
    "s3Folder": "d8a58971-b869-432a-8e9c-3df1048ab1b3",
    "stagingClient": true,
    "modules": ["Management", "Roles", "Users", ..."SSO", "DataMonitoring"],
    "enableDocumentEntitlement": true,
    "enabledEntityTypeEntitlements": [],
    "allow2FA": true,
    "snapshotFrequency": 24,
    "enabledCaseSensitive": false
}

Clear Client /auth/clearClient

Not Implemented 501

Update Client Whitelisted Domains

Allows a Client Admin to update to the list of whitelisted domains for a client. Will overwrite the current contents of the domain whitelist. Current Valid Types: "iframe"

Service Call Details

Parameter Value
End Point https://api.fundpress.io/auth/client/domainwhitelist/upsert
Headers X-KSYS-TOKEN
Content Type application/json
HTTP Method POST
Return Type JSON
Return Data The updated list of whitelisted domains for a client
Body
{
    "clientName": "ABC Capital Management",
    "whitelist": [
        {
            "type": "iframe",
            "domain": "abccapital.com"
        }
    ]
}
Response
{
    "clientName": "ABC Capital Management",
    "whitelist": [
        {
            "type": "iframe",
            "domain": "abccapital.com"
        }
    ]
}

Get Client Whitelisted Domains

Allows a Client Admin to get the list of whitelisted domains for a client.

Service Call Details

Parameter Value
End Point https://api.fundpress.io/auth/client/domainwhitelist/list
Headers X-KSYS-TOKEN
Content Type application/json
HTTP Method POST
Return Type JSON
Return Data The updated list of whitelisted domains for a client
Body
{
    "clientName": "ABC Capital Management"
}
Response
{
    "clientName": "ABC Capital Management",
    "whitelist": [
        {
            "type": "iframe",
            "domain": "abccapital.com"
        }
    ]
}

Get Client 2FA Settings

Allows a user to get the 2FA settings for their client

Service Call Details

Parameter Value
End Point https://api.fundpress.io/auth/2fa/settings
Headers X-KSYS-TOKEN
Content Type application/json
HTTP Method POST
Return Type JSON
Return Data The 2FA settings for the client
Response
{
    "settings": {
        "allow2FA": 1,
        "enabled2FAMethods": ["PUSH", "TEXT", "CALL"]
    }
}