Introduction
This REST API would be used to interact with NodiRef's Referral Management System, in order to interact with the routes, you will need to authenticate your requests, see the Authentication section on this documentation so you understand how to use it.
With this API, you will be able to interact with all the resources from the Referral Management System programatically, the main idea of NodiRef, is that it can act like any other service in your back-end, to manage your partners, referral links and rewards, this way you can offload all the complexity of your reward system to us, and you can handle your main business logic.
Authentication
In order to be able to interact with private endpoints of this API, you will need a API Token that you can get from your profile in the Back-Office. Once you get your token, you can use it like a Bearer Token in all your requests, so we can authenticate you. You can use it as follows:
Filters
Query Param: filter[filter_name]=filter_value
In our API, we follow a very simple principle that applies to Filters, Sorts, Pagination and other operation types, which as adding a query parameter with the type of operation, the field that's used and the value, for example:
And internally we will detect it and perform a filter on your request to get the results you are looking for. Typically on every resource you will have a list of filterable fields that you can use.
Pagination
For the pagination, you will have different options that you could use, similar to the filters, we use an operation query param, which is page, and we set the options we want, for example:
Prop | Type | Default |
---|---|---|
item_per_page or page[size]? | number | 10 |
page or page[number]? | number | 1 |
Normally you would choose wether you use page
and item_per_page
or
page[number]
and page[size]
, we gave you both possibilities and it's up
to you to choose which one you are more comfortable using.
Includes
If you want to have extra information on your list, you can include some
information that's related to the resource you are querying, for instance,
maybe if you are querying the Partners list, you would want to have the
Project information whose Partner belong to, you can do this by including
the includes
query parameter into your request, and selecting the
available relationship. You can concatenate the includes by separating them
with a comma if you need to add more than one. For example:
To have the available fields, you can check in the requests directly, it will be marked there.