Authenticatie
Geef een API token mee in een GET parameter genaamd 'api_token={api_token}'. Deze API token is persoonsgebonden en kan worden aangevraagd via support@projectie.com
Request limiet
Er is een limiet voor het doen van aanvragen naar een API resource. Er mag per resource een maximum van 60 requests per minuut gedaan worden. Bij iedere request worden de volgende headers in de response mee gegeven
| x-ratelimit-limit | Hoeveelheid requests die per minuut gedaan mogen worden |
| x-ratelimit-remaining | Hoeveelheid requests die nog gedaan mogen worden deze minuut.
|
Als de limiet wordt overschreven zal er een extra header worden terug gegeven.
| retry-after | De hoeveelheid tijd in seconden die gewacht moet worden voordat de request opnieuw uitgevoerd mag worden |
Pagination
Sommige resultaten worden opgedeelt in pagina's. Deze urls zijn aangegeven doordat er | Paginated achter de beschrijving staat. Er kan gewisseld worden van pagina door een GET parameter genaamd 'page={pagina_nummer}' mee te geven
De volgende parameters kunnen meegegeven worden om de pagination te beinvloeden
| page | Geef aan welke pagina teruggegeven moet worden |
| per_page | Kies hoeveel items er per pagina getoond worden | Maximaal 100 |
GET: /members | Paginated
Geeft een lijst van leden terug.Changes Since
Het is mogelijk om een lijst op te halen met veranderingen sinds een bepaalde tijd. Dit doe je door de volgende GET parameter mee te gevenParameters:
| Key | Beschrijving | Noodzaak |
| changes_since | De timestamp vanaf wanneer je de veranderingen wilt terug krijgen | optioneel |
| Key | Beschrijving |
| id | Member id | unique
|
| users_id | Id van gekoppelde user |
debit_nr
| Debiteuren nummer
|
| member_type_id | Id van gekoppelde member type |
| group_ids | Een lijst met id's van de groepen waar deze gebruiker toe behoord
|
| initials | Initialen |
| first_name | Voornaam |
| last_name | Achternaam |
| email | E-mailadres |
| year | Startjaar bij Minerva |
| gender | geslacht [m => Man, v => Vrouw, a => Anders] |
| address | Adres |
| postal_code | Postcode |
| city | Woonplaats |
| country_code | Landcode in twee letters (ISO 3166-1 alpha-2) |
| payment_type_id | Id van gekoppelde payment type |
| phone | Telefoonnummer algemeen |
| phone_mobile | Mobiel nummer |
| phone_work | Werk nummer |
| company | Werkgever |
| job | Baan |
| department | Afdeling werkgever |
| twitter | Twitter profiel URL |
| linkedin | Linkedin profiel URL |
| facebook | Facebook profiel URL |
| website | Website URL |
| notes | Extra persoonsnotities |
GET: /members/{members_id}
Geeft een specifiek lid terug met de objecten van de gekoppelde resources| id | Member id | unique
|
| users_id | Id van gekoppelde user |
| user | User object |
debit_nr
| Debiteuren nummer
|
| member_type_id | Id van gekoppelde member type |
| member_type | Member type object |
| group_ids | Een lijst met id's van de groepen waar deze gebruiker toe behoord |
| initials | Initialen |
| first_name | Voornaam |
| last_name | Achternaam |
| year | Startjaar bij Minerva |
| gender | geslacht [m => Man, v => Vrouw, a => Anders] |
| address | Adres |
| postal_code | Postcode |
| city | Woonplaats |
| country_code | Landcode in twee letters (ISO 3166-1 alpha-2) |
| payment_type_id | Id van gekoppelde payment type |
| payment_type | Payment type object |
| phone | Telefoonnummer algemeen |
| phone_mobile | Mobiel nummer |
| phone_work | Werk nummer |
| company | Werkgever |
| job | Baan |
| department | Afdeling werkgever |
| twitter | Twitter profiel URL |
| linkedin | Linkedin profiel URL |
| facebook | Facebook profiel URL |
| website | Website URL |
| notes | Extra persoonsnotities |
PUT/PATCH: /members/{members_id}
Update het een lid.| Key | Beschrijving | Noodzaak |
debit_nr
| Debiteuren nummer
| Optioneel
|
| member_type_id | Id van gekoppelde member type | Optioneel
|
| group_ids | Een lijst met id's van de groepen waar deze gebruiker toe behoord
| Optioneel
|
| initials | Initialen | Optioneel
|
| first_name | Voornaam | Optioneel
|
| last_name | Achternaam | Optioneel
|
| email | E-mailadres | Optioneel
|
| year | Startjaar bij Minerva | Optioneel
|
| gender | geslacht [m => Man, v => Vrouw, a => Anders] | Optioneel
|
| address | Adres | Optioneel
|
| postal_code | Postcode | Optioneel
|
| city | Woonplaats | Optioneel
|
| country_code | Landcode in twee letters (ISO 3166-1 alpha-2) | Optioneel
|
| payment_type_id | Id van gekoppelde payment type | Optioneel
|
| phone | Telefoonnummer algemeen | Optioneel
|
| phone_mobile | Mobiel nummer | Optioneel
|
| phone_work | Werk nummer | Optioneel
|
| company | Werkgever | Optioneel
|
| job | Baan | Optioneel
|
| department | Afdeling werkgever | Optioneel
|
| twitter | Twitter profiel URL | Optioneel
|
| linkedin | Linkedin profiel URL | Optioneel
|
| facebook | Facebook profiel URL | Optioneel
|
| website | Website URL | Optioneel
|
| notes | Extra persoonsnotities | Optioneel
|
POST: /members/{members_id}/link/groups
Maakt het mogelijk groepen te linken aan een specifiek lid
LET OP: Alle groepen niet niet meegegeven worden zullen worden losgekoppeld!
Data:
| Key | Beschrijving | Noodzaak |
| group_ids | Een volledige JSON array met de id's van alle groepen die aan een lid gekoppeld zijn. | Verplicht |
DELETE: /members/{members_id}
Verwijderd een lid en alle resource koppelingen