Endpoints, Exceptions, and basic API obj with auth and getters
This commit is contained in:
parent
c6baf34a15
commit
6d47993aee
3 changed files with 215 additions and 0 deletions
108
endpoints.py
Normal file
108
endpoints.py
Normal file
|
@ -0,0 +1,108 @@
|
|||
import exceptions
|
||||
|
||||
urls = {
|
||||
'root': '/api/',
|
||||
'articles-list': '/api/cotisations/articles/',
|
||||
'articles-details': '/api/cotisations/articles/{pk}/',
|
||||
'banques-list': '/api/cotisations/banques/',
|
||||
'banques-details': '/api/cotisations/banques/{pk}/',
|
||||
'cotisations-list': '/api/cotisations/cotisations/',
|
||||
'cotisations-details': '/api/cotisations/cotisations/{pk}/',
|
||||
'factures-list': '/api/cotisations/factures/',
|
||||
'factures-details': '/api/cotisations/factures/{pk}/',
|
||||
'paiments-list': '/api/cotisations/paiements/',
|
||||
'paiements-details': '/api/cotisations/paiements/{pk}/',
|
||||
'ventes-list': '/api/cotisations/ventes/',
|
||||
'ventes-details': '/api/cotisations/ventes/{pk}/',
|
||||
'domains-list': '/api/machines/domains/',
|
||||
'domains-details': '/api/machines/domains/{pk}/',
|
||||
'extensions-list': '/api/machines/extensions/',
|
||||
'extensions-details': '/api/machines/extensions/{pk}/',
|
||||
'interfaces-list': '/api/machines/interfaces/',
|
||||
'interfaces-details': '/api/machines/interfaces/{pk}/',
|
||||
'iplists-list': '/api/machines/iplists/',
|
||||
'iplists-details': '/api/machines/iplists/{pk}/',
|
||||
'iptypes-list': '/api/machines/iptypes/',
|
||||
'iptypes-details': '/api/machines/iptypes/{pk}/',
|
||||
'ipv6lists-list': '/api/machines/ipv6lists/',
|
||||
'ipv6lists-details': '/api/machines/ipv6lists/{pk}/',
|
||||
'machines-list': '/api/machines/machines/',
|
||||
'machines-details': '/api/machines/machines/{pk}/',
|
||||
'machinetypes-list': '/api/machines/machinetypes/',
|
||||
'machinetypes-details': '/api/machines/machinetypes/{pk}/',
|
||||
'mx-list': '/api/machines/mx/',
|
||||
'mx-details': '/api/machines/mx/{pk}/',
|
||||
'nas-list': '/api/machines/nas/',
|
||||
'nas-details': '/api/machines/nas/{pk}/',
|
||||
'ns-list': '/api/machines/ns/',
|
||||
'ns-details': '/api/machines/ns/{pk}/',
|
||||
'ouvertureportlists-list': '/api/machines/ouvertureportlists/',
|
||||
'ouvertureportlists-details': '/api/machines/ouvertureportlists/{pk}/',
|
||||
'ouvertureports-list': '/api/machines/ouvertureports/',
|
||||
'ouvertureports-details': '/api/machines/ouvertureports/{pk}/',
|
||||
'servicelinks-list': '/api/machines/servicelinks/',
|
||||
'servicelinks-details': '/api/machines/servicelinks/{pk}/',
|
||||
'services-list': '/api/machines/services/',
|
||||
'services-details': '/api/machines/services/{pk}/',
|
||||
'soa-list': '/api/machines/soa/',
|
||||
'soa-details': '/api/machines/soa/{pk}/',
|
||||
'srv-list': '/api/machines/srv/',
|
||||
'srv-details': '/api/machines/srv/{pk}/',
|
||||
'txt-list': '/api/machines/txt/',
|
||||
'txt-details': '/api/machines/txt/{pk}/',
|
||||
'vlans-list': '/api/machines/vlans/',
|
||||
'vlans-details': '/api/machines/vlans/{pk}',
|
||||
'accesspoint-list': '/api/topologie/acesspoint/',
|
||||
'accesspoint-details': '/api/topologie/acesspoint/{pk}/',
|
||||
'building-list': '/api/topologie/building/',
|
||||
'building-details': '/api/topologie/building/{pk}/',
|
||||
'constructorswitch-list': '/api/topologie/constructorswitch/',
|
||||
'contructorswitch-details': '/api/topologie/constructorswitch/{pk}/',
|
||||
'modelswitch-list': '/api/topologie/modelswitch/',
|
||||
'modelswitch-details': '/api/topologie/modelswitch/{pk}/',
|
||||
'room-list': '/api/topologie/room/',
|
||||
'room-details': '/api/topologie/room/{pk}/',
|
||||
'stack-list': '/api/topologie/stack/',
|
||||
'stack-details': '/api/topologie/stack/{pk}/',
|
||||
'switch-list': '/api/topologie/switch/',
|
||||
'switch-details': '/api/topologie/switch/{pk}/',
|
||||
'switchbay-list': '/api/topologie/switchbay/',
|
||||
'switchbay-details': '/api/topologie/switchbay/{pk}/',
|
||||
'switchport-list': '/api/topologie/switchport/',
|
||||
'switchport-details': '/api/topologie/switchport/{pk}/',
|
||||
'adherents-list': '/api/users/adherents/',
|
||||
'adherents-details': '/api/users/adherents/{pk}/',
|
||||
'bans-list': '/api/users/bans/',
|
||||
'bans-details': '/api/users/bans/{pk}/',
|
||||
'clubs-list': '/api/users/clubs/',
|
||||
'clubs-details': '/api/users/clubs/{pk}/',
|
||||
'listrights-list': '/api/users/listrights/',
|
||||
'listrights-details': '/api/users/listrights/{pk}/',
|
||||
'schools-list': '/api/users/schools/',
|
||||
'schools-details': '/api/users/schools/{pk}/',
|
||||
'serviceusers-list': '/api/users/serviceusers/',
|
||||
'serviceusers-details': '/api/users/serviceusers/{pk}/',
|
||||
'shells-list': '/api/users/shells/',
|
||||
'shells-details': '/api/users/shells/{pk}/',
|
||||
'users-list': '/api/users/users/',
|
||||
'users-details': '/api/users/users/{pk}/',
|
||||
'whitelists-list': '/api/users/whitelists/',
|
||||
'whitelists-details': '/api/users/whitelists/{pk}/',
|
||||
'token': '/api/token-auth/',
|
||||
}
|
||||
|
||||
|
||||
def get_names():
|
||||
return urls.keys()
|
||||
|
||||
|
||||
def get_endpoint_for(name, **kwargs):
|
||||
try:
|
||||
url=urls[name]
|
||||
except KeyError as e:
|
||||
raise exceptions.URLNameNotExists(name)
|
||||
else:
|
||||
try:
|
||||
return url.format_map(kwargs)
|
||||
except KeyError as e:
|
||||
raise exceptions.URLParameterMissing(e)
|
Loading…
Add table
Add a link
Reference in a new issue