2021/07/11時点の情報です
はじめに
クラウドサインを作成するには利用申し込みが必要となります。詳細はこちら
作成の流れ
1. tokenを取得
引数
- clientId
- 各アカウントごとに固有
ソース
token取得
function getToken(clientId){
const url = 'https://api.cloudsign.jp/token'
+ `?client_id=${clientId}`;
const response = UrlFetchApp.fetch(url);
const json = JSON.parse(response.getContentText());
return json.access_token;
}
2. 書類を作成
引数
- token
- 1で取得したtoken
- templateId
- テンプレートのID。テンプレートをひらいた際のurlから判断できます
ソース
書類を作成
function createDocument(token, templateId){
const url = 'https://api.cloudsign.jp/documents';
const options = {
headers : {
'accept': 'application/json',
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': `Bearer ${token}`
},
method : 'post',
payload : `template_id=${templateId}`
};
const response = UrlFetchApp.fetch(url, options);
const json = JSON.parse(response.getContentText());
return json;
}
余談 書類を取得
function getDocument(token, documentId){
const url = `https://api.cloudsign.jp/documents/${documentId}`;
const options = {
headers : {
'accept': 'application/json',
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': `Bearer ${token}`
},
method : 'get',
};
const response = UrlFetchApp.fetch(url, options);
const json = JSON.parse(response.getContentText());
return json;
}
3. 送信先を設定
引数
- token
- 1で取得したtoken
- documentId
- 2で作成したdocumentのid
- destinationId
- 0が送信元、1が送信先に(現在)なっています。
- email
- 設定したいメール
- name
- 設定したい名前
ソース
送信先を設定
function setDestination(token, documentId, destinationId, email, name){
const url = `https://api.cloudsign.jp/documents/${documentId}/participants/${destinationId}`;
const options = {
headers : {
'accept': 'application/json',
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': `Bearer ${token}`
},
method : 'put',
payload : `email=${email}&name=${name}`
};
UrlFetchApp.fetch(url, options);
}
4. 入力項目を設定
引数
- token
- 1で取得したtoken
- documentId
- 2で作成したdocumentのid
- fileId
- 2で作成したdocumentに付随するfileのid
- widgetId
- 2で作成したdocumentに付随するwidgetのid
- テンプレートからのidは紐付いていないので、2の時点でwidgetIdListを保持しておくのがベター
- text
- 設定したいテキスト
ソース
入力項目を設定
function setForm(token, documentId, fileId, widgetId, text){
const url = `https://api.cloudsign.jp/documents/${documentId}/files/${fileId}/widgets/${widgetId}`;
const options = {
headers : {
'accept': 'application/json',
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': `Bearer ${token}`
},
method : 'put',
payload : `text=${text}`
};
UrlFetchApp.fetch(url, options);
}