Pytone
pytone
pytoneはKintoneにアクセスするためのPythonライブラリです。
ZENKが開発しOSSとして公開しています。
from pytone import kintone
kintone = kintone.Kintone('APIトークン', 'サブドメイン', 'アプリID')
Features
pytoneはKintoneをPythonで操作するためのライブラリです。 KintoneAPIの以下に対応しています
Requirement
Python3系で動作し、以下のライブラリに依存します。
Installation
pip install requests pip install zenkPytoneDownloads(GitHub)
Downloads(PePy)
Usage
- レコードの取得(一括)
#呼び出し方 kintone.select(where=where,order=order,limti=limit,fields=fields) """ 引数は省略可能です ・whereを省略した場合、アプリの全レコードを取得します ・レコードのソートをする場合はwhereには書かず、orderに記述してください ・limitを指定する場合はwhereには書かず、limitに数値を記述してください ・fieldsを省略した場合、全フィールドを取得します ・idとrevisionは指定していなくても取得します ・対象のレコードをすべて取得します。(offset上限対応) """ #例 where = 'フィールドコート1 = "value"' order = 'order by $id asc' limit = 500 fields = ['フィールドコート1','フィールドコート2','サブテーブル'] response = kintone.select(where=where,order=order,limit=limit,fields=fields) """ レスポンスの例 [ { '$id':1, 'revision':1, 'フィールドコート1':'value', 'フィールドコート2':'value', 'サブテーブル': [ { 'id': '1111111', #テーブルの行ID 'フィールドコート1':'value', 'フィールドコート2':'value', }, { 'id': '1111112', #テーブルの行ID 'フィールドコート1':'value', 'フィールドコート2':'value', } ] }, { '$id':2, 'revision':1, 'フィールドコート1':'value', 'フィールドコート2':'value', 'サブテーブル': [ { 'id': '2222222', #テーブルの行ID 'フィールドコート1':'value', 'フィールドコート2':'value', }, { 'id': '2222223', #テーブルの行ID 'フィールドコート1':'value', 'フィールドコート2':'value', } ] } ] """
- レコードの取得(一件)
#呼び出し方 #引数に取得するレコードIDを指定します kintone.selectRec(recordID) #例 recordID = 1 response = kintone.selectRec(recordID) """ レスポンスの例 { '$id':1, 'revision':1, 'フィールドコート1':'value', 'フィールドコート2':'value', 'サブテーブル': [ { 'id': '1111111', #テーブルの行ID 'フィールドコート1':'value', 'フィールドコート2':'value', }, { 'id': '1111112', #テーブルの行ID 'フィールドコート1':'value', 'フィールドコート2':'value', } ], } """
- レコードの登録(一括)
#呼び出し方 #insert関数の引数はリスト型でなくてはいけません kintone.insert(records) #例 records = [ { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ], 'ユーザー選択': [ 'ログイン名1', 'ログイン名2' ], 'サブテーブル': [ { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ] }, { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ] } ] }, { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', ............ } ] response = kintone.insert(records) """ レスポンスの例 { 'ids':['1','2'], 'revisions':['1','1'] } """
- レコードの登録(一件)
#呼び出し方 #insertRec関数の引数は辞書型でなくてはいけません kintone.insertRec(record) #例 record = { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ], 'ユーザー選択': [ 'ログイン名1', 'ログイン名2' ], 'サブテーブル': [ { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ] }, { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ] } ] } response = kintone.insertRec(record) """ レスポンスの例 { 'id': '1', 'revision': '1' } """
- レコードの更新(一括)
#呼び出し方 #update関数の引数はリスト型でなくてはいけません kintone.update(records) """ 登録するレコードにidもしくはupdateKeyを指定する必要があります """ #例 records = [ { '$id':'1', '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ], 'ユーザー選択': [ 'ログイン名1', 'ログイン名2' ], 'サブテーブル': [ { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ] }, { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ] } ] }, { 'updateKey': { 'field':'重複禁止のフィールドコート', 'value':'value' }, '文字列__1行':'value', '文字列__複数行':'value\nvalue2', ............ } ] response = kintone.update(records) """ レスポンスの例 { 'records':[ { 'id':'1', 'revision':'2' }, { 'id':'2', 'revision':'2' } ] } """
- レコードの更新(一件)
#呼び出し方 #updateRec関数の引数は辞書型でなくてはいけません kintone.updateRec(record) """ 登録するレコードにidもしくはupdateKeyを指定する必要があります """ #例 record = { '$id':'1', '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ], 'ユーザー選択': [ 'ログイン名1', 'ログイン名2' ], 'サブテーブル': [ { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ] }, { '文字列__1行':'value', '文字列__複数行':'value\nvalue2', 'チェックボックス': [ 'sample1', 'sample2' ] } } response = kintone.updateRec(record) """ レスポンスの例 { 'revision': '2' } """
- レコードの削除
#呼び出し方 #delete関数の引数はリスト型でなくてはいけません kintone.delete(recordIDs) #例 recordIDs = ['1','2','3'] response = kintone.delete(recordIDs) """ レスポンスの例 {} """ #リクエスト成功時は空の辞書が戻ってきます
Author
- Author
Masashi Tsuruya - Organizationr
株式会社ゼンク
License
“pytone” is under MIT license.