Developer Quickstart

Important information for the developer

Overview

Using our API you can build websites for your Ciients using our Content, Tools and Resources. We keep it all up-to-date and compliant, serving it with all the regulatory disclaimers required by the Financial Conduct Authority.

You and your Client focus on the website design and don't need to keep track of changing data and regulation. Changes or additions we make, simply appear on your Clients' websites.

Please note until we have a direct debit in place the API will function in developer mode - data served may be limited, obfuscated or out of date.

The Adviser Portals API is a REST based implementation. Currently in Version 1.0 only GET requests are supported.

Responses are served in either XML or JSON. We have provided several wrapper classes to make working with the API easier. Visit our Libraries section for more informtion.

Request Format

A typical request to the API would be made in this format.

https://www.ifaportals.co.uk/api/1.0/request/apikey/responseformat

A real world example which requests research links and returns them as XML, would look like this.

https://www.ifaportals.co.uk/api/1.0/researchlinks/1a79a...326e338ae533/xml

Request Filters

Many requests support 'filters' to return single or subsets of available data. The filter key and value are always the last two parameters of the request. They are optional.

Single data item

https://www.ifaportals.co.uk/api/1.0/researchlinks/1a79a...6e338ae533/xml/researchid/1

Range of data items

https://www.ifaportals.co.uk/api/1.0/researchlinks/1a79a...6e338ae533/xml/researchid/2-5

Specific data items

https://www.ifaportals.co.uk/api/1.0/researchlinks/1a79a...338ae533/xml/researchid/1+4+6

Response Format

Responses can be formatted as XML or JSON.

XML response

<?xml version="1.0" encoding="utf-8"?>
<researchLinks>
    <header>
        <exitSiteStatement><![CDATA[You are now departing from the regulatory site of The extra big big business name Limited. Neither The extra big big business name Limited nor Threesixty is responsible for the accuracy of the information contained within the site.]]></exitSiteStatement>
    </header>
    <data>
        <researchLink>
            <researchID><![CDATA[10]]></researchID>
            <researchTitle><![CDATA[the Money Advice Service]]></researchTitle>
            <researchDescription>
                <![CDATA[Impartial information and tools to help you work out what’s right for you.]]>
            </researchDescription>
            <researchButtonUri><![CDATA[http://cdn.ifaportals.co.uk/research_links_button_money_advice_service.png]]></researchButtonUri>
            <researchUri><![CDATA[http://www.moneyadviceservice.org.uk]]></researchUri>
        </researchLink>
    </data>
</researchLinks>

JSON Response

{
    "researchLinks": {
        "header": {
            "exitSiteStatement": "You are now departing from the regulatory site of The extra big big business name Limited. Neither The extra big big business name Limited nor Threesixty is responsible for the accuracy of the infomation contained within the site."
        },
        "data": [{
            "researchID": "10",
            "researchTitle": "the Money Advice Service",
            "researchDescription": "Visit the Money Advice Service from the Financial Services Authority. Impartial information and tools to help you work out what\u2019s right for you.",
            "researchButtonUri": "http:\/\/www.ifaportals.com\/2012\/images\/research\/buttons\/research_links_button_money_advice_service.png",
            "researchUri": "http:\/\/www.moneyadviceservice.org.uk"
        }]
    }
}

'Wrapper' Classes

We have several 'wrapper' class libraries available. These enable you to work with the API more productively converting your native programming language into RESTful API requests and having the returned responses transformed to HTML output, all behind the scenes.

These wrappers can be amended or overriden to style the response into any way you like.

PHP Example

// Include the class
require('ifaportals-api.php');

// Create API object
$api = new ifaPortalApi();

// Example 1 - Output all available Research Links
echo $api->getResearchLinks();
    
// Example 2 - Output single Research Link    
echo $api->getResearchLinks(2);

// Example 3 - Output range of Research Links    
echo $api->getResearchLinks('2-5');

// Example 4 - Output selected Research Links    
echo $api->getResearchLinks('2,4,7');
   

Full documentation of the API can be found here.