|
|
- # coding: utf-8
-
- """
- Gate API v4
-
- Welcome to Gate.io API APIv4 provides spot, margin and futures trading operations. There are public APIs to retrieve the real-time market statistics, and private APIs which needs authentication to trade on user's behalf. # noqa: E501
-
- Contact: support@mail.gate.io
- Generated by: https://openapi-generator.tech
- """
-
-
- from __future__ import absolute_import
-
- import re # noqa: F401
-
- # python 2 and python 3 compatibility library
- import six
-
- from gate_api.api_client import ApiClient
- from gate_api.exceptions import ApiTypeError, ApiValueError # noqa: F401
-
-
- class MarginApi(object):
- """NOTE: This class is auto generated by OpenAPI Generator
- Ref: https://openapi-generator.tech
-
- Do not edit the class manually.
- """
-
- def __init__(self, api_client=None):
- if api_client is None:
- api_client = ApiClient()
- self.api_client = api_client
-
- def list_margin_currency_pairs(self, **kwargs): # noqa: E501
- """List all supported currency pairs supported in margin trading # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_margin_currency_pairs(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.MarginCurrencyPair]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_margin_currency_pairs_with_http_info(**kwargs) # noqa: E501
-
- def list_margin_currency_pairs_with_http_info(self, **kwargs): # noqa: E501
- """List all supported currency pairs supported in margin trading # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_margin_currency_pairs_with_http_info(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.MarginCurrencyPair], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = []
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError(
- "Got an unexpected keyword argument '%s'" " to method list_margin_currency_pairs" % k
- )
- local_var_params[k] = v
- del local_var_params['kwargs']
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = [] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/currency_pairs',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[MarginCurrencyPair]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_margin_currency_pair(self, currency_pair, **kwargs): # noqa: E501
- """Query one single margin currency pair # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_margin_currency_pair(currency_pair, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency_pair: Margin currency pair (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.MarginCurrencyPair
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_margin_currency_pair_with_http_info(currency_pair, **kwargs) # noqa: E501
-
- def get_margin_currency_pair_with_http_info(self, currency_pair, **kwargs): # noqa: E501
- """Query one single margin currency pair # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_margin_currency_pair_with_http_info(currency_pair, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency_pair: Margin currency pair (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.MarginCurrencyPair, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency_pair']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_margin_currency_pair" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'currency_pair' is set
- if self.api_client.client_side_validation and (
- 'currency_pair' not in local_var_params or local_var_params['currency_pair'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `currency_pair` when calling `get_margin_currency_pair`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'currency_pair' in local_var_params:
- path_params['currency_pair'] = local_var_params['currency_pair'] # noqa: E501
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = [] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/currency_pairs/{currency_pair}',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='MarginCurrencyPair', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_funding_book(self, currency, **kwargs): # noqa: E501
- """Order book of lending loans # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_funding_book(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.FundingBookItem]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_funding_book_with_http_info(currency, **kwargs) # noqa: E501
-
- def list_funding_book_with_http_info(self, currency, **kwargs): # noqa: E501
- """Order book of lending loans # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_funding_book_with_http_info(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.FundingBookItem], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_funding_book" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'currency' is set
- if self.api_client.client_side_validation and (
- 'currency' not in local_var_params or local_var_params['currency'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `currency` when calling `list_funding_book`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = [] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/funding_book',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[FundingBookItem]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_margin_accounts(self, **kwargs): # noqa: E501
- """Margin account list # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_margin_accounts(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency_pair: Currency pair
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.MarginAccount]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_margin_accounts_with_http_info(**kwargs) # noqa: E501
-
- def list_margin_accounts_with_http_info(self, **kwargs): # noqa: E501
- """Margin account list # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_margin_accounts_with_http_info(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency_pair: Currency pair
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.MarginAccount], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency_pair']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_margin_accounts" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency_pair' in local_var_params and local_var_params['currency_pair'] is not None: # noqa: E501
- query_params.append(('currency_pair', local_var_params['currency_pair'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/accounts',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[MarginAccount]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_margin_account_book(self, **kwargs): # noqa: E501
- """List margin account balance change history # noqa: E501
-
- Only transferals from and to margin account are provided for now. Time range allows 30 days at most # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_margin_account_book(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: List records related to specified currency only. If specified, `currency_pair` is also required.
- :param str currency_pair: List records related to specified currency pair. Used in combination with `currency`. Ignored if `currency` is not provided
- :param int _from: Start timestamp of the query
- :param int to: Time range ending, default to current time
- :param int page: Page number
- :param int limit: Maximum number of records to be returned in a single list
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.MarginAccountBook]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_margin_account_book_with_http_info(**kwargs) # noqa: E501
-
- def list_margin_account_book_with_http_info(self, **kwargs): # noqa: E501
- """List margin account balance change history # noqa: E501
-
- Only transferals from and to margin account are provided for now. Time range allows 30 days at most # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_margin_account_book_with_http_info(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: List records related to specified currency only. If specified, `currency_pair` is also required.
- :param str currency_pair: List records related to specified currency pair. Used in combination with `currency`. Ignored if `currency` is not provided
- :param int _from: Start timestamp of the query
- :param int to: Time range ending, default to current time
- :param int page: Page number
- :param int limit: Maximum number of records to be returned in a single list
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.MarginAccountBook], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency', 'currency_pair', '_from', 'to', 'page', 'limit']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_margin_account_book" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
-
- if (
- self.api_client.client_side_validation and 'page' in local_var_params and local_var_params['page'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `page` when calling `list_margin_account_book`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 500
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_margin_account_book`, must be a value less than or equal to `500`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_margin_account_book`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
- if 'currency_pair' in local_var_params and local_var_params['currency_pair'] is not None: # noqa: E501
- query_params.append(('currency_pair', local_var_params['currency_pair'])) # noqa: E501
- if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
- query_params.append(('from', local_var_params['_from'])) # noqa: E501
- if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
- query_params.append(('to', local_var_params['to'])) # noqa: E501
- if 'page' in local_var_params and local_var_params['page'] is not None: # noqa: E501
- query_params.append(('page', local_var_params['page'])) # noqa: E501
- if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
- query_params.append(('limit', local_var_params['limit'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/account_book',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[MarginAccountBook]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_funding_accounts(self, **kwargs): # noqa: E501
- """Funding account list # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_funding_accounts(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.FundingAccount]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_funding_accounts_with_http_info(**kwargs) # noqa: E501
-
- def list_funding_accounts_with_http_info(self, **kwargs): # noqa: E501
- """Funding account list # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_funding_accounts_with_http_info(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.FundingAccount], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_funding_accounts" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/funding_accounts',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[FundingAccount]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_loans(self, status, side, **kwargs): # noqa: E501
- """List all loans # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_loans(status, side, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str status: Loan status (required)
- :param str side: Lend or borrow (required)
- :param str currency: Retrieve data of the specified currency
- :param str currency_pair: Currency pair
- :param str sort_by: Specify which field is used to sort. `create_time` or `rate` is supported. Default to `create_time`
- :param bool reverse_sort: Whether to sort in descending order. Default to `true`
- :param int page: Page number
- :param int limit: Maximum number of records to be returned in a single list
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.Loan]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_loans_with_http_info(status, side, **kwargs) # noqa: E501
-
- def list_loans_with_http_info(self, status, side, **kwargs): # noqa: E501
- """List all loans # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_loans_with_http_info(status, side, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str status: Loan status (required)
- :param str side: Lend or borrow (required)
- :param str currency: Retrieve data of the specified currency
- :param str currency_pair: Currency pair
- :param str sort_by: Specify which field is used to sort. `create_time` or `rate` is supported. Default to `create_time`
- :param bool reverse_sort: Whether to sort in descending order. Default to `true`
- :param int page: Page number
- :param int limit: Maximum number of records to be returned in a single list
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.Loan], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['status', 'side', 'currency', 'currency_pair', 'sort_by', 'reverse_sort', 'page', 'limit']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_loans" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'status' is set
- if self.api_client.client_side_validation and (
- 'status' not in local_var_params or local_var_params['status'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `status` when calling `list_loans`") # noqa: E501
- # verify the required parameter 'side' is set
- if self.api_client.client_side_validation and (
- 'side' not in local_var_params or local_var_params['side'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `side` when calling `list_loans`") # noqa: E501
-
- if (
- self.api_client.client_side_validation and 'page' in local_var_params and local_var_params['page'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `page` when calling `list_loans`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_loans`, must be a value less than or equal to `1000`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_loans`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'status' in local_var_params and local_var_params['status'] is not None: # noqa: E501
- query_params.append(('status', local_var_params['status'])) # noqa: E501
- if 'side' in local_var_params and local_var_params['side'] is not None: # noqa: E501
- query_params.append(('side', local_var_params['side'])) # noqa: E501
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
- if 'currency_pair' in local_var_params and local_var_params['currency_pair'] is not None: # noqa: E501
- query_params.append(('currency_pair', local_var_params['currency_pair'])) # noqa: E501
- if 'sort_by' in local_var_params and local_var_params['sort_by'] is not None: # noqa: E501
- query_params.append(('sort_by', local_var_params['sort_by'])) # noqa: E501
- if 'reverse_sort' in local_var_params and local_var_params['reverse_sort'] is not None: # noqa: E501
- query_params.append(('reverse_sort', local_var_params['reverse_sort'])) # noqa: E501
- if 'page' in local_var_params and local_var_params['page'] is not None: # noqa: E501
- query_params.append(('page', local_var_params['page'])) # noqa: E501
- if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
- query_params.append(('limit', local_var_params['limit'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loans',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[Loan]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def create_loan(self, loan, **kwargs): # noqa: E501
- """Lend or borrow # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.create_loan(loan, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param Loan loan: (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.Loan
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.create_loan_with_http_info(loan, **kwargs) # noqa: E501
-
- def create_loan_with_http_info(self, loan, **kwargs): # noqa: E501
- """Lend or borrow # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.create_loan_with_http_info(loan, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param Loan loan: (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.Loan, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method create_loan" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan' is set
- if self.api_client.client_side_validation and (
- 'loan' not in local_var_params or local_var_params['loan'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `loan` when calling `create_loan`") # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- if 'loan' in local_var_params:
- body_params = local_var_params['loan']
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # HTTP header `Content-Type`
- header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
- ['application/json']
- ) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loans',
- 'POST',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='Loan', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def merge_loans(self, currency, ids, **kwargs): # noqa: E501
- """Merge multiple lending loans # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.merge_loans(currency, ids, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param str ids: A comma-separated (,) list of IDs of the loans lent. Maximum of 20 IDs are allowed in a request (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.Loan
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.merge_loans_with_http_info(currency, ids, **kwargs) # noqa: E501
-
- def merge_loans_with_http_info(self, currency, ids, **kwargs): # noqa: E501
- """Merge multiple lending loans # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.merge_loans_with_http_info(currency, ids, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param str ids: A comma-separated (,) list of IDs of the loans lent. Maximum of 20 IDs are allowed in a request (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.Loan, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency', 'ids']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method merge_loans" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'currency' is set
- if self.api_client.client_side_validation and (
- 'currency' not in local_var_params or local_var_params['currency'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `currency` when calling `merge_loans`") # noqa: E501
- # verify the required parameter 'ids' is set
- if self.api_client.client_side_validation and (
- 'ids' not in local_var_params or local_var_params['ids'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `ids` when calling `merge_loans`") # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
- if 'ids' in local_var_params and local_var_params['ids'] is not None: # noqa: E501
- query_params.append(('ids', local_var_params['ids'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/merged_loans',
- 'POST',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='Loan', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_loan(self, loan_id, side, **kwargs): # noqa: E501
- """Retrieve one single loan detail # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_loan(loan_id, side, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param str side: Lend or borrow (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.Loan
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_loan_with_http_info(loan_id, side, **kwargs) # noqa: E501
-
- def get_loan_with_http_info(self, loan_id, side, **kwargs): # noqa: E501
- """Retrieve one single loan detail # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_loan_with_http_info(loan_id, side, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param str side: Lend or borrow (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.Loan, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan_id', 'side']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_loan" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan_id' is set
- if self.api_client.client_side_validation and (
- 'loan_id' not in local_var_params or local_var_params['loan_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `loan_id` when calling `get_loan`") # noqa: E501
- # verify the required parameter 'side' is set
- if self.api_client.client_side_validation and (
- 'side' not in local_var_params or local_var_params['side'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `side` when calling `get_loan`") # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'loan_id' in local_var_params:
- path_params['loan_id'] = local_var_params['loan_id'] # noqa: E501
-
- query_params = []
- if 'side' in local_var_params and local_var_params['side'] is not None: # noqa: E501
- query_params.append(('side', local_var_params['side'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loans/{loan_id}',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='Loan', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def cancel_loan(self, loan_id, currency, **kwargs): # noqa: E501
- """Cancel lending loan # noqa: E501
-
- Only lent loans can be cancelled # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.cancel_loan(loan_id, currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param str currency: Retrieve data of the specified currency (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.Loan
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.cancel_loan_with_http_info(loan_id, currency, **kwargs) # noqa: E501
-
- def cancel_loan_with_http_info(self, loan_id, currency, **kwargs): # noqa: E501
- """Cancel lending loan # noqa: E501
-
- Only lent loans can be cancelled # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.cancel_loan_with_http_info(loan_id, currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param str currency: Retrieve data of the specified currency (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.Loan, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan_id', 'currency']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method cancel_loan" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan_id' is set
- if self.api_client.client_side_validation and (
- 'loan_id' not in local_var_params or local_var_params['loan_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `loan_id` when calling `cancel_loan`") # noqa: E501
- # verify the required parameter 'currency' is set
- if self.api_client.client_side_validation and (
- 'currency' not in local_var_params or local_var_params['currency'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `currency` when calling `cancel_loan`") # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'loan_id' in local_var_params:
- path_params['loan_id'] = local_var_params['loan_id'] # noqa: E501
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loans/{loan_id}',
- 'DELETE',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='Loan', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def update_loan(self, loan_id, loan_patch, **kwargs): # noqa: E501
- """Modify a loan # noqa: E501
-
- Only `auto_renew` modification is supported currently # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.update_loan(loan_id, loan_patch, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param LoanPatch loan_patch: (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.Loan
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.update_loan_with_http_info(loan_id, loan_patch, **kwargs) # noqa: E501
-
- def update_loan_with_http_info(self, loan_id, loan_patch, **kwargs): # noqa: E501
- """Modify a loan # noqa: E501
-
- Only `auto_renew` modification is supported currently # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.update_loan_with_http_info(loan_id, loan_patch, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param LoanPatch loan_patch: (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.Loan, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan_id', 'loan_patch']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method update_loan" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan_id' is set
- if self.api_client.client_side_validation and (
- 'loan_id' not in local_var_params or local_var_params['loan_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `loan_id` when calling `update_loan`") # noqa: E501
- # verify the required parameter 'loan_patch' is set
- if self.api_client.client_side_validation and (
- 'loan_patch' not in local_var_params or local_var_params['loan_patch'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `loan_patch` when calling `update_loan`") # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'loan_id' in local_var_params:
- path_params['loan_id'] = local_var_params['loan_id'] # noqa: E501
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- if 'loan_patch' in local_var_params:
- body_params = local_var_params['loan_patch']
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # HTTP header `Content-Type`
- header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
- ['application/json']
- ) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loans/{loan_id}',
- 'PATCH',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='Loan', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_loan_repayments(self, loan_id, **kwargs): # noqa: E501
- """List loan repayment records # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_loan_repayments(loan_id, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.Repayment]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_loan_repayments_with_http_info(loan_id, **kwargs) # noqa: E501
-
- def list_loan_repayments_with_http_info(self, loan_id, **kwargs): # noqa: E501
- """List loan repayment records # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_loan_repayments_with_http_info(loan_id, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.Repayment], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan_id']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_loan_repayments" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan_id' is set
- if self.api_client.client_side_validation and (
- 'loan_id' not in local_var_params or local_var_params['loan_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `loan_id` when calling `list_loan_repayments`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'loan_id' in local_var_params:
- path_params['loan_id'] = local_var_params['loan_id'] # noqa: E501
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loans/{loan_id}/repayment',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[Repayment]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def repay_loan(self, loan_id, repay_request, **kwargs): # noqa: E501
- """Repay a loan # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.repay_loan(loan_id, repay_request, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param RepayRequest repay_request: (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.Loan
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.repay_loan_with_http_info(loan_id, repay_request, **kwargs) # noqa: E501
-
- def repay_loan_with_http_info(self, loan_id, repay_request, **kwargs): # noqa: E501
- """Repay a loan # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.repay_loan_with_http_info(loan_id, repay_request, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param RepayRequest repay_request: (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.Loan, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan_id', 'repay_request']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method repay_loan" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan_id' is set
- if self.api_client.client_side_validation and (
- 'loan_id' not in local_var_params or local_var_params['loan_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `loan_id` when calling `repay_loan`") # noqa: E501
- # verify the required parameter 'repay_request' is set
- if self.api_client.client_side_validation and (
- 'repay_request' not in local_var_params or local_var_params['repay_request'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `repay_request` when calling `repay_loan`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'loan_id' in local_var_params:
- path_params['loan_id'] = local_var_params['loan_id'] # noqa: E501
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- if 'repay_request' in local_var_params:
- body_params = local_var_params['repay_request']
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # HTTP header `Content-Type`
- header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
- ['application/json']
- ) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loans/{loan_id}/repayment',
- 'POST',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='Loan', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_loan_records(self, loan_id, **kwargs): # noqa: E501
- """List repayment records of a specific loan # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_loan_records(loan_id, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param str status: Loan record status
- :param int page: Page number
- :param int limit: Maximum number of records to be returned in a single list
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.LoanRecord]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_loan_records_with_http_info(loan_id, **kwargs) # noqa: E501
-
- def list_loan_records_with_http_info(self, loan_id, **kwargs): # noqa: E501
- """List repayment records of a specific loan # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_loan_records_with_http_info(loan_id, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Loan ID (required)
- :param str status: Loan record status
- :param int page: Page number
- :param int limit: Maximum number of records to be returned in a single list
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.LoanRecord], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan_id', 'status', 'page', 'limit']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_loan_records" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan_id' is set
- if self.api_client.client_side_validation and (
- 'loan_id' not in local_var_params or local_var_params['loan_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `loan_id` when calling `list_loan_records`"
- ) # noqa: E501
-
- if (
- self.api_client.client_side_validation and 'page' in local_var_params and local_var_params['page'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `page` when calling `list_loan_records`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_loan_records`, must be a value less than or equal to `1000`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_loan_records`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'loan_id' in local_var_params and local_var_params['loan_id'] is not None: # noqa: E501
- query_params.append(('loan_id', local_var_params['loan_id'])) # noqa: E501
- if 'status' in local_var_params and local_var_params['status'] is not None: # noqa: E501
- query_params.append(('status', local_var_params['status'])) # noqa: E501
- if 'page' in local_var_params and local_var_params['page'] is not None: # noqa: E501
- query_params.append(('page', local_var_params['page'])) # noqa: E501
- if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
- query_params.append(('limit', local_var_params['limit'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loan_records',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[LoanRecord]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_loan_record(self, loan_record_id, loan_id, **kwargs): # noqa: E501
- """Get one single loan record # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_loan_record(loan_record_id, loan_id, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_record_id: Loan record ID (required)
- :param str loan_id: Loan ID (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.LoanRecord
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_loan_record_with_http_info(loan_record_id, loan_id, **kwargs) # noqa: E501
-
- def get_loan_record_with_http_info(self, loan_record_id, loan_id, **kwargs): # noqa: E501
- """Get one single loan record # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_loan_record_with_http_info(loan_record_id, loan_id, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_record_id: Loan record ID (required)
- :param str loan_id: Loan ID (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.LoanRecord, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan_record_id', 'loan_id']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_loan_record" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan_record_id' is set
- if self.api_client.client_side_validation and (
- 'loan_record_id' not in local_var_params or local_var_params['loan_record_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `loan_record_id` when calling `get_loan_record`"
- ) # noqa: E501
- # verify the required parameter 'loan_id' is set
- if self.api_client.client_side_validation and (
- 'loan_id' not in local_var_params or local_var_params['loan_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `loan_id` when calling `get_loan_record`") # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'loan_record_id' in local_var_params:
- path_params['loan_record_id'] = local_var_params['loan_record_id'] # noqa: E501
-
- query_params = []
- if 'loan_id' in local_var_params and local_var_params['loan_id'] is not None: # noqa: E501
- query_params.append(('loan_id', local_var_params['loan_id'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loan_records/{loan_record_id}',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='LoanRecord', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def update_loan_record(self, loan_record_id, loan_patch, **kwargs): # noqa: E501
- """Modify a loan record # noqa: E501
-
- Only `auto_renew` modification is supported currently # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.update_loan_record(loan_record_id, loan_patch, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_record_id: Loan record ID (required)
- :param LoanPatch loan_patch: (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.LoanRecord
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.update_loan_record_with_http_info(loan_record_id, loan_patch, **kwargs) # noqa: E501
-
- def update_loan_record_with_http_info(self, loan_record_id, loan_patch, **kwargs): # noqa: E501
- """Modify a loan record # noqa: E501
-
- Only `auto_renew` modification is supported currently # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.update_loan_record_with_http_info(loan_record_id, loan_patch, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_record_id: Loan record ID (required)
- :param LoanPatch loan_patch: (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.LoanRecord, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan_record_id', 'loan_patch']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method update_loan_record" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan_record_id' is set
- if self.api_client.client_side_validation and (
- 'loan_record_id' not in local_var_params or local_var_params['loan_record_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `loan_record_id` when calling `update_loan_record`"
- ) # noqa: E501
- # verify the required parameter 'loan_patch' is set
- if self.api_client.client_side_validation and (
- 'loan_patch' not in local_var_params or local_var_params['loan_patch'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `loan_patch` when calling `update_loan_record`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'loan_record_id' in local_var_params:
- path_params['loan_record_id'] = local_var_params['loan_record_id'] # noqa: E501
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- if 'loan_patch' in local_var_params:
- body_params = local_var_params['loan_patch']
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # HTTP header `Content-Type`
- header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
- ['application/json']
- ) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/loan_records/{loan_record_id}',
- 'PATCH',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='LoanRecord', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_auto_repay_status(self, **kwargs): # noqa: E501
- """Retrieve user auto repayment setting # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_auto_repay_status(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.AutoRepaySetting
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_auto_repay_status_with_http_info(**kwargs) # noqa: E501
-
- def get_auto_repay_status_with_http_info(self, **kwargs): # noqa: E501
- """Retrieve user auto repayment setting # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_auto_repay_status_with_http_info(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.AutoRepaySetting, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = []
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_auto_repay_status" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/auto_repay',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='AutoRepaySetting', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def set_auto_repay(self, status, **kwargs): # noqa: E501
- """Update user's auto repayment setting # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.set_auto_repay(status, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str status: New auto repayment status. `on` - enabled, `off` - disabled (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.AutoRepaySetting
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.set_auto_repay_with_http_info(status, **kwargs) # noqa: E501
-
- def set_auto_repay_with_http_info(self, status, **kwargs): # noqa: E501
- """Update user's auto repayment setting # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.set_auto_repay_with_http_info(status, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str status: New auto repayment status. `on` - enabled, `off` - disabled (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.AutoRepaySetting, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['status']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method set_auto_repay" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'status' is set
- if self.api_client.client_side_validation and (
- 'status' not in local_var_params or local_var_params['status'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError("Missing the required parameter `status` when calling `set_auto_repay`") # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'status' in local_var_params and local_var_params['status'] is not None: # noqa: E501
- query_params.append(('status', local_var_params['status'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/auto_repay',
- 'POST',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='AutoRepaySetting', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_margin_transferable(self, currency, **kwargs): # noqa: E501
- """Get the max transferable amount for a specific margin currency # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_margin_transferable(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param str currency_pair: Currency pair
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.MarginTransferable
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_margin_transferable_with_http_info(currency, **kwargs) # noqa: E501
-
- def get_margin_transferable_with_http_info(self, currency, **kwargs): # noqa: E501
- """Get the max transferable amount for a specific margin currency # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_margin_transferable_with_http_info(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param str currency_pair: Currency pair
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.MarginTransferable, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency', 'currency_pair']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_margin_transferable" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'currency' is set
- if self.api_client.client_side_validation and (
- 'currency' not in local_var_params or local_var_params['currency'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `currency` when calling `get_margin_transferable`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
- if 'currency_pair' in local_var_params and local_var_params['currency_pair'] is not None: # noqa: E501
- query_params.append(('currency_pair', local_var_params['currency_pair'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/transferable',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='MarginTransferable', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_margin_borrowable(self, currency, **kwargs): # noqa: E501
- """Get the max borrowable amount for a specific margin currency # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_margin_borrowable(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param str currency_pair: Currency pair
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.MarginBorrowable
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_margin_borrowable_with_http_info(currency, **kwargs) # noqa: E501
-
- def get_margin_borrowable_with_http_info(self, currency, **kwargs): # noqa: E501
- """Get the max borrowable amount for a specific margin currency # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_margin_borrowable_with_http_info(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param str currency_pair: Currency pair
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.MarginBorrowable, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency', 'currency_pair']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_margin_borrowable" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'currency' is set
- if self.api_client.client_side_validation and (
- 'currency' not in local_var_params or local_var_params['currency'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `currency` when calling `get_margin_borrowable`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
- if 'currency_pair' in local_var_params and local_var_params['currency_pair'] is not None: # noqa: E501
- query_params.append(('currency_pair', local_var_params['currency_pair'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/borrowable',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='MarginBorrowable', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_cross_margin_currencies(self, **kwargs): # noqa: E501
- """Currencies supported by cross margin. # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_cross_margin_currencies(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.CrossMarginCurrency]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_cross_margin_currencies_with_http_info(**kwargs) # noqa: E501
-
- def list_cross_margin_currencies_with_http_info(self, **kwargs): # noqa: E501
- """Currencies supported by cross margin. # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_cross_margin_currencies_with_http_info(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.CrossMarginCurrency], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = []
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError(
- "Got an unexpected keyword argument '%s'" " to method list_cross_margin_currencies" % k
- )
- local_var_params[k] = v
- del local_var_params['kwargs']
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = [] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/currencies',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[CrossMarginCurrency]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_cross_margin_currency(self, currency, **kwargs): # noqa: E501
- """Retrieve detail of one single currency supported by cross margin # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_currency(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Currency name (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.CrossMarginCurrency
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_cross_margin_currency_with_http_info(currency, **kwargs) # noqa: E501
-
- def get_cross_margin_currency_with_http_info(self, currency, **kwargs): # noqa: E501
- """Retrieve detail of one single currency supported by cross margin # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_currency_with_http_info(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Currency name (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.CrossMarginCurrency, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_cross_margin_currency" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'currency' is set
- if self.api_client.client_side_validation and (
- 'currency' not in local_var_params or local_var_params['currency'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `currency` when calling `get_cross_margin_currency`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'currency' in local_var_params:
- path_params['currency'] = local_var_params['currency'] # noqa: E501
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = [] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/currencies/{currency}',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='CrossMarginCurrency', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_cross_margin_account(self, **kwargs): # noqa: E501
- """Retrieve cross margin account # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_account(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.CrossMarginAccount
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_cross_margin_account_with_http_info(**kwargs) # noqa: E501
-
- def get_cross_margin_account_with_http_info(self, **kwargs): # noqa: E501
- """Retrieve cross margin account # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_account_with_http_info(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.CrossMarginAccount, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = []
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_cross_margin_account" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/accounts',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='CrossMarginAccount', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_cross_margin_account_book(self, **kwargs): # noqa: E501
- """Retrieve cross margin account change history # noqa: E501
-
- Record time range cannot exceed 30 days # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_cross_margin_account_book(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Filter by currency
- :param int _from: Start timestamp of the query
- :param int to: Time range ending, default to current time
- :param int page: Page number
- :param int limit: Maximum number of records to be returned in a single list
- :param str type: Only retrieve changes of the specified type. All types will be returned if not specified.
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.CrossMarginAccountBook]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_cross_margin_account_book_with_http_info(**kwargs) # noqa: E501
-
- def list_cross_margin_account_book_with_http_info(self, **kwargs): # noqa: E501
- """Retrieve cross margin account change history # noqa: E501
-
- Record time range cannot exceed 30 days # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_cross_margin_account_book_with_http_info(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Filter by currency
- :param int _from: Start timestamp of the query
- :param int to: Time range ending, default to current time
- :param int page: Page number
- :param int limit: Maximum number of records to be returned in a single list
- :param str type: Only retrieve changes of the specified type. All types will be returned if not specified.
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.CrossMarginAccountBook], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency', '_from', 'to', 'page', 'limit', 'type']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError(
- "Got an unexpected keyword argument '%s'" " to method list_cross_margin_account_book" % k
- )
- local_var_params[k] = v
- del local_var_params['kwargs']
-
- if (
- self.api_client.client_side_validation and 'page' in local_var_params and local_var_params['page'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `page` when calling `list_cross_margin_account_book`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_cross_margin_account_book`, must be a value less than or equal to `1000`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_cross_margin_account_book`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
- if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
- query_params.append(('from', local_var_params['_from'])) # noqa: E501
- if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
- query_params.append(('to', local_var_params['to'])) # noqa: E501
- if 'page' in local_var_params and local_var_params['page'] is not None: # noqa: E501
- query_params.append(('page', local_var_params['page'])) # noqa: E501
- if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
- query_params.append(('limit', local_var_params['limit'])) # noqa: E501
- if 'type' in local_var_params and local_var_params['type'] is not None: # noqa: E501
- query_params.append(('type', local_var_params['type'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/account_book',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[CrossMarginAccountBook]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_cross_margin_loans(self, status, **kwargs): # noqa: E501
- """List cross margin borrow history # noqa: E501
-
- Sort by creation time in descending order by default. Set `reverse=false` to return ascending results. # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_cross_margin_loans(status, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param int status: Filter by status. Supported values are 2 and 3. (required)
- :param str currency: Filter by currency
- :param int limit: Maximum number of records to be returned in a single list
- :param int offset: List offset, starting from 0
- :param bool reverse: Whether to sort in descending order, which is the default. Set `reverse=false` to return ascending results
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.CrossMarginLoan]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_cross_margin_loans_with_http_info(status, **kwargs) # noqa: E501
-
- def list_cross_margin_loans_with_http_info(self, status, **kwargs): # noqa: E501
- """List cross margin borrow history # noqa: E501
-
- Sort by creation time in descending order by default. Set `reverse=false` to return ascending results. # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_cross_margin_loans_with_http_info(status, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param int status: Filter by status. Supported values are 2 and 3. (required)
- :param str currency: Filter by currency
- :param int limit: Maximum number of records to be returned in a single list
- :param int offset: List offset, starting from 0
- :param bool reverse: Whether to sort in descending order, which is the default. Set `reverse=false` to return ascending results
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.CrossMarginLoan], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['status', 'currency', 'limit', 'offset', 'reverse']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_cross_margin_loans" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'status' is set
- if self.api_client.client_side_validation and (
- 'status' not in local_var_params or local_var_params['status'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `status` when calling `list_cross_margin_loans`"
- ) # noqa: E501
-
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_cross_margin_loans`, must be a value less than or equal to `1000`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_cross_margin_loans`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'offset' in local_var_params and local_var_params['offset'] < 0
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `offset` when calling `list_cross_margin_loans`, must be a value greater than or equal to `0`"
- ) # noqa: E501
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'status' in local_var_params and local_var_params['status'] is not None: # noqa: E501
- query_params.append(('status', local_var_params['status'])) # noqa: E501
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
- if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
- query_params.append(('limit', local_var_params['limit'])) # noqa: E501
- if 'offset' in local_var_params and local_var_params['offset'] is not None: # noqa: E501
- query_params.append(('offset', local_var_params['offset'])) # noqa: E501
- if 'reverse' in local_var_params and local_var_params['reverse'] is not None: # noqa: E501
- query_params.append(('reverse', local_var_params['reverse'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/loans',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[CrossMarginLoan]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def create_cross_margin_loan(self, cross_margin_loan, **kwargs): # noqa: E501
- """Create a cross margin borrow loan # noqa: E501
-
- Borrow amount cannot be less than currency minimum borrow amount # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.create_cross_margin_loan(cross_margin_loan, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param CrossMarginLoan cross_margin_loan: (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.CrossMarginLoan
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.create_cross_margin_loan_with_http_info(cross_margin_loan, **kwargs) # noqa: E501
-
- def create_cross_margin_loan_with_http_info(self, cross_margin_loan, **kwargs): # noqa: E501
- """Create a cross margin borrow loan # noqa: E501
-
- Borrow amount cannot be less than currency minimum borrow amount # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.create_cross_margin_loan_with_http_info(cross_margin_loan, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param CrossMarginLoan cross_margin_loan: (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.CrossMarginLoan, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['cross_margin_loan']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method create_cross_margin_loan" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'cross_margin_loan' is set
- if self.api_client.client_side_validation and (
- 'cross_margin_loan' not in local_var_params or local_var_params['cross_margin_loan'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `cross_margin_loan` when calling `create_cross_margin_loan`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- if 'cross_margin_loan' in local_var_params:
- body_params = local_var_params['cross_margin_loan']
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # HTTP header `Content-Type`
- header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
- ['application/json']
- ) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/loans',
- 'POST',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='CrossMarginLoan', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_cross_margin_loan(self, loan_id, **kwargs): # noqa: E501
- """Retrieve single borrow loan detail # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_loan(loan_id, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Borrow loan ID (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.CrossMarginLoan
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_cross_margin_loan_with_http_info(loan_id, **kwargs) # noqa: E501
-
- def get_cross_margin_loan_with_http_info(self, loan_id, **kwargs): # noqa: E501
- """Retrieve single borrow loan detail # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_loan_with_http_info(loan_id, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str loan_id: Borrow loan ID (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.CrossMarginLoan, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['loan_id']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_cross_margin_loan" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'loan_id' is set
- if self.api_client.client_side_validation and (
- 'loan_id' not in local_var_params or local_var_params['loan_id'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `loan_id` when calling `get_cross_margin_loan`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
- if 'loan_id' in local_var_params:
- path_params['loan_id'] = local_var_params['loan_id'] # noqa: E501
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/loans/{loan_id}',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='CrossMarginLoan', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def list_cross_margin_repayments(self, **kwargs): # noqa: E501
- """Retrieve cross margin repayments # noqa: E501
-
- Sort by creation time in descending order by default. Set `reverse=false` to return ascending results. # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_cross_margin_repayments(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency:
- :param str loan_id:
- :param int limit: Maximum number of records to be returned in a single list
- :param int offset: List offset, starting from 0
- :param bool reverse: Whether to sort in descending order, which is the default. Set `reverse=false` to return ascending results
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.CrossMarginRepayment]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.list_cross_margin_repayments_with_http_info(**kwargs) # noqa: E501
-
- def list_cross_margin_repayments_with_http_info(self, **kwargs): # noqa: E501
- """Retrieve cross margin repayments # noqa: E501
-
- Sort by creation time in descending order by default. Set `reverse=false` to return ascending results. # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.list_cross_margin_repayments_with_http_info(async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency:
- :param str loan_id:
- :param int limit: Maximum number of records to be returned in a single list
- :param int offset: List offset, starting from 0
- :param bool reverse: Whether to sort in descending order, which is the default. Set `reverse=false` to return ascending results
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.CrossMarginRepayment], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency', 'loan_id', 'limit', 'offset', 'reverse']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError(
- "Got an unexpected keyword argument '%s'" " to method list_cross_margin_repayments" % k
- )
- local_var_params[k] = v
- del local_var_params['kwargs']
-
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_cross_margin_repayments`, must be a value less than or equal to `1000`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `limit` when calling `list_cross_margin_repayments`, must be a value greater than or equal to `1`"
- ) # noqa: E501
- if (
- self.api_client.client_side_validation and 'offset' in local_var_params and local_var_params['offset'] < 0
- ): # noqa: E501
- raise ApiValueError(
- "Invalid value for parameter `offset` when calling `list_cross_margin_repayments`, must be a value greater than or equal to `0`"
- ) # noqa: E501
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
- if 'loan_id' in local_var_params and local_var_params['loan_id'] is not None: # noqa: E501
- query_params.append(('loan_id', local_var_params['loan_id'])) # noqa: E501
- if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
- query_params.append(('limit', local_var_params['limit'])) # noqa: E501
- if 'offset' in local_var_params and local_var_params['offset'] is not None: # noqa: E501
- query_params.append(('offset', local_var_params['offset'])) # noqa: E501
- if 'reverse' in local_var_params and local_var_params['reverse'] is not None: # noqa: E501
- query_params.append(('reverse', local_var_params['reverse'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/repayments',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[CrossMarginRepayment]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def repay_cross_margin_loan(self, cross_margin_repay_request, **kwargs): # noqa: E501
- """Cross margin repayments # noqa: E501
-
- When the liquidity of the currency is insufficient and the transaction risk is high, the currency will be disabled, and funds cannot be transferred.When the available balance of cross-margin is insufficient, the balance of the spot account can be used for repayment. Please ensure that the balance of the spot account is sufficient, and system uses cross-margin account for repayment first # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.repay_cross_margin_loan(cross_margin_repay_request, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param CrossMarginRepayRequest cross_margin_repay_request: (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: list[gate_api.CrossMarginLoan]
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.repay_cross_margin_loan_with_http_info(cross_margin_repay_request, **kwargs) # noqa: E501
-
- def repay_cross_margin_loan_with_http_info(self, cross_margin_repay_request, **kwargs): # noqa: E501
- """Cross margin repayments # noqa: E501
-
- When the liquidity of the currency is insufficient and the transaction risk is high, the currency will be disabled, and funds cannot be transferred.When the available balance of cross-margin is insufficient, the balance of the spot account can be used for repayment. Please ensure that the balance of the spot account is sufficient, and system uses cross-margin account for repayment first # noqa: E501
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.repay_cross_margin_loan_with_http_info(cross_margin_repay_request, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param CrossMarginRepayRequest cross_margin_repay_request: (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(list[gate_api.CrossMarginLoan], status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['cross_margin_repay_request']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method repay_cross_margin_loan" % k)
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'cross_margin_repay_request' is set
- if self.api_client.client_side_validation and (
- 'cross_margin_repay_request' not in local_var_params
- or local_var_params['cross_margin_repay_request'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `cross_margin_repay_request` when calling `repay_cross_margin_loan`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- if 'cross_margin_repay_request' in local_var_params:
- body_params = local_var_params['cross_margin_repay_request']
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # HTTP header `Content-Type`
- header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
- ['application/json']
- ) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/repayments',
- 'POST',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='list[CrossMarginLoan]', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_cross_margin_transferable(self, currency, **kwargs): # noqa: E501
- """Get the max transferable amount for a specific cross margin currency # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_transferable(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.CrossMarginTransferable
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_cross_margin_transferable_with_http_info(currency, **kwargs) # noqa: E501
-
- def get_cross_margin_transferable_with_http_info(self, currency, **kwargs): # noqa: E501
- """Get the max transferable amount for a specific cross margin currency # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_transferable_with_http_info(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.CrossMarginTransferable, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError(
- "Got an unexpected keyword argument '%s'" " to method get_cross_margin_transferable" % k
- )
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'currency' is set
- if self.api_client.client_side_validation and (
- 'currency' not in local_var_params or local_var_params['currency'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `currency` when calling `get_cross_margin_transferable`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/transferable',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='CrossMarginTransferable', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
-
- def get_cross_margin_borrowable(self, currency, **kwargs): # noqa: E501
- """Get the max borrowable amount for a specific cross margin currency # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_borrowable(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: gate_api.CrossMarginBorrowable
- :return: If the method is called asynchronously,
- returns the request thread.
- """
- kwargs['_return_http_data_only'] = True
- return self.get_cross_margin_borrowable_with_http_info(currency, **kwargs) # noqa: E501
-
- def get_cross_margin_borrowable_with_http_info(self, currency, **kwargs): # noqa: E501
- """Get the max borrowable amount for a specific cross margin currency # noqa: E501
-
- This method makes a synchronous HTTP request by default. To make an
- asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_cross_margin_borrowable_with_http_info(currency, async_req=True)
- >>> result = thread.get()
-
- :param bool async_req: execute request asynchronously
- :param str currency: Retrieve data of the specified currency (required)
- :param _return_http_data_only: response data without head status code
- and headers
- :param _preload_content: if False, the urllib3.HTTPResponse object will
- be returned without reading/decoding response
- data. Default is True.
- :param _request_timeout: timeout setting for this request. If one
- number provided, it will be total request
- timeout. It can also be a pair (tuple) of
- (connection, read) timeouts.
- :rtype: tuple(gate_api.CrossMarginBorrowable, status_code(int), headers(HTTPHeaderDict))
- :return: If the method is called asynchronously,
- returns the request thread.
- """
-
- local_var_params = locals()
-
- all_params = ['currency']
- all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
-
- for k, v in six.iteritems(local_var_params['kwargs']):
- if k not in all_params:
- raise ApiTypeError(
- "Got an unexpected keyword argument '%s'" " to method get_cross_margin_borrowable" % k
- )
- local_var_params[k] = v
- del local_var_params['kwargs']
- # verify the required parameter 'currency' is set
- if self.api_client.client_side_validation and (
- 'currency' not in local_var_params or local_var_params['currency'] is None # noqa: E501
- ): # noqa: E501
- raise ApiValueError(
- "Missing the required parameter `currency` when calling `get_cross_margin_borrowable`"
- ) # noqa: E501
-
- collection_formats = {}
-
- path_params = {}
-
- query_params = []
- if 'currency' in local_var_params and local_var_params['currency'] is not None: # noqa: E501
- query_params.append(('currency', local_var_params['currency'])) # noqa: E501
-
- header_params = {}
-
- form_params = []
- local_var_files = {}
-
- body_params = None
- # HTTP header `Accept`
- header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
-
- # Authentication setting
- auth_settings = ['apiv4'] # noqa: E501
-
- return self.api_client.call_api(
- '/margin/cross/borrowable',
- 'GET',
- path_params,
- query_params,
- header_params,
- body=body_params,
- post_params=form_params,
- files=local_var_files,
- response_type='CrossMarginBorrowable', # noqa: E501
- auth_settings=auth_settings,
- async_req=local_var_params.get('async_req'),
- _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
- _preload_content=local_var_params.get('_preload_content', True),
- _request_timeout=local_var_params.get('_request_timeout'),
- collection_formats=collection_formats,
- )
|