Module connectedcar.api
Expand source code
from . import const, requester
class Api(object):
def __init__(self, access_token):
""" Initialize a new Api object to directly make requests to Ford.
Args:
access_token (str): Ford access token
"""
self.access_token = access_token
self.auth = {
'auth-token': access_token,
'Accept': '*/*',
'Accept-Language': 'en-US',
'User-Agent': 'fordpass-na/353 CFNetwork/1121.2.2 Darwin/19.3.0',
'Content-Type': 'application/json',
'Accept-Encoding': 'gzip, deflate, br',
'Application-Id': const.APP_ID
}
def _format(self, endpoint, context):
""" Generates the formated URL
Args:
endpoint (str): the Ford endpoint of interest
context (str): the API endpoint context
Returns:
str: formatted url
"""
return '{}/{}'.format(endpoint, context)
def get(self, endpoint, context):
""" Sends GET requests to Ford
Args:
endpoint (str): the Ford endpoint of interest
context (str): the API endpoint context
Returns:
Response: response from the request to the Ford API
"""
url = self._format(endpoint, context)
headers = self.auth
return requester.call('GET', url, headers=headers)
def post(self, endpoint, context, data):
""" Sends POST requests to Ford
Args:
endpoint (str): the Ford endpoint of interest
context (str): the API endpoint context
data (array): data to be sent with request
Returns:
Response: response from the request to the Ford API
"""
url = self._format(endpoint, context)
headers = self.auth
return requester.call('POST', url, headers=headers, data=data)
def put(self, endpoint, context, data):
""" Sends PUT requests to Ford
Args:
endpoint (str): the Ford endpoint of interest
context (str): the API endpoint context
data (array): data to be sent with request
Returns:
Response: response from the request to the Ford API
"""
url = self._format(endpoint, context)
headers = self.auth
return requester.call('PUT', url, headers=headers, data=data)
def delete(self, endpoint, context):
""" Sends DELETE requests to Ford
Args:
endpoint (str): the Ford endpoint of interest
context (str): the API endpoint context
Returns:
Response: response from the request to the Ford API
"""
url = self._format(endpoint, context)
headers = self.auth
return requester.call('DELETE', url, headers=headers)
def action(self, method, endpoint, context):
""" Sends universal requests to Ford
Args:
method (str): the request type
endpoint (str): the Ford endpoint of interest
context (str): the API endpoint context
Returns:
Response: response from the request to the Ford API
"""
url = self._format(endpoint, context)
headers = self.auth
return requester.call(method, url, headers=headers)
Classes
-
class Api (access_token)
-
Initialize a new Api object to directly make requests to Ford.
Args
-
access_token
:str
- Ford access token
Expand source code
class Api(object): def __init__(self, access_token): """ Initialize a new Api object to directly make requests to Ford. Args: access_token (str): Ford access token """ self.access_token = access_token self.auth = { 'auth-token': access_token, 'Accept': '*/*', 'Accept-Language': 'en-US', 'User-Agent': 'fordpass-na/353 CFNetwork/1121.2.2 Darwin/19.3.0', 'Content-Type': 'application/json', 'Accept-Encoding': 'gzip, deflate, br', 'Application-Id': const.APP_ID } def _format(self, endpoint, context): """ Generates the formated URL Args: endpoint (str): the Ford endpoint of interest context (str): the API endpoint context Returns: str: formatted url """ return '{}/{}'.format(endpoint, context) def get(self, endpoint, context): """ Sends GET requests to Ford Args: endpoint (str): the Ford endpoint of interest context (str): the API endpoint context Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call('GET', url, headers=headers) def post(self, endpoint, context, data): """ Sends POST requests to Ford Args: endpoint (str): the Ford endpoint of interest context (str): the API endpoint context data (array): data to be sent with request Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call('POST', url, headers=headers, data=data) def put(self, endpoint, context, data): """ Sends PUT requests to Ford Args: endpoint (str): the Ford endpoint of interest context (str): the API endpoint context data (array): data to be sent with request Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call('PUT', url, headers=headers, data=data) def delete(self, endpoint, context): """ Sends DELETE requests to Ford Args: endpoint (str): the Ford endpoint of interest context (str): the API endpoint context Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call('DELETE', url, headers=headers) def action(self, method, endpoint, context): """ Sends universal requests to Ford Args: method (str): the request type endpoint (str): the Ford endpoint of interest context (str): the API endpoint context Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call(method, url, headers=headers)
Methods
-
def action(self, method, endpoint, context)
-
Sends universal requests to Ford
Args
-
method
:str
- the request type
-
endpoint
:str
- the Ford endpoint of interest
-
context
:str
- the API endpoint context
Returns
Response
- response from the request to the Ford API
Expand source code
def action(self, method, endpoint, context): """ Sends universal requests to Ford Args: method (str): the request type endpoint (str): the Ford endpoint of interest context (str): the API endpoint context Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call(method, url, headers=headers)
-
-
def delete(self, endpoint, context)
-
Sends DELETE requests to Ford
Args
-
endpoint
:str
- the Ford endpoint of interest
-
context
:str
- the API endpoint context
Returns
Response
- response from the request to the Ford API
Expand source code
def delete(self, endpoint, context): """ Sends DELETE requests to Ford Args: endpoint (str): the Ford endpoint of interest context (str): the API endpoint context Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call('DELETE', url, headers=headers)
-
-
def get(self, endpoint, context)
-
Sends GET requests to Ford
Args
-
endpoint
:str
- the Ford endpoint of interest
-
context
:str
- the API endpoint context
Returns
Response
- response from the request to the Ford API
Expand source code
def get(self, endpoint, context): """ Sends GET requests to Ford Args: endpoint (str): the Ford endpoint of interest context (str): the API endpoint context Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call('GET', url, headers=headers)
-
-
def post(self, endpoint, context, data)
-
Sends POST requests to Ford
Args
-
endpoint
:str
- the Ford endpoint of interest
-
context
:str
- the API endpoint context
-
data
:array
- data to be sent with request
Returns
Response
- response from the request to the Ford API
Expand source code
def post(self, endpoint, context, data): """ Sends POST requests to Ford Args: endpoint (str): the Ford endpoint of interest context (str): the API endpoint context data (array): data to be sent with request Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call('POST', url, headers=headers, data=data)
-
-
def put(self, endpoint, context, data)
-
Sends PUT requests to Ford
Args
-
endpoint
:str
- the Ford endpoint of interest
-
context
:str
- the API endpoint context
-
data
:array
- data to be sent with request
Returns
Response
- response from the request to the Ford API
Expand source code
def put(self, endpoint, context, data): """ Sends PUT requests to Ford Args: endpoint (str): the Ford endpoint of interest context (str): the API endpoint context data (array): data to be sent with request Returns: Response: response from the request to the Ford API """ url = self._format(endpoint, context) headers = self.auth return requester.call('PUT', url, headers=headers, data=data)
-
-