kuon.bitskins.api.interfaces.pricing   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 57
Duplicated Lines 0 %

Test Coverage

Coverage 50%

Importance

Changes 0
Metric Value
wmc 3
eloc 17
dl 0
loc 57
ccs 7
cts 14
cp 0.5
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A IPricing.get_all_item_prices() 0 16 1
A IPricing.get_price_data_for_items_on_sale() 0 16 1
A IPricing.__init__() 0 7 1
1
#!/usr/bin/python
2
# -*- coding: utf-8 -*-
3 1
from kuon.api_response import APIResponse
4 1
from kuon.bitskins import BitSkins
5 1
from kuon.common import *
6
7
8 1
class IPricing(BitSkins):
9
    """Implementation of the API methods related to the pricing of items on BitSkins
10
11
    common not self explanatory keys:
12
        app id:
13
            The Steam AppID of the game which owns this item (e.g. 730 for CS:GO, 440 for TF2, 570 for Dota 2)
14
    """
15
16 1
    def __init__(self, *args, **kwargs) -> None:
17
        """Initializing function
18
19
        :type args: list
20
        :type kwargs: dict
21
        """
22
        super().__init__(*args, **kwargs)
23
24 1
    def get_all_item_prices(self, app_id: int = CommonSteamGames.APP_ID_CSGO) -> APIResponse:
25
        """GetAllItemPrices v1 implementation
26
        https://bitskins.com/api/#get_all_item_prices
27
28
        Returns the suggested prices for every item on the market
29
30
        :type app_id: int
31
        :return:
32
        """
33
        api_url = "https://bitskins.com/api/v1/get_all_item_prices/"
34
35
        payload = {
36
            'app_id': str(app_id)
37
        }
38
39
        return self.api_request(api_url=api_url, params=payload)
40
41 1
    def get_price_data_for_items_on_sale(self, app_id: int = CommonSteamGames.APP_ID_CSGO) -> APIResponse:
42
        """GetMarketData v1 implementation
43
        https://bitskins.com/api/#get_price_data_for_items_on_sale
44
45
        Returns market data regarding how many items are on the market and highest/lowest price for every item
46
47
        :type app_id: int
48
        :return:
49
        """
50
        api_url = "https://bitskins.com/api/v1/get_price_data_for_items_on_sale/"
51
52
        payload = {
53
            'app_id': str(app_id)
54
        }
55
56
        return self.api_request(api_url=api_url, params=payload)
57