REST API 最新データ 削除

API仕様

  • 指定したdatatypeの最新データから削除し、結果を応答します。

API パラメータ仕様

リクエストパラメータ

  • クライアントからREST APIに要求する固有パラメータを以下の表に示します。

    セクション パラメータ タイプ 必須 設定値 意味 備考
    query   ハッシュ 必須 以下のパラメータを設定する。 REST API毎の情報設定セクション  
      idlist 配列 必須 任意 削除対象のユニークID配列 要素は、数字文字列で指定します。
      datatypename 文字列 必須 任意 削除対象のデータタイプ名 利用申請時に発行されます。
      dataversion 数値 必須 任意 削除対象のデータバージョン 利用申請時に発行されます。
    • idlist: 対象の最新データユニークID配列
      • 要素は、数字文字列で指定します。
      • 最大2500個まで同時に指定することが可能。
    • datatypename: 削除対象データタイプ名を指定します。
    • dataversion: 削除対象のデータバージョンを指定します。

レスポンスパラメータ

  • REST APIからクライアントに応答する固有パラメータはありません。(共通パラメータのみ)

サンプルプログラム

  • python

      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    #!/usr/bin/python3
    # -*- coding: utf-8 -*-
    #
    # EqCare sample client for python3
    #
    # please execute
    #  $ python3 restapi_data_delete_sample.py
    #
    # NOTICE
    #   This program tested with python3.5 and python3.6 .
    #
    import sys
    import json
    
    # pip install requests==2.21.0
    import requests
    
    
    """
    パラメータ
    """
    BASE_URL = 'https://api.example.com/info/1.0'
    API_USER = 'trialuser'
    API_PASS = 'trialpass'
    TARGET_DATATYPE = 'trialinfo'
    
    """
    定数
    """
    HEADERS = {
        'User-Agent': 'EqCare Sample Client for python3',
        'Content-Type': 'application/json',
    }
    
    
    def testcall(target_path):
        try:
            url = '%s%s' % (BASE_URL, target_path)
    
            param = {
                'system': {
                    'login_name': API_USER,           # 認証ユーザ名
                    'login_pass': API_PASS,           # 認証パスワード
                    'app_servername': '',             # APIの呼び出し元システムのサーバ名
                    'app_username': '',               # APIの呼び出し元システムのログイン名
                    'timezone': '',                   # タイムゾーン変換
                },
                'query': {
                    'idlist': ['1980', '1070'],       # idの配列
                    'datatypename': TARGET_DATATYPE,  # データタイプ名
                    'dataversion': 1,                 # データバージョン
                }
            }
    
            # jsonに変換します
            data = json.dumps(param)
    
            HEADERS['Content-Length'] = str(len(data))
    
            print('')
            print('request:')
            print(url)
            print(HEADERS)
            print(data)
            print('')
    
            # サーバにリクエストします
            response = _request(url, data.encode('utf-8'), HEADERS)
            print('response:')
            print(response)
            print('')
    
            # 結果を表示します
            print('result:')
            print_response(response)
            print('')
        except:
            msg = 'except ; %s; %s' % (sys.exc_info()[0], sys.exc_info()[1])
            print(msg)
    
        return 0
    
    
    def _request(url, data, headers={}):
        result = requests.post(url, data=data, headers=headers, timeout=60)
        return result.text
    
    
    def print_response(response):
        """
        結果を見やすくします
        """
        response = json.loads(response)
    
        print('code = %s' % response['code'])
        print('message = %s' % response['message'])
    
        if 'datalist' in response:
            print('datalist = ')
            print('------------')
    
            for item in response['datalist']:
                for k, v in item.items():
                    print('%s : %s' % (k, v))
    
                print('------------')
    
    
    if __name__ == '__main__':
        print('=============================')
    
        testcall('/data/delete.json')
    
        print('=============================')