PDFGenerationAPI - スコープ付き、グローバル
PDFGenerationAPI は、PDF 変換と PDF フィールドの処理をサポートします。
この API は、 ServiceNow PDF 生成ユーティリティプラグイン (com.snc.apppdfgenerator) の一部であり、 sn_pdfgeneratorutils 名前空間内で提供されます。このプラグインはデフォルトでは有効になっています。
glide.pdf.url.whitelist プロパティを使用して検証レイヤーを追加し、導入された外部 URL を生成された PDF に含めるかどうかを確認します。システムプロパティ glide.pdf.url.whitelisting.enabled が true に設定されている場合、com.snc.pdf.whitelisted_urls システムプロパティの [値] フィールドにリストされていない限り、PDF は URL コンテンツを処理しません。これらのプロパティは、システムプロパティ [sys_properties] テーブルにリストされます。詳細については、「Available system properties」を参照してください。
- HTML 文字列から PDF を動的に生成してレコードに添付する
- A4 サイズ (ヘッダー、フッターなし) – PDFGenerationAPI – convertToPDF(文字列 html, 文字列 targetTable, 文字列 targetTableSysId, 文字列 pdfName, 文字列 fontFamilySysId, オブジェクト documentConfiguration)
- ヘッダーとフッターのオプションを備えたカスタマイズ可能なページサイズ – PDFGenerationAPI – convertToPDFWithHeaderFooter(文字列 html, 文字列 targetTable, 文字列 targetTableSysId, 文字列 pdfName, オブジェクト headerFooterInfo, 文字列 fontFamilySysId, オブジェクト documentConfiguration)
- HTML 文字列から生成してレコードに添付する PDF をキューに入れます
- A4 サイズ (ヘッダー、フッターなし) – PDFGenerationAPI – convertToPDFAsync(文字列 html, 文字列 targetTable, 文字列 targetTableSysId, 文字列 pdfName, 文字列 fontFamilySysId, オブジェクト documentConfiguration)
- ヘッダーとフッターのオプションを備えたカスタマイズ可能なページサイズ – PDFGenerationAPI – convertToPDFWithHeaderFooterAsync(String html, String targetTable, String targetTableSysId, String pdfName, Object headerFooterInfo, String fontFamilySysId, Object documentConfiguration)
- PDF 内のフィールドに入力する
- PDF に署名する
- 塗りつぶし済みフィールドの編集をフラット化または部分的にフラット化することを制限する – PDFGenerationAPI –fillDocumentFieldsAndFlatten(オブジェクト fieldsMap, 文字列 sysId, 文字列 tableName, 文字列 tableSysId, 文字列 pdfName, オブジェクト flatten)
- PDF のページサイズとフィールドデータを取得
- PDFで情報を編集する – PDFGenerationAPI – redact(オブジェクト inputJson)
PDFGenerationAPI – PDFGenerationAPI()
新しい PDFGenerationAPI オブジェクトをインスタンス化します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
次の例は、PDFGenerationAPI オブジェクトを作成する方法を示しています。
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
PDFGenerationAPI – convertToPDF(文字列 html, 文字列 targetTable, 文字列 targetTableSysId, 文字列 pdfName, 文字列 fontFamilySysId, オブジェクト documentConfiguration)
HTML 文字列を PDF ドキュメントに変換します。
この方法では、ページサイズ A4 – 595 × 842 ポイントを使用して PDF を作成します。このサイズを超えると、コンテンツは切り捨てられます。
ページサイズ、向き、ページ番号などの追加設定で PDF を生成するには、 convertToPDFWithHeaderFooter() を使用します。
| 名前 | タイプ | 説明 |
|---|---|---|
| html | 文字列 | PDF ドキュメントに変換する HTML。 |
| targetTable | 文字列 | 変換された PDF を添付するテーブルの名前。 |
| targetTableSysId | 文字列 | 変換された PDF を添付するレコードの sys_id。 |
| pdfName | 文字列 | PDF に付ける名前。 デフォルト:添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| fontFamilySysId | 文字列 | オプション。PDF に使用するフォントファミリーの sys_id。この sys_id は、PDF 生成フォントファミリ [sys_pdf_generation_font_family] テーブルからのものです。 デフォルト:none |
| documentConfiguration | オブジェクト | オプション。目次の構成とページ番号の構成を含むオブジェクト。 |
| documentConfiguration.accessibilityEnabled | ブール | オプション。生成された PDF をアクセシビリティをサポートするように書式設定するかどうかを示すフラグ。この機能を有効にすると、アクセシビリティタグが PDF タグツリーで利用可能になり、スクリーンリーダーを使用して生成された PDF ドキュメントをナビゲート、理解、操作するユーザーに役立ちます。 有効な値:
デフォルト値:False |
| documentConfiguration.toc_config | 文字列 | オプション。PDF に使用する目次構成の sys_id。この sys_id は、目次構成 [doc_toc_config] テーブルからのものです。 デフォルト:なし |
| documentConfiguration.page_number_config | 文字列 | オプション。PDF に使用するページ番号構成の sys_id。この sys_id はページ番号構成 [doc_page_number_config] テーブルからのものです。 デフォルト:なし |
| タイプ | 説明 |
|---|---|
| オブジェクト | 変換に成功した場合は PDF 添付ファイルの sys_id を含むオブジェクト、失敗した場合はエラーメッセージ。 |
| <Object>.attachment_id | HTML 変換に成功した場合は、変換されて添付された PDF の sys_id。ファイルは、添付ファイル [sys_attachment] テーブルにリストされます。 データタイプ:文字列 |
| <Object>.message | 成功またはエラーを確認するメッセージ。 可能な値:
データタイプ:文字列 |
| <Object>.request_id | 変更プロデューサー要求レコードのSys_id。 データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、HTML を PDF に変換して、その PDF をインシデント [incident] テーブル内のレコードに添付する方法を示しています。
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
// (Option) get HTML from the description field of an incident record
var gr = new GlideRecord("incident");
var html;
if (gr.get("<tableSysId>")) {
html = gr.description.toString();
}
var result = v.convertToPDF(html, "incident", "<target_sys_id>", "myPDF");
gs.info(JSON.stringify(result));
出力:
{"attachment_id":"<sys_id>","message":"Conversion is successful.","request_id":"<change_sys_id>","status":"success"}
PDFGenerationAPI – convertToPDFAsync(文字列 html, 文字列 targetTable, 文字列 targetTableSysId, 文字列 pdfName, 文字列 fontFamilySysId, オブジェクト documentConfiguration)
HTML 文字列を PDF ドキュメントに非同期に変換するジョブをステージングします。非同期処理を使用すると、PDF 変換の進行中にインスタンスで作業できます。これは、大きな PDF のエクスポートに特に役立ちます。
この API は、ページサイズ A4 – 595 × 842 ポイントを使用して PDF を作成します。このサイズを超えると、コンテンツは切り捨てられます。
ページ サイズ、向き、ページ番号などの追加設定で PDF を生成するには、 convertToPDFWithHeaderFooterAsync() を使用します。
| 名前 | タイプ | 説明 |
|---|---|---|
| html | 文字列 | PDF ドキュメントに変換する HTML。 |
| targetTable | 文字列 | 変換された PDF を添付するテーブルの名前。 |
| targetTableSysId | 文字列 | 変換された PDF を添付するレコードの sys_id。 |
| pdfName | 文字列 | PDF に付ける名前。 デフォルト:添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| fontFamilySysId | 文字列 | オプション。PDF に使用するフォントファミリーの sys_id。この sys_id は、PDF 生成フォントファミリ [sys_pdf_generation_font_family] テーブルからのものです。 デフォルト:none |
| documentConfiguration | オブジェクト | オプション。目次の構成とページ番号の構成を含むオブジェクト。 |
| documentConfiguration.accessibilityEnabled | ブール | オプション。生成された PDF をアクセシビリティをサポートするように書式設定するかどうかを示すフラグ。この機能を有効にすると、アクセシビリティタグが PDF タグツリーで利用可能になり、スクリーンリーダーを使用して生成された PDF ドキュメントをナビゲート、理解、操作するユーザーに役立ちます。 有効な値:
デフォルト値:False |
| documentConfiguration.toc_config | 文字列 | オプション。PDF に使用する目次構成の sys_id。この sys_id は、目次構成 [doc_toc_config] テーブルからのものです。 デフォルト:なし |
| documentConfiguration.page_number_config | 文字列 | オプション。PDF に使用するページ番号構成の sys_id。この sys_id はページ番号構成 [doc_page_number_config] テーブルからのものです。 デフォルト:なし |
| タイプ | 説明 |
|---|---|
| オブジェクト | PDF 変換が進行中かどうかを示すオブジェクト。PDF 生成ステータス [sys_pdf_generation_status] テーブルで変換ステータスを確認できます。 |
| <Object>.message | 成功またはエラーを確認するメッセージ。 可能な値:
データタイプ:文字列 |
| <Object>.request_id | 変更プロデューサー要求レコードのSys_id。 データタイプ:文字列 |
次の例は、HTML を PDF に変換するタスクをキューに入れる方法を示しています。変換が完了すると、「myPDF」という名前の PDF がインシデント [incident] テーブルのターゲットレコードに添付されます。
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
// (Option) get HTML from the description field of an incident record
var gr = new GlideRecord("incident");
var html;
if (gr.get("<tableSysId>")) {
html = gr.description.toString();
}
var result = v.convertToPDFAsync(html, "incident", "<target_sys_id>", "myPDF");
gs.info(JSON.stringify(result));
出力:
{"message":"HTML to PDF Conversion is in progress.","request_id":"<sys_id>"}
PDFGenerationAPI – convertToPDFWithHeaderFooter(文字列 html, 文字列 targetTable, 文字列 targetTableSysId, 文字列 pdfName, オブジェクト headerFooterInfo, 文字列 fontFamilySysId, オブジェクト documentConfiguration)
HTML 文字列を、ヘッダーとフッターのコンテンツを含む PDF に変換します。
- ヘッダーとフッターの情報
- マージンのサイズ
- 向き
- 列挙
- ページサイズ
| 名前 | タイプ | 説明 |
|---|---|---|
| html | 文字列 | PDF ドキュメントに変換する HTML。 |
| targetTable | 文字列 | 変換された PDF を添付するテーブルの名前。 |
| targetTableSysId | 文字列 | 変換された PDF を添付するレコードの sys_id。 |
| pdfName | 文字列 | PDF に付ける名前。 デフォルト:添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| headerFooterInfo | オブジェクト | PDF のヘッダーとフッターの詳細を定義します。 |
| headerFooterInfo.FooterImageAlignment | 文字列 | フッター内の画像の位置を設定します。 有効な値:
|
| headerFooterInfo.FooterImageAttachmentId | 文字列 | 添付ファイル [sys_attachment] テーブル内のフッター画像の sys_id。 インスタンスでファイルタイプがサポートされているかどうかを判断するには、 システムプロパティ、 [セキュリティ] に移動し、[ 添付可能なファイル拡張子のリスト (カンマ区切り) (List of file extensions (comma-separated) that be attached )] フィールドにリストされているかどうかを確認します。 |
| headerFooterInfo.FooterImageHeight | 文字列 | フッター画像の高さ。 デフォルト:50 ポイント |
| headerFooterInfo.FooterText | 文字列 | PDF の各ページの下部に配置するフッターテキスト。 |
| headerFooterInfo.FooterTextAlignment | 文字列 | フッター内のテキストの位置を設定します。この値が headerFooterInfo.FooterImageAlignment で指定された領域と一致も競合もしていないことを確認してください。 有効な値:
|
| headerFooterInfo.GeneratePageNumber | 文字列 | PDF のページ番号を生成するかどうかを示すフラグ。 有効な値:
デフォルト:true |
| headerFooterInfo.HeaderImageAlignment | 文字列 | ヘッダー内の画像の位置を設定します。 有効な値:
|
| headerFooterInfo.HeaderImageAttachmentId | 文字列 | 添付ファイル [sys_attachment] テーブル内のヘッダー画像の sys_id。 インスタンスでファイルタイプがサポートされているかどうかを判断するには、 システムプロパティ、 [セキュリティ] に移動し、[ 添付可能なファイル拡張子のリスト (カンマ区切り) (List of file extensions (comma-separated) that be attached )] フィールドにリストされているかどうかを確認します。 |
| headerFooterInfo.HeaderImageHeight | 文字列 | ヘッダー画像の高さ。 デフォルト:50 ポイント |
| headerFooterInfo.LeftOrRightMargin | 文字列 | 左右のマージンのサイズ。ページの左側または右側に配置すると、ヘッダーとフッターの詳細がこの領域に配置されます。 デフォルト:36 ポイント |
| headerFooterInfo.PageOrientation | 文字列 | ページの向き。 有効な値:
デフォルト:Portrait (縦向き) |
| headerFooterInfo.PageSize | 文字列 | ドキュメントのページサイズです。 有効な値:
コンテンツは、ページサイズを超えると切り捨てられます。 |
| headerFooterInfo.TopOrBottomMargin | 文字列 | 上下のマージンのサイズ。ヘッダーとフッターの詳細がこの領域に配置されます。 デフォルト:72 ポイント |
| fontFamilySysId | 文字列 | オプション。PDF に使用するフォントファミリーの sys_id。この sys_id は、PDF 生成フォントファミリ [sys_pdf_generation_font_family] テーブルからのものです。 デフォルト:none |
| documentConfiguration | オブジェクト | オプション。目次の構成とページ番号の構成を含むオブジェクト。 |
| documentConfiguration.accessibilityEnabled | ブール | オプション。生成された PDF をアクセシビリティをサポートするように書式設定するかどうかを示すフラグ。この機能を有効にすると、アクセシビリティタグが PDF タグツリーで利用可能になり、スクリーンリーダーを使用して生成された PDF ドキュメントをナビゲート、理解、操作するユーザーに役立ちます。 有効な値:
デフォルト値:False |
| documentConfiguration.toc_config | 文字列 | オプション。PDF に使用する目次構成の sys_id。この sys_id は、目次構成 [doc_toc_config] テーブルからのものです。 デフォルト:なし |
| documentConfiguration.page_number_config | 文字列 | オプション。PDF に使用するページ番号構成の sys_id。この sys_id はページ番号構成 [doc_page_number_config] テーブルからのものです。 デフォルト:なし |
| タイプ | 説明 |
|---|---|
| オブジェクト | 変換に成功した場合は PDF 添付ファイルの sys_id を含むオブジェクト、失敗した場合はエラーメッセージ。 |
| <Object>.attachment_id | HTML 変換に成功した場合は、変換されて添付された PDF の sys_id。ファイルは、添付ファイル [sys_attachment] テーブルにリストされます。 データタイプ:文字列 |
| <Object>.メッセージ | 成功またはエラーを確認するメッセージ。 可能な値:
データタイプ:文字列 |
| <Object>.request_id | 変更プロデューサー要求レコードのSys_id。 データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、HTML を「myPDF」という名前の PDF に変換して、その PDF を添付ファイルとしてインシデント [incident] テーブル内のレコードに追加する方法を示しています。PDF には、添付ファイルを介して提供されるヘッダーとフッターが含まれています。
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
// (Option) get HTML from the description field of an incident record
var gr = new GlideRecord("incident");
var html;
if (gr.get("<tableSysId>")) {
html = gr.description.toString();
}
var hfInfo = new Object();
hfInfo["HeaderImageAttachmentId"] = "<hdrImgAttSysId>";
hfInfo["HeaderImageAlignment"] = "left";
hfInfo["FooterImageAttachmentId"] = "<ftrImgAttSysId>";
hfInfo["FooterImageAlignment"] = "TOP_CENTER";
hfInfo["FooterText"] = "Sample Footer Message";
hfInfo["PageSize"] = "A4";
hfInfo["GeneratePageNumber"] = "false";
hfInfo["TopOrBottomMargin"] = "36";
hfInfo["LeftOrRightMargin"] = "24";
var result = v.convertToPDFWithHeaderFooter(html, "incident", "<targetTbl_sys_id>", "myPDF", hfInfo);
gs.info(JSON.stringify(result));
出力:
{"attachment_id":"<sys_id>","message":"Conversion is successful.","request_id":"<change_sys_id>","status":"success"}
PDFGenerationAPI – convertToPDFWithHeaderFooterAsync(String html, String targetTable, String targetTableSysId, String pdfName, Object headerFooterInfo, String fontFamilySysId, Object documentConfiguration)
HTML 文字列をヘッダーとフッターのコンテンツを含む PDF に非同期で変換するジョブをステージングします。非同期処理を使用すると、PDF 変換の進行中にインスタンスで作業できます。これは、大きな PDF のエクスポートに特に役立ちます。
- ヘッダーとフッターの情報
- マージンのサイズ
- 向き
- 列挙
- ページサイズ
| 名前 | タイプ | 説明 |
|---|---|---|
| html | 文字列 | PDF ドキュメントに変換する HTML。 |
| targetTable | 文字列 | 変換された PDF を添付するテーブルの名前。 |
| targetTableSysId | 文字列 | 変換された PDF を添付するレコードの sys_id。 |
| pdfName | 文字列 | PDF に付ける名前。 デフォルト:添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| headerFooterInfo | オブジェクト | PDF のヘッダーとフッターの詳細を定義します。 |
| headerFooterInfo.FooterImageAlignment | 文字列 | フッター内の画像の位置を設定します。 有効な値:
|
| headerFooterInfo.FooterImageAttachmentId | 文字列 | 添付ファイル [sys_attachment] テーブル内のフッター画像の sys_id。 インスタンスでファイルタイプがサポートされているかどうかを判断するには、 システムプロパティ、 [セキュリティ] に移動し、[ 添付可能なファイル拡張子のリスト (カンマ区切り) (List of file extensions (comma-separated) that be attached )] フィールドにリストされているかどうかを確認します。 |
| headerFooterInfo.FooterImageHeight | 文字列 | フッター画像の高さ。 デフォルト:50 ポイント |
| headerFooterInfo.FooterText | 文字列 | PDF の各ページの下部に配置するフッターテキスト。 |
| headerFooterInfo.FooterTextAlignment | 文字列 | フッター内のテキストの位置を設定します。この値が headerFooterInfo.FooterImageAlignment で指定された領域と一致も競合もしていないことを確認してください。 有効な値:
|
| headerFooterInfo.GeneratePageNumber | 文字列 | PDF のページ番号を生成するかどうかを示すフラグ。 有効な値:
デフォルト:true |
| headerFooterInfo.HeaderImageAlignment | 文字列 | ヘッダー内の画像の位置を設定します。 有効な値:
|
| headerFooterInfo.HeaderImageAttachmentId | 文字列 | 添付ファイル [sys_attachment] テーブル内のヘッダー画像の sys_id。 インスタンスでファイルタイプがサポートされているかどうかを判断するには、 システムプロパティ、 [セキュリティ] に移動し、[ 添付可能なファイル拡張子のリスト (カンマ区切り) (List of file extensions (comma-separated) that be attached )] フィールドにリストされているかどうかを確認します。 |
| headerFooterInfo.HeaderImageHeight | 文字列 | ヘッダー画像の高さ。 デフォルト:50 ポイント |
| headerFooterInfo.LeftOrRightMargin | 文字列 | 左右のマージンのサイズ。ページの左側または右側に配置すると、ヘッダーとフッターの詳細がこの領域に配置されます。 デフォルト:36 ポイント |
| headerFooterInfo.PageOrientation | 文字列 | ページの向き。 有効な値:
デフォルト:Portrait (縦向き) |
| headerFooterInfo.PageSize | 文字列 | ドキュメントのページサイズです。 有効な値:
コンテンツは、ページサイズを超えると切り捨てられます。 |
| headerFooterInfo.TopOrBottomMargin | 文字列 | 上下のマージンのサイズ。ヘッダーとフッターの詳細がこの領域に配置されます。 デフォルト:72 ポイント |
| fontFamilySysId | 文字列 | オプション。PDF に使用するフォントファミリーの sys_id。この sys_id は、PDF 生成フォントファミリ [sys_pdf_generation_font_family] テーブルからのものです。 デフォルト:none |
| documentConfiguration | オブジェクト | オプション。目次の構成とページ番号の構成を含むオブジェクト。 |
| documentConfiguration.accessibilityEnabled | ブール | オプション。生成された PDF をアクセシビリティをサポートするように書式設定するかどうかを示すフラグ。この機能を有効にすると、アクセシビリティタグが PDF タグツリーで利用可能になり、スクリーンリーダーを使用して生成された PDF ドキュメントをナビゲート、理解、操作するユーザーに役立ちます。 有効な値:
デフォルト値:False |
| documentConfiguration.toc_config | 文字列 | オプション。PDF に使用する目次構成の sys_id。この sys_id は、目次構成 [doc_toc_config] テーブルからのものです。 デフォルト:なし |
| documentConfiguration.page_number_config | 文字列 | オプション。PDF に使用するページ番号構成の sys_id。この sys_id はページ番号構成 [doc_page_number_config] テーブルからのものです。 デフォルト:なし |
| タイプ | 説明 |
|---|---|
| オブジェクト | |
| <Object>.message | 成功またはエラーを確認するメッセージ。 可能な値:
データタイプ:文字列 |
| <Object>.request_id | 変更プロデューサー要求レコードのSys_id。 データタイプ:文字列 |
次の例は、HTML を PDF に変換するタスクをキューに入れる方法を示しています。PDF には、添付ファイルを介して提供されるヘッダーとフッターが含まれています。変換が完了すると、「myPDF」という名前の PDF がインシデント [incident] テーブルのターゲットレコードに添付されます。
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
// (Option) get HTML from the description field of an incident record
var gr = new GlideRecord("incident");
var html;
if (gr.get("<tableSysId>")) {
html = gr.description.toString();
}
var hfInfo = new Object();
hfInfo["HeaderImageAttachmentId"] = "<hdrImgAttSysId>";
hfInfo["HeaderImageAlignment"] = "left";
hfInfo["FooterImageAttachmentId"] = "<ftrImgAttSysId>";
hfInfo["FooterImageAlignment"] = "TOP_CENTER";
hfInfo["FooterText"] = "Sample Footer Message";
hfInfo["PageSize"] = "A4";
hfInfo["GeneratePageNumber"] = "false";
hfInfo["TopOrBottomMargin"] = "36";
hfInfo["LeftOrRightMargin"] = "24";
var result = v.convertToPDFWithHeaderFooterAsync(html, "incident", "<targetTbl_sys_id>", "myPDF", hfInfo);
gs.info(JSON.stringify(result));
出力:
{"message":"HTML to PDF Conversion is in progress.","request_id":"<sys_id>"}
PDFGenerationAPI – fillDocumentFields(オブジェクト fieldsMap, 文字列 sysId, 文字列 tableName, 文字列 tableSysId, 文字列 pdfName)
編集可能な PDF のフィールドに入力し、指定されたレコードに添付します。
- fillDocumentFieldsAndFlatten() – 編集可能な PDF のフィールドに入力し、データフィールドをフラット化して、指定されたレコードに添付します。
- fillFieldsAndMergeSignature() – 編集可能な PDF のフィールドに入力し、署名画像を追加して、データフィールドをフラット化し、指定されたレコードに添付します。
- getFilledDocumentWithSignatureAsBase64() – 編集可能な PDF のフィールドに入力し、画像を作成して、それを Base64 でエンコードされた PDF に変換します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldsMap | オブジェクト | オプション。PDF フィールド名と入力する値によるキー値マップ。getDocumentFields() メソッドを使用して、使用可能なフィールドのリストを取得します。 |
| sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| tableName | 文字列 | PDF が添付されるレコードを含むテーブルの名前。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。 |
| tableSysId | 文字列 | PDF が添付されるレコードの sys_id。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。 |
| pdfName | 文字列 | PDF に付ける名前。 デフォルト:添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 成功した場合は更新された PDF 添付ファイルの sys_id を含むオブジェクト、それ以外の場合はエラーメッセージ。 |
| <Object>.attachment_id | 操作が成功した場合、入力された PDF の sys_id。ファイルは、添付ファイル [sys_attachment] テーブルにリストされます。 データタイプ:文字列 |
| <Object>.message | 成功またはエラーを確認するメッセージ。 有効な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、編集可能な PDF 内のフィールドに入力する方法を示しています。
var fieldMap = new Object();
fieldMap["Address"] = "Address value here";
fieldMap["State"] = "State value here";
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.fillDocumentFields(fieldMap, "<attachmentSysId>", "<tableName>", "<tableSysId>", "pdfName");
gs.info(JSON.stringify(result));
出力:
{"attachment_id":"<sys_id>","message":"Request completed successfully.","status":"success"}
PDFGenerationAPI –fillDocumentFieldsAndFlatten(オブジェクト fieldsMap, 文字列 sysId, 文字列 tableName, 文字列 tableSysId, 文字列 pdfName, オブジェクト flatten)
編集可能な PDF のフィールドに入力し、データフィールドをフラット化して、指定されたレコードに添付します。
- fillDocumentFields() – 編集可能な PDF のフィールドに入力し、指定されたレコードに添付します。
- fillFieldsAndMergeSignature() – 編集可能な PDF のフィールドに入力し、署名画像を追加して、データフィールドをフラット化し、指定されたレコードに添付します。
- getFilledDocumentWithSignatureAsBase64() – 編集可能な PDF のフィールドに入力し、画像を作成して、それを Base64 でエンコードされた PDF に変換します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldsMap | オブジェクト | オプション。PDF フィールド名と入力する値によるキー値マップ。getDocumentFields() メソッドを使用して、使用可能なフィールドのリストを取得します。 |
| sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| tableName | 文字列 | PDF が添付されるレコードを含むテーブルの名前。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。 |
| tableSysId | 文字列 | PDF が添付されるレコードの sys_id。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。 |
| pdfName | 文字列 | PDF に付ける名前。 デフォルト:添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| flatten | オブジェクト | オプション。フィールドをフラット化すると、他のユーザーが情報を変更できないようにフィールドをロックできます。キーを「FlattenType」として指定し、フラット化オプションを文字列として指定します。 有効な値:
デフォルト:fully_flatten |
| タイプ | 説明 |
|---|---|
| オブジェクト | 成功した場合は更新された PDF 添付ファイルの sys_id を含むオブジェクト、それ以外の場合はエラーメッセージ。 |
| <Object>.attachment_id | 操作が成功した場合、入力された PDF の sys_id。ファイルは、添付ファイル [sys_attachment] テーブルにリストされます。 データタイプ:文字列 |
| <Object>.message | 成功またはエラーを確認するメッセージ。 有効な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、フィールドに入力してフィールドを編集可能な PDF をフラット化する方法を示しています。
var fieldMap = new Object();
fieldMap["Last Name First Name Middle Initial"] = "Tuter Abel E.";
fieldMap["Date of Birth"] = "08101952";
fieldMap["US SSN"] = "111-22-9999";
fieldMap["Address"] = "PO Box 344";
fieldMap["City"] = "Jerome";
fieldMap["State"] = "AZ";
fieldMap["Zip"] = "86331";
var flatten = new Object();
flatten["FlattenType"] = "partially_flatten";
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.fillDocumentFieldsAndFlatten(fieldMap, "<attachmentSysId>", "<tableName>", "<tableSysId>", "pdfName", flatten);
gs.info(JSON.stringify(result));
出力:
"attachment_id":"<sys_id>","message":"Request completed successfully.","status":"success"
PDFGenerationAPI – fillFieldsAndMergeSignature(オブジェクト fieldsMap, 文字列 sysId, 文字列 tableName, 文字列 tableSysId, 文字列 pdfName, PdfMergeSignRequestor requestor, オブジェクト flatten)
編集可能な PDF のフィールドに入力し、署名画像を追加して、データフィールドをフラット化し、指定されたレコードに添付します。
- fillDocumentFields() – 編集可能な PDF のフィールドに入力し、指定されたレコードに添付します。
- fillDocumentFieldsAndFlatten() – 編集可能な PDF のフィールドに入力し、データフィールドをフラット化して、指定されたレコードに添付します。
- getFilledDocumentWithSignatureAsBase64() – 編集可能な PDF のフィールドに入力し、画像を作成して、それを Base64 でエンコードされた PDF に変換します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldsMap | オブジェクト | オプション。PDF フィールド名と入力する値によるキー値マップ。getDocumentFields() メソッドを使用して、使用可能なフィールドのリストを取得します。 |
| sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| tableName | 文字列 | PDF が添付されるレコードを含むテーブルの名前。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。 |
| tableSysId | 文字列 | PDF が添付されるレコードの sys_id。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。 |
| pdfName | 文字列 | PDF に付ける名前。 デフォルト:添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| requestor | PdfMergeSignRequestor | pdfMergeSignRequestor から返された署名入力。 |
| flatten | オブジェクト | オプション。フィールドをフラット化すると、他のユーザーが情報を変更できないようにフィールドをロックできます。キーを「FlattenType」として指定し、フラット化オプションを文字列として指定します。 有効な値:
デフォルト:fully_flatten |
| タイプ | 説明 |
|---|---|
| オブジェクト | 成功した場合は更新された PDF 添付ファイルの sys_id を含むオブジェクト、それ以外の場合はエラーメッセージ。 |
| <Object>.attachment_id | 操作が成功した場合、入力された PDF の sys_id。ファイルは、添付ファイル [sys_attachment] テーブルにリストされます。 データタイプ:文字列 |
| <Object>.message | 成功またはエラーを確認するメッセージ。 有効な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、デフォルト設定の署名でフィールドを入力してフィールドを完全にフラット化する方法を示しています。
var fieldMap = new Object();
fieldMap["Address_Salutation"] = "Address value here";
var paramMap = new Object();
paramMap["FlattenType"] = "partially_flatten";
var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
requestor.createRequest("<attachmentSysId>", "incident", "<tableSysId>", "filledPdf");
requestor.addSignatureMapping(6, 40, 50, 188, 44, "<signatureSysId>");
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.fillFieldsAndMergeSignature(fieldMap, "<attachmentSysId>", "incident", "<tableSysId>", requestor, "filledPdf", paramMap);
gs.info(JSON.stringify(result));
{"attachment_id":"5440d993dbed3010d66be1191396194e","message":"Request completed successfully.","status":"success"}PDFGenerationAPI – getDocumentFields(文字列 sysId)
PDF ドキュメント内の編集可能なフィールドのリストを取得します。チェックするファイルを手動で開かなくても、PDF の編集可能なフィールドを一覧表示できます。
| 名前 | タイプ | 説明 |
|---|---|---|
| sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 署名済み PDF の ID を含むオブジェクト。それ以外の場合はエラーメッセージ。 |
| <Object>.fields | 要求が成功した場合、PDF の各フィールドの名前を含むリスト。 データタイプ:文字列のアレイ |
| <Object>.message | 成功またはエラーを確認するメッセージ。 可能な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、PDF 添付ファイルのフィールドを取得する方法を示しています。
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.getDocumentFields("attachmentSysId");
gs.info(JSON.stringify(result));
出力:
{"message":"Request completed successfully.","fields":["NP_formFillable","reset","print","1SSN","Signature.1","5sigDate","Check Box21"],"status":"success"}
PDFGenerationAPI – getDocumentFieldsType(文字列 sysId)
PDF ドキュメントから、一連の編集可能なフィールドのフィールドタイプを取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 成功した場合はそれぞれの PDF フィールドタイプを含むオブジェクト、失敗した場合はエラーメッセージ。 |
| <Object>.fields_type | 成功した場合は指定した PDF 内の各フィールドをリスト表示するオブジェクト、失敗した場合はエラーメッセージ。 データタイプ:オブジェクト |
| <Object>.fields_type.<field> | 各フィールドのページ番号を含むオブジェクト。<field> の名前はフィールドのラベルを表します。たとえば、タイプを表す自動作成されたラベルである「SSN」などです。 データタイプ:オブジェクト |
| <Object>.fields_type.<field>.fieldsDetails | 選択肢フィールドのタイプの各オプションのフィールド名とそれに対応する値を含むオブジェクトのリスト。 適用可能なタイプ:
データタイプ:アレイ |
| <Object>.fields_type.<field>.fieldsDetails.fieldName | 選択肢フィールドの名前。 データタイプ:文字列 |
| <Object>.fields_type.<field>.fieldsDetails.value | 選択肢フィールドの値。 データタイプ:文字列 |
| <Object>.fields_type.<field>.pageNumber | このフィールドに対応する PDF ページ番号。 データタイプ:文字列 |
| <Object>.fields_type.<field>.type | PDF のフィールドタイプ。 可能な値:
データタイプ:文字列 |
| <Object>.message | 成功またはエラーを確認するメッセージ。 可能な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、PDF 添付ファイルのフィールドタイプを取得する方法を示しています。結果には、分かりやすくするため手動で返されるものが含まれています。ここでは簡潔にするため短縮しています。
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.getDocumentFieldsType("<attachmentSysId>");
gs.info(JSON.stringify(result));
出力:
{"fields_type":{"1ADDLINE2.25":{"pageNumber":2,"type":"text"},"1ADDLINE2.24":{"pageNumber":2,"type":"text"},
"1ADDLINE2.23":{"pageNumber":2,"type":"text"},"1ADDLINE2.22":{"pageNumber":2,"type":"text"},
"1ADDLINE2.11":{"pageNumber":2,"type":"text"},
"Check Box1":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":2,"type":"check_box"},
"4consentDate.6":{"pageNumber":4,"type":"text"},"4consentDate.7":{"pageNumber":4,"type":"text"},
"3SSN.9":{"pageNumber":3,"type":"text"},"3SSN.8":{"pageNumber":3,"type":"text"},"3SSN.7":{"pageNumber":3,"type":"text"},
"pageNumber":2,"type":"check_box"},"Check Box8":{"fieldsDetails":[{"fieldName":"Off"},{"fieldName":"yes"}],
"4planAdminDate.8":{"pageNumber":4,"type":"text"},"4planAdminDate.7":{"pageNumber":4,"type":"text"},
"1FirstName_ID.7":{"pageNumber":2,"type":"text"},
"Check Box9":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":3,"type":"check_box"},
"1LN.1":{"pageNumber":2,"type":"text"},"1LN.2":{"pageNumber":2,"type":"text"},
"Check Box11":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":3,"type":"check_box"},
"1LN.9":{"pageNumber":2,"type":"text"},
"Check Box17":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":3,"type":"check_box"},
"Check Box16":{"fieldsDetails":[{"fieldName":"Yes"}],"pageNumber":3,"type":"check_box"},
"1LN.7":{"pageNumber":2,"type":"text"},"Check Box19":{"fieldsDetails":[{"fieldName":"Yes"}],
"1LN.8":{"pageNumber":2,"type":"text"},"Check Box18":{"fieldsDetails":[{"fieldName":"Yes"}],
"print":{"pageNumber":2,"type":"push_button"},"4planAdministrator.1":{"pageNumber":4,"type":"text"},
"1TaxID.9":{"pageNumber":2,"type":"text"},"4SSN.1":{"pageNumber":3,"type":"text"},"4SSN.2":{"pageNumber":3,"type":"text"},
"Signature.1":{"pageNumber":4,"type":"text"},"1ZIP.2":{"pageNumber":2,"type":"text"},"1ZIP.3":{"pageNumber":2,"type":"text"},
"message":"Request completed successfully.","status":"success"}
PDFGenerationAPI – getFilledDocumentWithSignatureAsBase64(オブジェクト fieldsMap, 文字列 sysId, PdfMergeSignRequestor 要求者, オブジェクト flatten)
編集可能な PDF のフィールドに入力し、画像を作成して、それを Base64 でエンコードされた PDF に変換します。
Base64 エンコードを使用すると、バイナリ文字の構文を損なうことなく、PDF を HTML や JSON などのテキストドキュメント内の文字列として出力できます。
- fillDocumentFields() – 編集可能な PDF のフィールドに入力し、指定されたレコードに添付します。
- fillDocumentFieldsAndFlatten() – 編集可能な PDF のフィールドに入力し、データフィールドをフラット化して、指定されたレコードに添付します。
- fillFieldsAndMergeSignature() – 編集可能な PDF のフィールドに入力し、署名画像を追加して、データフィールドをフラット化し、指定されたレコードに添付します。
| 名前 | タイプ | 説明 |
|---|---|---|
| fieldsMap | オブジェクト | オプション。PDF フィールド名と入力する値によるキー値マップ。getDocumentFields() メソッドを使用して、使用可能なフィールドのリストを取得します。 |
| sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| requestor | PdfMergeSignRequestor | pdfMergeSignRequestor から返された署名入力。 |
| flatten | オブジェクト | オプション。フィールドをフラット化すると、他のユーザーが情報を変更できないようにフィールドをロックできます。キーを「FlattenType」として指定し、フラット化オプションを文字列として指定します。 有効な値:
デフォルト:fully_flatten |
| タイプ | 説明 |
|---|---|
| 文字列 | 成功すると、Base64 形式に変換された PDF が添付ファイルテーブル [sys_attachment] に追加されます。コンテンツには、フィールドと署名が入力された PDF 添付ファイルが反映されます。flatten パラメーターで代替のフラット化オプションが指定されていない場合、フィールドは編集できません。 |
| <Object>.message | 成功またはエラーを確認するメッセージ。 有効な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、PDF 添付ファイル内の 2 つのフィールドをロードし、フィールドをフラット化して PDF を Base64 形式に変換する方法を示しています。
var mymap = new Object();
mymap["City"] = "City value here";
mymap["State"] = "XX";
// create a requestor
var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
requestor.createRequest("<sys_id>", "tableName", "<tableSysId>", "pdfName");
requestor.addSignatureMapping(6, 40, 50, 188, 44, "<signImgSysId>");
var processedRequestObj = requestor.processRequest();
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.getFilledDocumentWithSignatureAsBase64(mymap, "<attachmentSysId>", processedRequestObj);
gs.info (JSON.stringify(result));
PDFGenerationAPI – getPdfPageSizes(文字列 sysId)
PDF ドキュメントのページサイズを取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 成功した場合は各ページのサイズを含むオブジェクト、失敗した場合はエラーメッセージ。 |
| <Object>.pages_size | 操作が成功した場合、各 PDF ページの幅と高さがポイント単位で表示されます。ページ番号は文字列として返され、測定値は数値データタイプとして返されます。 データタイプ:オブジェクト |
| <Object>.message | 成功またはエラーを確認するメッセージ。 可能な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、PDF 添付ファイルの各ページの幅と高さを表示する方法を示しています。
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.getPdfPageSizes ("<attachmentSysId>");
gs.info(JSON.stringify(result));
出力:
{"pages_size":{"1":[612,792],"2":[612,792],"3":[612,792],"4":[612,792],"5":[612,792]},"message":"Request completed successfully.","status":"success"}
PDFGenerationAPI – isDocumentFillable(文字列 sysId)
PDF ドキュメントに編集可能なフィールドが含まれているかどうかを確認します。
| 名前 | タイプ | 説明 |
|---|---|---|
| sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 成功した場合は各ページのサイズを含むオブジェクト、失敗した場合はエラーメッセージ。 |
| <Object>.document_editable | 操作が成功した場合、ドキュメントが編集可能かどうかを示すフラグ。 有効な値:
データタイプ:文字列として指定されたブーリアン値 |
| <Object>.message | 成功またはエラーを確認するメッセージ。 可能な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、PDF ドキュメントのフィールドが編集可能かどうかを判断する方法を示しています。
var v = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = v.isDocumentFillable("<attachmentSysId>");
gs.info(JSON.stringify(result));
出力:
{"message":"Request completed successfully.","document_editable":"true","status":"success"}
PDFGenerationAPI – redact(オブジェクト inputJson)
指定された矩形座標、検索キーワード、またはその両方に基づいて PDF ドキュメントに編集を適用します。元の PDF の編集コピーが添付ファイル [sys_attachment] テーブルに生成されます。
- 編集結果には、編集することを意図していないテキストを上書きする予期しない白い編集されたテキストブロックが含まれる場合があります。このイベントが発生した場合は、 highlightedSections プロパティまたは PDF 生成ユーティリティプラグインを使用して、編集するコンテンツを手動で選択できます。詳細については、「Redact data from documents」を参照してください。
- このメソッドは、JBIG2 画像を含む PDF のマスキングをサポートしていません。
| 名前 | タイプ | 説明 |
|---|---|---|
| inputJson | オブジェクト | マスキングする PDF とそのコンテンツを識別します。 |
| inputJson.sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 |
| inputJson。ハイライトされたセクション | オブジェクトのアレイ | オブジェクトとして提供される矩形座標のリスト。各座標は、各ページで編集されるコンテンツの場所を表します。 searchedKeywords プロパティを含める場合は省略可能です。 |
| inputJson。ハイライト表示されたセクション。ページ番号 | 番号 | 編集対象として選択するコンテンツを含む PDF ページ番号。 |
| inputJson。ハイライト表示されたセクション。x | 番号 | PDF 上の編集矩形の X 軸 (水平位置) (ポイント単位)。PDF ページの左下隅の値は 0 です。例えば、値を 306 にすると、長方形はレターサイズの PDF ページの水平方向の中心にほぼ配置されます。 |
| inputJson。ハイライト表示されたセクション。y | 番号 | PDF 上の編集矩形の Y 軸 (垂直位置) (ポイント単位)。PDF ページの左下隅の値は 0 です。例えば、値を 396 にすると、長方形はレターサイズの PDF ページの垂直方向の中央付近に配置されます。 |
| inputJson。ハイライト表示されたセクション。幅 | 番号 | 編集矩形の幅はポイント単位です。この値により、x 軸と y 軸が交差する左下の点から水平方向に四角形のサイズが大きくなります。 |
| inputJson。ハイライト表示されたセクション。高さ | 番号 | 編集矩形の高さ (ポイント単位)。この値により、x 軸と y 軸が交差する左下の点から矩形のサイズが垂直に大きくなります。 |
| inputJson。searchedKeywords | アレイ | 編集するテキストの検索に使用する 1 つ以上の文字列のリスト。編集された長方形のサイズは、結果としてブロックされるテキストの高さと幅と一致します。 highlightedSections プロパティを含める場合は省略可能です。 注: 場合によっては、「 items:」 や 「PDF. 」などの特殊文字や句読点を含むテキスト文字列は編集されません。または、文字列から文字を削除したり、領域をハイライト表示してテキストを削除したりすることもできます。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 成功した場合は更新された PDF 添付ファイルの sys_id を含むオブジェクト、それ以外の場合はエラーメッセージ。 |
| <Object>.attachment_id | 操作が成功した場合、入力された PDF の sys_id。ファイルは、添付ファイル [sys_attachment] テーブルにリストされます。 データタイプ:文字列 |
| <Object>.message | 成功またはエラーを確認するメッセージ。 可能な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、四角形とキーワードで編集する方法を示しています。編集された PDF では、2 ページで選択された領域がブロックされます。文字列「23」は、見つかったすべてのページで編集されます。
var pdfRequest = {
sysId: 'e4b3ae35fc128210f877789781ea59f3',
highlightedSections: [
{
"pageNumber": 2,
"x": 261.75,
"y": 480,
"width": 21,
"height": 14.25
},
{
"pageNumber": 2,
"x": 249,
"y": 390.75,
"width": 63.75,
"height": 15.75
}
// Add more coordinates as needed
],
searchedKeywords: ['23']
};
// Convert the JSON object to a string
var jsonRequest = JSON.stringify(pdfRequest);
gs.info('JSON Request: ' + jsonRequest + '\n');
var PDFRedaction = new sn_pdfgeneratorutils.PDFGenerationAPI;
var result = PDFRedaction.redact(jsonRequest);
gs.info(JSON.stringify(result));
出力:
JSON Request: {"sysId":"e4b3ae35fc128210f877789781ea59f3","highlightedSections":[{"pageNumber":2,"x":261.75,"y":480,"width":21,"height":14.25},{"pageNumber":2,"x":249,"y":390.75,"width":63.75,"height":15.75}],"searchedKeywords":[23]}
{"attachment_id":"1744ae35fc128210f877789781ea59fc","message":"Request completed successfully.","status":"success"}