WORKPLACEの概要
- 印刷する
- PDF
WORKPLACEの概要
- 印刷する
- PDF
Article Summary
Share feedback
Thanks for sharing your feedback!
概要
WORKPLACEの組織/社員/役職/職責/基本情報などを設定する APIを提供します。
HTTP方式の POST/PUT/DELETEメソッドの呼び出しを介して行われます。
共通の設定
Workplace URL
POST/PUT/DELETE
https://workplace.apigw.ntruss.com/organization/apigw/v1
リクエストヘッダ
Header | Description |
---|---|
x-ncp-apigw-timestamp | * 1970年1月1日 00:00:00 協定世界時(UTC)からの経過時間をミリ秒(Millisecond)で表したもの * API Gatewayサーバとの時間差が5分以上の場合は無効なリクエストとみなす |
x-ncp-iam-access-key | * NAVERクラウドプラットフォームポータルまたは Sub Accountで発行された Access Key ID |
x-ncp-apigw-signature-v2 | * 上記例の Bodyを Access Key IDとマッピングする Secret Keyで暗号化した署名 * HMAC暗号化アルゴリズムは、HmacSHA256を使用 |
AUTHPARAMSのリクエスト例
curl -i -X GET \ -H "x-ncp-apigw-timestamp:1505290625682" \ -H "x-ncp-iam-access-key:D78BB444D6D3C84CA38D" \ -H "x-ncp-apigw-signature-v2:WTPItrmMIfLUk/UyUIyoQbA/z5hq9o3G8eQMolUzTEa=" \ 'https://workplace.apigw.ntruss.com/organization/apigw/v2/company/c1798784-9a47-4751-ab9f-b9629825ab93/department?offset=0&limit=10'
Signatureを作成する
- 改行文字は
\n
を使用します。 - リクエストに合わせて StringToSignを作成し、SecretKeyを HmacSHA256アルゴリズムで暗号化した後、Base64でエンコードします。
- この値を x-ncp-apigw-signature-v2として使用します。
注意リクエストヘッダの x-ncp-apigw-timestampの値と、StringToSignの timestampは必ず一致しなければなりません。
- 改行文字は
リクエスト | StringToSign |
---|---|
GET /organization/apigw/v2/company/c1798784-9a47-4751-ab9f-b9629825ab93/department?offset=0&limit=10 x-ncp-apigw-timestamp={timestamp} x-ncp-iam-access-key={accesskey} x-ncp-apigw-signature-v2={signature} | GET /organization/apigw/v2/company/c1798784-9a47-4751-ab9f-b9629825ab93/department?offset=0&limit=10 {timeStamp} {accessKey} |
- リクエスト例
public String makeSignature() {
String space = " "; // one space
String newLine = "\n"; // new line
String method = "GET"; // method
String url = "/organization/apigw/v2/company/c1798784-9a47-4751-ab9f-b9629825ab93/department?offset=0&limit=10"; // url (include query string)
String timestamp = "{timestamp}"; // current timestamp (epoch)
String accessKey = "{accessKey}"; // access key id (from portal or Sub Account)
String secretKey = "{secretKey}";
String message = new StringBuilder()
.append(method)
.append(space)
.append(url)
.append(newLine)
.append(timestamp)
.append(newLine)
.append(accessKey)
.toString();
SecretKeySpec signingKey = new SecretKeySpec(secretKey.getBytes("UTF-8"), "HmacSHA256");
Mac mac = Mac.getInstance("HmacSHA256");
mac.init(signingKey);
byte[] rawHmac = mac.doFinal(message.getBytes("UTF-8"));
String encodeBase64String = Base64.encodeBase64String(rawHmac);
return encodeBase64String;
}
共通エラー
レスポンスステータスコードの例
HTTPステータスコード | レスポンスメッセージ | 説明 |
---|---|---|
200 | OK | 一般的なリクエスト成功 |
201 | Created | リソース作成成功に対するレスポンスコード |
400 | Bad Request | 一般的なリクエスト失敗に使用 |
500 | Internal Server Error |
400番台のステータスコードで返されるエラーコードの範囲
エラーコードの範囲 | 説明 |
---|---|
-1000番から -1999番 | 共通 |
-2000番から -2999番 | 管理サービス |
-4000番から -4999番 | メンバーサービス |
-5000番から -5999番 | 会計サービス |
-6000番から -6999番 | 経費サービス |
-7000番から -7999番 | 共通データサービス |
-8000番から -8999番 | 誓約書サービス |
-9000番から -9999番 | 営業サービス |
-10000番から -10999番 | アカウントサービス |
-11000番から -11999番 | システムサービス |
-12000番から -12999番 | 勤怠サービス |
-13000番から -13999番 | 電子税金計算書サービス |
-14000番から -14999番 | 掲示板サービス |
-15000番から -15999番 | 共通 UIサービス |
-16000番から -16999番 | アラームサービス |
-17000番から -17999番 | 人事サービス |
-18000番から -18999番 | 業務支援サービス |
-19000番から -19999番 | 支出サービス |
-20000番から -20999番 | 給与サービス |
-21000番から -21999番 | 予算サービス |
-99000番から -99999番 | ユーザーサービス |
エラーが発生すると、HTTPステータスコードのうち400番台が返され、以下のような形式の Body情報が伝達されます。
{
"status": 400,
"code": -1015,
"message": "emp not found",
"errors": [],
}
この記事は役に立ちましたか?