APIでスタイル、スクリプト、HTML、プロセス、状況による制御の追加、更新、削除を行うことができます。
■事前準備
APIの操作を行う前にAPIキーの作成を実施してください。
■リクエスト
下記のリクエスト形式で、jsonデータを送信します。
<設定項目>
設定項目 | 値 |
---|---|
HTTPメソッド | POST |
Content-Type | application/json |
文字コード | UTF-8 |
URL | https://ks01.shelterdb.net/api/items/{Id}/updatesitesettings {SiteId}はレコードを取得するテーブルのサイトIDに置換してください。 |
Body | 以下のパラメータ、jsonデータを参考のこと |
パラメータ
リクエストで指定するパラメータについては以下のとおりです。
パラメータ | データ型 | 説明 |
---|---|---|
ApiVersion | 数値 | APIバージョンを指定します。 |
ApiKey | 文字列 | APIキーを指定します。 |
Styles | オブジェクト配列 | スタイルのオブジェクトを指定します。詳細については下記の「Stylesのパラメータ」を参照してください。 |
Scripts | オブジェクト配列 | スクリプトのオブジェクトを指定します。詳細については下記の「Scriptsのパラメータ」を参照してください。 |
Htmls | オブジェクト配列 | HTMLのオブジェクトを指定します。詳細については下記の「Htmlsのパラメータ」を参照してください。 |
Processes | オブジェクト配列 | プロセスのオブジェクトを指定します。詳細については下記「Processesのパラメータ」を参照してください。 |
StatusControls | オブジェクト配列 | 状況による制御のオブジェクトを指定します。詳細については下記の「StatusControlsのパラメータ」を参照してください。 |
<Stylesのパラメータ>
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Id | 数値 | ○ | (例)3 | IDを指定します。存在しないIDの場合は追加、存在するIDの場合は更新として処理されます。 |
Title | 文字列 | ○ | (例)サンプルスタイル | タイトルを指定します。 |
Disabled | 真偽値 | - | (例)false | 無効を指定します。 |
Body | 文字列 | - | (例)header#Header {background-color: blue;} | スタイルを指定します。 |
StyleAll | 真偽値 | - | (例)true | 出力先の「全て」の有効/無効を指定します。 |
StyleNew | 真偽値 | - | (例)false | 出力先の「新規作成」の有効/無効を指定します。 |
StyleEdit | 真偽値 | - | (例)false | 出力先の「編集」の有効/無効を指定します。 |
StyleIndex | 真偽値 | - | (例)false | 出力先の「一覧」の有効/無効を指定します。 |
StyleCalendar | 真偽値 | - | (例)false | 出力先の「カレンダー」の有効/無効を指定します。 |
StyleCrosstab | 真偽値 | - | (例)false | 出力先「クロス集計」の有効/無効を指定します。 |
StyleGantt | 真偽値 | - | (例)false | 出力先の「ガントチャート」の有効/無効を指定します。 |
StyleBurnDown | 真偽値 | - | (例)false | 出力先の「バーンダウンチャート」の有効/無効を指定します。 |
StyleTimeSeries | 真偽値 | - | (例)false | 出力先の「時系列チャート」の有効/無効を指定します。 |
StyleKamban | 真偽値 | - | (例)false | 出力先の「カンバン」の有効/無効を指定します。 |
StyleImageLib | 真偽値 | - | (例)false | 出力先「画像ライブラリ」の有効/無効を指定します。 |
Delete | 数値 | - | (例)0 | 本パラメータの値には0または1を指定します。1が設定されている場合、Idで指定したスタイルを削除します。 |
<Scriptsのパラメータ>
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Id | 数値 | ○ | (例)3 | IDを指定します。存在しないIDの場合は追加、存在するIDの場合は更新として処理されます。 |
Title | 文字列 | ○ | (例)サンプルスクリプト | タイトルを指定します。 |
Disabled | 真偽値 | - | (例)false | 無効を指定します。 |
Body | 文字列 | - | (例)console.log('sample script'); | スクリプトを指定します。 |
ScriptAll | 真偽値 | - | (例)true | 出力先の「全て」の有効/無効を指定します。 |
ScriptNew | 真偽値 | - | (例)false | 出力先の「新規作成」の有効/無効を指定します。 |
ScriptEdit | 真偽値 | - | (例)false | 出力先の「編集」の有効/無効を指定します。 |
ScriptIndex | 真偽値 | - | (例)false | 出力先の「一覧」の有効/無効を指定します。 |
ScriptCalendar | 真偽値 | - | (例)false | 出力先の「カレンダー」の有効/無効を指定します。 |
ScriptCrosstab | 真偽値 | - | (例)false | 出力先「クロス集計」の有効/無効を指定します。 |
ScriptGantt | 真偽値 | - | (例)false | 出力先の「ガントチャート」の有効/無効を指定します。 |
ScriptBurnDown | 真偽値 | - | (例)false | 出力先の「バーンダウンチャート」の有効/無効を指定します。 |
ScriptTimeSeries | 真偽値 | - | (例)false | 出力先の「時系列チャート」の有効/無効を指定します。 |
ScriptKamban | 真偽値 | - | (例)false | 出力先の「カンバン」の有効/無効を指定します。 |
ScriptImageLib | 真偽値 | - | (例)false | 出力先「画像ライブラリ」の有効/無効を指定します。 |
Delete | 数値 | - | (例)0 | 本パラメータの値には0また は1を指定します。1が設定されている場合、Idで指定したスクリプトを削除します。 |
<Htmlsのパラメータ>
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Id | 数値 | ○ | (例)3 | IDを指定します。存在しないIDの場合は追加、存在するIDの場合は更新として処理されます。 |
Title | 文字列 | ○ | (例)サンプルHTML | タイトルを指定します。 |
HtmlPositionType | 文字列 | ○ | (例)Headtop | HTMLの挿入位置を指定します。本パラメータの値には HeadTop / HeadBottom / BodyScriptTop / BodyScriptBottom のいずれかを指定します。 |
Disabled | 真偽値 | - | (例)false | 無効を指定します。 |
Body | 文字列 | - | (例)<div>sample html</div> | HTMLを指定します。 |
HtmlAll | 真偽値 | - | (例)true | 出力先の「全て」の有効/無効を指定します。 |
HtmlNew | 真偽値 | - | (例)false | 出力先の「新規作成」の有効/無効を指定します。 |
HtmlEdit | 真偽値 | - | (例)false | 出力先の「編集」の有効/無効を指定します。 |
HtmlIndex | 真偽値 | - | (例)false | 出力先の「一覧」の有効/無効を指定します。 |
HtmlCalendar | 真偽値 | - | (例)false | 出力先の「カレンダー」の有効/無効を指定します。 |
HtmlCrosstab | 真偽値 | - | (例)false | 出力先「クロス集計」の有効/無効を指定します。 |
HtmlGantt | 真偽値 | - | (例)false | 出力先の「ガントチャート」の有効/無効を指定します。 |
HtmlBurnDown | 真偽値 | - | (例)false | 出力先の「バーンダウンチャート」の有効/無効を指定します。 |
HtmlTimeSeries | 真偽値 | - | (例)false | 出力先の「時系列チャート」の有効/無効を指定します。 |
HtmlKamban | 真偽値 | - | (例)false | 出力先の「カンバン」の有効/無効を指定します。 |
HtmlImageLib | 真偽値 | - | (例)false | 出力先「画像ライブラリ」の有効/無効を指定します。 |
Delete | 数値 | - | (例)0 | 本パラメータの値には0または1を指定します。1が設定されている場合、Idで指定したHTMLを削除します。 |
<Processesのパラメータ>
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Id | 数値 | ○ | (例)3 | IDを指定します。存在しないIDの場合は追加、存在するIDの場合は更新として処理されます。 |
Name | 文字列 | ○ | (例)A1_申請(共通) | 名称を指定します。 |
DisplayName | 文字列 | - | (例)A1_申請(共通) | 表示名を指定します。 |
ScreenType | 数値 | - | (例)10 | 画面種別を指定します。新規作成は10、編集は20を指定してください。 |
CurrentStatus | 数値 | - | (例)100 | 現在の状況で選択する状況のコード値を指定してください。「*」の場合は-1を指定します。 |
ChangedStatus | 数値 | - | (例)200 | 変更後の状況で選択する状況のコード値を指定してください。「*」の場合は-1を指定します。 |
Description | 文字列 | - | (例)申請を行い、課長に承認を依頼する | 説明を指定します。 |
Tooltip | 文字列 | - | (例)申請を行い、承認を依頼します | ツールチップを指定します。 |
ConfirmationMessage | 文字列 | - | (例)記入した内容で申請してよろしいですか | 確認メッセージを指定します。 |
SuccessMessage | 文字列 | - | (例)申請しました | 成功メッセージを指定します。 |
OnClick | 文字列 | - | (例) console.log('Processを実行しました。'); | プロセス機能で追加されたボタンクリック時に実行するスクリプトを指定します。 |
ExecutionType | 数値 | - | (例)10 | 実行種別を指定します。指定内容は以下の通りです。 0:追加したボタン 10:新規または更新 |
ActionType | 数値 | - | (例)10 | アクション種別を指定します。指定内容は以下の通りです。 0:保存 10:ポストバック 90:無し |
AllowBulkProcessing | 真偽値 | - | (例)true | 一括処理を許可をチェックする場合にtrueを指定します。 |
ValidationType | 数値 | - | (例)0 | 入力検証種別を指定します。指定内容は以下の通りです。 0:マージ 10:置換 90:無し |
ValidateInputs | オブジェクト配列 | - | - | プロセスの入力検証のオブジェクトを指定します。詳細については下記の ValidateInputsのパラメータ を参照してください。 |
View | オブジェクト | - | - | プロセスの条件のオブジェクトを指定します。詳細については下記の Viewのパラメータ を参照してください。 |
DataChanges | オブジェクト配列 | - | - | プロセスのデータの変更のオブジェクトを指定します。詳細については下記の DataChangesのパラメータ を参照してください。 |
AutoNumbering | オブジェクト | - | - | プロセスの自動採番のオブジェクトを指定します。詳細については下記の AutoNumberingのパラメータ を参照してください。 |
Notifications | オブジェクト配列 | - | - | プロセスの通知のオブジェクトを指定します。詳細については下記の Notificationsのパラメータ を参照してください。 |
Depts | 配列 | - | (例)[1,2] | プロセスのアクセス制御で権限付与する組織を指定します。組織IDを指定します。 |
Groups | 配列 | - | (例)[3,4,5] | プロセスのアクセス制御で権限付与するグループを指定します。グループIDを指定します。 |
Users | 配列 | - | (例)[11,12,13,14] | プロセスのアクセス制御で権限付与するユーザを指定します。ユーザIDを指定します。 |
Delete | 配列 | - | (例)0 | 本パラメータの値には 0 または 1 を指定します。1 が設定されている場合、Idで指定したプロセスを削除します。 |
ValidateInputsのパラメータ
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Id | 数値 | ○ | (例)3 | IDを指定します。存在しないIDの場合は追加、存在するIDの場合は更新として処理されます。 |
ColumnName | 文字列 | ○ | (例)Title | 項目を指定します。表示名ではなく「カラム名」で指定します。 |
Required | 真偽値 | - | (例)true | 入力必須にする場合はtrueを指定します。 |
ClientRegexValidation | 文字列 | - | (例)^0[789]0\d{8}$ | クライアント正規表現を指定します。ColumnNameで分類項目や説明項目などを指定した場合に有効となります。 |
ServerRegexValidation | 文字列 | - | (例)^0[789]0\d{8}$ | サーバ正規表現を指定します。ColumnNameで分類項目や説明項目などを指定した場合に有効となります。 |
RegexValidationMessage | 文字列 | - | (例)携帯電話番号の入力に誤りがあります | 正規表現でエラーとなった場合に表示するエラーメッセージを指定します。 |
Max | 数値 | - | (例)99999 | 入力可能な最大値を指定します。ColumnNameで数値項目などを指定した場合に有効となります。 |
Max | 数値 | - | (例)0 | 入力可能な最小値を指定します。ColumnNameで数値項目などを指定した場合に有効となります。 |
Delete | 数値 | - | (例)0 | 本パラメータの値には 0 または 1 を指定します。1 が設定されている場合、Idで指定したプロセスを削除します。 |
Viewのパラメータ
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Incomplete | 真偽値 | - | (例)true | 未完了をチェックする場合はtrueを指定します。 |
Own | 真偽値 | - | (例)true | 自分をチェックする場合はtrueを指定します。 |
ColumnFilterHash | 文字列 | - | (例) | 条件を指定します。詳細は「View」の「ColumnFilterHash」を参照してください。 |
Search | 文字列 | - | -Shelter | 検索キーワードを指定します。 |
ErrorMessage | 文字列 | - | (例)条件を満たしていません。 | エラーメッセージを指定します。 |
DataChangesのパラメータ
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Id | 数値 | ○ | (例)3 | IDを指定します。存在しないIDの場合は追加、存在するIDの場合は更新として処理されます。 |
Type | 文字列 | - | (例)InputValue | 変更種別を指定します。指定内容は下記のとおりです CopyValue:値のコピー CopyDisplayValue:表示名のコピー InputValue:値の入力 InputDate:日付の入力 InputDateTime:日時の入力 InputDept:組織の入力 InputUser:ユーザの入力 |
ColumnName | 文字列 | - | (例)ClassA | 項目を指定します。表示名ではなく「カラム名」で指定します。 |
Value | 文字列 | - | (例)ClassB (例)123 (例)7,Days |
コピー元または値を指定します。コピー元の場合は「カラム名」で項目を指定します。値の場合は入力したい任意の文字列を指定します。変更種別が「日付の入力」または「日時の入力」の場合は『値,期間』を指定します。期間は以下の内容で指定します。 Days:日 Months:月 Years:年 Hours:時 Minutes:分 Seconds:秒 |
BaseDateTime | 文字列 | - | (例)CurrentDate | 変更種別が「日付の入力」または「日時の入力」の場合における基準日時を指定します。「カラム名」での指定の他、以下の内容で指定できます。 CurrentDate:現在の日付 CurrentTime:現在の時刻 |
AutoNumberingのパラメータ
「テーブルの管理:エディタ:項目の詳細設定:自動採番」を合わせて参照ください。
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
ColumnName | 文字列 | - | (例)ClassA | 項目を指定します。表示名ではなく「カラム名」で指定します。 |
Format | 文字列 | - | (例)[yyyyMMdd]-[分類A]-[NNNN] | 書式を指定します。 |
ResetType | 文字列 | - | (例)Year | リセット種別を指定します。指定内容は下記の通りです Year:年 Month:月 Day:日 String:文字列 |
Default | 数値 | - | (例)1 | 既定値を指定します。 |
Step | 数値 | - | ステップを指定します。 |
Notificationsのパラメータ
「テーブルの管理:通知」を合わせて参照ください。
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Id | 数値 | ○ | (例)3 | IDを指定します。存在しないIDの場合は追加、存在するIDの場合は更新として処理されます。 |
Type | 数値 | ○ | (例)1 | 通知種別を指定します。指定内容は以下の通りです。 1:メール 2:Slack 3:ChagWork 4:Line 5:Lineグループ 6:Teams 7:Rocket.Chat 8:InCircle |
Subject | 文字列 | ○ | (例)申請しました | 件名を指定します。 "[表示名]" と記載することで項目の値を利用できます。 |
Address | 文字列 | ○ | (例)test@example.com | 任意のメールアドレス、WebHook、roomIDのURL、またはLINEのUserID、GroupIDを指定します。 |
Token | 文字列 | (例)xxx... | 取得したchatworkのトークンまたはLINEボットアカウントのアクセストークンまたはInCircleのトークンを指定します。 | |
Body | 文字列 | ○ | (例)申請内容:[内容] | 内容を指定します。"[表示名]" と記載することで項目の値を利用できます。 |
<StatusControlsのパラメータ>
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Id | 数値 | ○ | (例)3 | IDを指定します。存在しないIDの場合は追加、存在するIDの場合は更新として処理されます。 |
Name | 文字列 | ○ | (例)01_申請待(共通) | 名称を指定します。 |
Description | 文字列 | - | (例)起票時は承認項目を非表示とすべき | 説明を指定します。 |
Status | 数値 | - | (例)100 | 状況のコード値を指定してください。「*」の場合は-1を指定します。 |
ReadOnly | 真偽値 | - | (例)true | レコードの制御-読取専用をチェックする場合はtrueを指定します。 |
ColumnHash | オブジェクト | - | (例){ "Status": "ReadOnly", "Owner": "Hidden", "ClassA": "Requied" } | 「"カラム名": "設定内容"」の形式で指定します。「カラム名」は項目を指定します。設定内容は以下内容で指定します。 Requied:入力必須 ReadOnly:読取専用 Hidden:非表示 |
View | オブジェクト | - | - | 状況による制御の条件のオブジェクトを指定します。詳細については下記の Viewのパラメータ を参照してください。 |
Depts | 配列 | - | (例)[1,2] | プロセスのアクセス制御で権限付与する組織を指定します。組織IDを指定します。 |
Groups | 配列 | - | (例)[3,4,5] | プロセスのアクセス制御で権限付与するグループを指定します。グループIDを指定します。 |
Users | 配列 | - | (例)[11,12,13,14] | プロセスのアクセス制御で権限付与するユーザを指定します。ユーザIDを指定します。 |
Delete | 配列 | - | (例)0 | 本パラメータの値には 0 または 1 を指定します。1 が設定されている場合、Idで指定したプロセスを削除します。 |
Viewのパラメータ
パラメータ | データ型 | 必須 | 設定例 | 説明 |
---|---|---|---|---|
Id | 数値 | ○ | (例)3 | IDを指定します。存在しないIDの場合は追加、存在するIDの場合は更新として処理されます。 |
Incomplete | 真偽値 | ○ | (例)true | 未完了をチェックする場合はtrueを指定します。 |
Own | 真偽値 | - | (例)true | 自分をチェックする場合はtrueを指定します。 |
ColumnFilterHash | 文字列 | - | - | 条件を指定します。詳細は「View」の「ColumnFilterHash」を参照してください。 |
Search | 文字列 | - | (例) | 検索キーワードを指定します。 |
JSON
送信するリクエスト(JSON)のサンプルは以下のとおりです。設定の変更は指定したパラメータのものが対象となります。
※ScriptsにあるId:1のスクリプトの場合、Title、Body、ScriptAllだけが設定変更の対象となります。Disabled等の指定していないパラメータの値は変更しません。
<jsonデータ>
{
"ApiVersion": 1.1,
"ApiKey": "xxxxx...",
"Scripts": [
{
"Id": 1,
"Title": "sample script 1",
"Body": "console.log('script 1');",
"ScriptAll": true
},
{
"Id": 2,
"Title": "sample script 2",
"Body": "console.log('script 2');",
"ScriptAll": true
}
],
"Styles": [
{
"Id": 2,
"Title": "test2",
"StyleNew": false
}
],
"Htmls": [
{
"Id": 3,
"Title": "sample html 3",
"HtmlPositionType": "HeadTop",
"Body":"<div>sample html 3</div>"
}
]
"Processes": [
{
"Id": 1,
"Name": "A1_申請(共通)",
"DisplayName": "申請",
"CurrentStatus": 100,
"ChangedStatus": 200,
"Description": "申請を行い、課長に承認を依頼する",
"Tooltip": "申請を行い、承認を依頼します",
"ConfirmationMessage": "記入した内容で申請してよろしいですか",
"SuccessMessage": "申請しました",
"ValidateInputs": [
{
"Id": 1,
"ColumnName": "NumA",
"Required": true,
"Min": 1.0,
"Max": 5000000.0
},
{
"Id": 4,
"Delete": 1
}
],
"View": {
"Own": true
},
"DataChanges": [
{
"Id": 1,
"Type": "InputDateTime",
"ColumnName": "DateA",
"BaseDateTime": "CurrentTime",
"Value": "0,Days"
},
{
"Id": 5,
"Delete": 1
}
]
},
{
"Id": 17,
"Name": "E4_経理による差戻",
"Delete": 1
}
],
"StatusControls": [
{
"Id": 1,
"Name": "01_申請待(共通)",
"Description": "起票時は承認項目を非表示とすべき",
"Status": 100,
"ColumnHash": {
"Status": "ReadOnly",
"Owner": "Hidden",
"ClassA": "Hidden",
"DateA": "Required",
"DescriptionB": "ReadOnly",
}
},
{
"Id": 11,
"Name": "06-4_完了γ",
"Delete": 1
}
]
}
■レスポンス
下記の形式でJSONデータが返却されます。
コードの追加/更新/削除ができた場合
{
"Id": 123,
"StatusCode": 200,
"Message": "\" 記録テーブル \" を更新しました。"
}
サイトの管理権限がないユーザのAPIキーを用いた場合
{
"Id": 123,
"StatusCode": 403,
"Message": "この操作を行うための権限がありません。"
}
必須パラメータが存在しなかった場合
{
"Id": 123,
"StatusCode": 404,
"Message": "指定された情報は見つかりませんでした。"
}