Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Live Search
spaceKeyHG
additionalpage excerpt
placeholderSearch for a solution
typepage

Our API Feeds can be used to connect the accessplanit training management system to 3rd party cloud-based software, such as a CRM, HR, VLE, and finance systems, allowing you to sync your data with ease!

You will need
Info

The accessplanit API Feeds are a great way to integrate your other systems with your accessplanit platform to streamline your operations!

Our API Feeds allow you to integrate your information with other other third party software. From employee and customer-based software such as VLE and CRM, to financial and invoicing programs, our API Feeds have the ability to automate data rekeying to save you both time and money.

Using the API Feeds for your integration

With our API Feeds module, you will have access to every available end-point, not every area of your accessplanit platform is covered by the feed so please see below to read more about what data is available through the existing API Feed endpoints.

You are able to use the RESTful API Feeds to build as many integrations with other software as you require.

To use the feeds, you will need either middleware to sit in the middle of the two systems to connect them, or a developer to connect

your systems

the software together.

To access

As the

RESTful API

API Feeds are an additional module, please contact your assigned Customer Success Manager (CSM).

Responses are in JSON by default, but can be returned as XML; to request XML, add a Request Header of Accept with a value of application/xml

Note

DISCLAIMER: By using accessplanit APIs, you agree to our terms of use.


What

Feeds

platform areas are available within the API Module?

There are three major areas of your accessplanit that are covered by the API Feeds; Courses, Finance, and Users. you may use a combination of these for your integration.

  • Course and Delegate API Feeds
  • Invoice and Transaction API Feeds
  • Users and Accounts API Feeds
    • There are several endpoints available for Course based information:

      • Course Templates

      • Courses (dates)

      • Delegates

      • Trainers

      • Venues

    • Financial API Feeds
      There are several endpoints available for financial based information:

      • Invoices

      • Invoice Items

      • Transactions (payments)

    • User API Feeds
      There are several endpoints available for user based information

      • Users

      • Companies (accounts)

      • Company Groups (account groups)


    Developer Documentation

    The endpoint URLs and developer information can be found in the below documentation:

    https://documenter.getpostman.com/view/10924757/SzYexcAy?version=latest#intro


    API Feed Restrictions

    Each individual API Feed end-point is restricted to 5000 requests per hour, unless your

    accessplanit system

    accessplanit platform is hosted on a dedicated server (please contact our

    helpdesk Delete resource

    customer support team if you are unsure of this)


    HTTP Verbs

    The accessplanit API uses HTTP verbs appropriate for each action:

    Verb

    Description

    GET

    Retrieve resource

    POST

    Create resource

    PUT

    Update resource

    DELETE

    Info

    We do not currently support deletion of accessplanit records through the API Feed, only GET, POST and PUT.


    Authorization

    A token is required to make any requests on the API. Tokens should be included with every request.

    Tokens are valid for 60 minutes from issue and must be included with every request. The token must be included as a Request Header of Authorization with the value Bearer tokenValue

    Responses

    The status of the response is used to provide feedback about the request:

    Status Code

    Description

    200

    OK – action completed successfully

    201

    Created – Record created successfully

    400

    Error – See “errors” section

    401

    Not authorized – token has not been provided or is invalid

    404

    Not found – url is incorrect or record does not exist

    Errors

     If an error occurs during an operation, the response will have a 400 status code. The response will have a property of Message, which will give clearer information of what issue has occurred. In the case of updating/editing records, another property, ModelState, will be populated. See below for an example response:

    Info
    iconfalse

    {

        "Message": "The request is invalid.",

        "ModelState": {

            "user.DateOfBirth": [

                "An error has occurred."

            ]

        }

    }

    Self-Discovery

    Although there is documentation, the API is designed around HATEOAS principles and encourages self-discovery through the inclusion of links. Consider the example below:

    Infoicon

    false

      {

            "CompanyID": "Example1",

            "Name": "Example Company",

            "MainContactUserID": “exmp1”,

            "EmailAddress": "",

            "ExternalID": null,

            "AddressLineOne": "12 Lancaster Street",

            "Town": "Lancaster",

            "County": "Lancashire",

            "Postcode": "LA1 1NY",

            "Country": "United Kingdom",

            "Links": [

                {

                    "Rel": "Self",

                    "Href": "/api/v1/companies/Example1",

                    "Action": "GET"

                },

                {

                    "Rel": "Self",

                    "Href": "/api/v1/companies/Example1",

                    "Action": "PUT"

                },

                {

                    "Rel": "CompanyGroups",

                    "Href": "/api/v1/companies/Example1/companygroups",

                    "Action": "GET"

                },

                {

                    "Rel": "MainContactUser",

                    "Href": "/api/v1/users/exmp1",

                    "Action": "GET"

                }

            ]

        }

    The Links property defines all the links that are applicable to this company. It also defines which actions are suitable for the provided links. Note how there are two Self-links, but one has the GET action and the other supports the

    POST

    PUT action. This defines that the Company supports being read as well as being updated.

    Note

    Please note: Heavy use of the API Feeds may negatively impact platform speed and performance.


    Pagination 

    Each GET call will retrieve the first 500 records.

    Pagination is

    possible

    needed within the feeds

    via query

    if you are requesting a large amount of records.

    For this, you can use the query string parameters PageSize and PageIndex.

    PageSize = the number of results to return

    PageIndex = the page to return

    Please note that PageIndex starts at 1, not 0.

    Example:

    GET 'https://systemname.accessplanit.com/accessplan//api/v1/users?PageSize=10&PageIndex=2'

    On this page:

    toc


    FAQs

    Do you support requests via webhooks?
    Unfortunately we do not yet support webhooks.
    If this functionality would be helpful to you please log this as a product suggestion in our Product Portal, please include how you would use this feature.

    Can you filter Course Dates by Course Template ID?
    This is not possible within the GET request itself, however you can use the ‘Links’ section to identify which Course Template is in use for each Course Dates.

    How can I get a list of Courses that a Trainer is teaching?
    The Delegates API Feed lists all of the Courses that a User is linked to, this is both as a Delegate and as a Trainer.
    You can identify if the User is a Delegate on the Course, or the Trainer of the Course, by referencing the ‘Status’ field, this will show as “Unknown“ if the User is assigned as Trainer on the course.
    Unfortunately, you cannot currently filter the above endpoint on the Unknown status (to only show courses they’re training on) as this does not exist as a true Status option.

    Can I cancel/transfer Delegates using the API feed?
    You can update a Delegate’s status to ‘Cancelled’ or ‘Transferred’ via the API Feed, this will only update their status it will not trigger any automated finance changes, such as refunds or Credit Notes. These automated finance actions are only available via the Cancellation Wizard or the Transfer Wizard.

    Can I change the Account Group ID of an Account through the API Feed?
    You can add/change Accounts Groups into the platform via the API Feeds, but you cannot add an Account into a different Account Group via the feeds, this action must be completed within the platform by an Administrator.

    Can I filter my API Feeds with one parameter OR another?
    Unfortunately we do not yet support OR filters for the API Feeds.
    If this functionality would be helpful to you please log this as a product suggestion in our Product Portal, please include how you would use this feature.

    What Filter Operators are available for me when filtering the results of the API Feeds?
    There are many operators available!

    Filter by

    Format required

    Examples

    Less than

    lt

    • Score=lt:40

    • DateBooked=lt:2021-11-30T18:00:00

    • PlacesRemaining=lt:2

    Greater than

    gt

    • Score=gt:79

    • DateBooked=gt:2021-10-01T07:59:59

    • PlacesRemaining=gt:3

    Equal to

    (not available for text fields)

    =

    • Status=Completed

    • CourseDateID=12066

    • CourseIsAdvertised=true

    Blank

    =NULL

    • StartDate=NULL

    Not equal to

    =not:

    • Status=not:Cancelled

    • PONumber=not:NULL

    • Status=not:Locked

    Like / contains

    (text fields only)

    =

    • Name=“First Aid”

    • UserID=TaShall