添付ファイル API
添付ファイル API は、添付ファイルのアップロードおよびクエリを可能にするエンドポイントを提供します。
要求ごとに 1 つのファイルをアップロードまたは取得できます。
添付ファイル API は、アップロードされたファイルに関するシステム制限 (最大ファイルサイズや許可された添付ファイルタイプなど) に従います。これらの設定は、com.glide.attachment.max_size プロパティ (デフォルトでは 1024MB) および glide.attachment.extensions プロパティを使用して制御できます。
添付ファイル API の詳細については、次のビデオをご覧ください。
添付ファイル API ロールの要件
添付ファイルを作成するには、ServiceNow の HTTP 要求を認証するために使用されるユーザーレコードに、添付ファイル [sys_attachment] レコードを作成するために必要なロールが必要です。また、ターゲットテーブルのレコードを読み書きするために必要なロール (インシデントレコードに添付ファイルを追加するための itil ロールなど) も必要です。
デフォルトでは、ユーザーが添付ファイルを追加できる単一のロールはありません。添付ファイルの追加を明示的に許可するロールを作成し、要求の実行に使用するユーザーアカウントにこのロールを割り当てることができます。
添付ファイル - DELETE /now/attachment/{sys_id}
このメソッドは、特定の sys_id 値を持つ添付ファイルを削除します。
URL 形式
バージョニングされた URL:/api/now/v1/attachment/{sys_id}
デフォルトの URL:/api/now/attachment/{sys_id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| sys_id | 削除する添付ファイルの sys_id 値。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| なし |
| ヘッダー | 説明 |
|---|---|
| なし |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 204 | 要求が正常に実行されたことを示します。 |
| 401 | 権限がありません。ユーザー資格情報が間違っているか、渡されていません。 |
| 404 | 見つかりません。要求されたアイテムが見つかりませんでした。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| なし |
cURL 要求
curl "https://instance.servicenow.com/api/now/attachment/615ea769c0a80166001cf5f2367302f5" \
--request DELETE \
--user 'username':'password'
""
添付ファイル - GET /now/attachment
複数の添付ファイルのメタデータを返します。
URL 形式
バージョニングされた URL:api/now/v1/attachment
デフォルトの URL:api/now/attachment
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| sysparm_limit | ページネーションに適用される制限。 注: sysparm_limit 値が異常に大きい場合は、システムパフォーマンスに影響する可能性があります。データタイプ:文字列 デフォルト:1000 |
| sysparm_offset | クエリから除外するレコードの数。このパラメーターを使用して、 sysparm_limit パラメーターで指定された数よりも多くのレコードを取得します。たとえば、 sysparm_limit が 500 に設定されていても、クエリする追加のレコードがある場合は、 sysparm_offset パラメーター値 500 を指定して、2 番目のレコードセットを取得できます。 データタイプ:文字列 デフォルト:0 |
| sysparm_query | エンコードされたクエリです。添付ファイル API のクエリは、添付ファイル [sys_attachment] テーブルに関連しています。 例: (sysparm_query=file_name=attachment.doc) エンコードされたクエリは、順序をサポートしています。特定のフィールドに基づいて応答を並べ替えるには、sysparm_query で ORDERBY および ORDERBYDESC 句を使用します。たとえば、 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| Content-Type | 応答のコンテンツタイプ。メタデータ要求の場合、これは添付ファイルのコンテンツタイプではなく、メタデータのコンテンツタイプです。 |
| Link | 添付ファイルをダウンロードするためのリンク。 |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | 権限がありません。ユーザー資格情報が間違っているか、渡されていません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| 返される情報は、選択された添付ファイルによって異なります。 |
cURL 要求
curl "https://instance.servicenow.com/api/now/attachment?sysparm_limit=1" \
--request GET \
--header "Accept:application/json" \
--user "username":"password"
{
"result": [
{
"table_sys_id": "5054b6f8c0a800060056addcf551ecf8",
"size_bytes": "462",
"download_link": "https://instance.service-now.com/api/now/attachment/615ea769c0a80166001cf5f2367302f5/file",
"sys_updated_on": "2009-05-21 04:12:21",
"sys_id": "615ea769c0a80166001cf5f2367302f5",
"image_height": "",
"sys_created_on": "2009-05-21 04:12:21",
"file_name": "blocks.swf",
"sys_created_by": "glide.maint",
"compressed": "true",
"average_image_color": "",
"sys_updated_by": "glide.maint",
"sys_tags": "",
"table_name": "content_block_programmatic",
"image_width": "",
"sys_mod_count": "0",
"content_type": "application/x-shockwave-flash",
"size_compressed": "485"
}
]
}
添付ファイル - GET /now/attachment/{sys_id}/file
特定の sys_id 値を持つバイナリ添付ファイルを返します。
URL 形式
バージョニングされた URL:/api/now/v1/attachment/{sys_id}/file
デフォルトの URL:/api/now/attachment/{sys_id}/file
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| sys_id | バイナリデータを返す元の添付ファイルレコードの sys_id。 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| Accept | 応答本文のデータフォーマット。たとえば、JPEG または PNG 画像ファイルのみを受け入れるには、image/jpeg または image/png を使用します。すべての画像タイプを許可するには image/*を指定し、あらゆるファイルタイプを許可するには */* を指定します。デフォルト:*/* |
| ヘッダー | 説明 |
|---|---|
| X-Attachment-Metadata | 返されるファイルに関するメタデータ (サイズ、名前、ファイルタイプなど)。 |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 401 | 権限がありません。ユーザー資格情報が間違っているか、渡されていません。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| バイナリ添付ファイル |
cURL 要求
curl "https://instance.servicenow.com/api/now/attachment/615ea769c0a80166001cf5f2367302f5/file" \
--request GET \
--header "Accept:*/*" \
--user "username":"password"
Binary response not shown.
添付ファイル - GET /now/attachment/{sys_id}
特定の sys_id 値を持つ添付ファイルのメタデータを返します。
URL 形式
バージョニングされた URL:/api/now/v1/attachment/{sys_id}
デフォルトの URL:/api/now/attachment/{sys_id}
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| sys_id | メタデータを取得する添付ファイルレコードの sys_id。 |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| ヘッダー | 説明 |
|---|---|
| Content-Type | 応答のコンテンツタイプ。メタデータ要求の場合、これは添付ファイルのコンテンツタイプではなく、メタデータのコンテンツタイプです。 |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 200 | 成功。要求が正常に処理されました。 |
| 401 | 権限がありません。ユーザー資格情報が間違っているか、渡されていません。 |
| 404 | 指定された添付ファイルが存在しないか、現在のユーザーがそのファイルにアクセスできないことを示します。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 名前 | 説明 |
|---|---|
| 指定された添付ファイルに固有のメタデータ。 |
cURL 要求
curl "https://instance.servicenow.com/api/now/attachment/615ea769c0a80166001cf5f2367302f5" \
--request GET \
--header "Accept:application/json" \
--user "username":"password"
{
"result": {
"table_sys_id": "5054b6f8c0a800060056addcf551ecf8",
"size_bytes": "462",
"download_link": "https://instance.service-now.com/api/now/attachment/615ea769c0a80166001cf5f2367302f5/file",
"sys_updated_on": "2009-05-21 04:12:21",
"sys_id": "615ea769c0a80166001cf5f2367302f5",
"image_height": "",
"sys_created_on": "2009-05-21 04:12:21",
"file_name": "blocks.swf",
"sys_created_by": "glide.maint",
"compressed": "true",
"average_image_color": "",
"sys_updated_by": "glide.maint",
"sys_tags": "",
"table_name": "content_block_programmatic",
"image_width": "",
"sys_mod_count": "0",
"content_type": "application/x-shockwave-flash",
"size_compressed": "485"
}
}
添付ファイル - POST /now/attachment/file
指定されたバイナリファイルを、指定されたレコードの添付ファイルとしてアップロードします。
URL 形式
バージョニングされた URL:/api/now/v1/attachment/file
デフォルトの URL:/api/now/attachment/file
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| creation_time | 添付ファイルの作成日時。 このパラメーターを使用して、 Now Mobile アプリ がオフラインで、後で添付ファイルをレコードにアップロードした場合に、添付ファイルの作成時間をキャプチャします。 データタイプ:文字列 デフォルト:現在の日付と時刻。 |
| encryption_context | 暗号化コンテキストレコードの sys_id。指定された暗号化コンテキストを持つユーザーのみが添付ファイルにアクセスできるようにするには、このパラメーターを指定します。暗号化コンテキストレコードの詳細については、「 Field Encryption」を参照してください。 データタイプ:文字列 デフォルト:ファイルは、ユーザーがアクセスできる暗号化コンテキストを使用して暗号化されます。それ以外の場合、添付ファイルは暗号化コンテキストで暗号化されません。 |
| file_name | 必須です。添付ファイルに付ける名前。 データタイプ:文字列 |
| table_name | 必須です。ファイルを添付するテーブルの名前。 データタイプ:文字列 |
| table_sys_id | 必須です。table_name で指定されたテーブルの、ファイルを添付するレコードの sys_id。 データタイプ:文字列 |
| 名前 | 説明 |
|---|---|
| <文字列> | 指定されたレコードに添付するバイナリファイルへのパス。 |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| Content-Type | 添付するファイルのコンテンツ タイプ (image/jpeg や */* など)。添付ファイルをポストするには、このヘッダーが必須です。 |
| ヘッダー | 説明 |
|---|---|
| 場所 | 新しい添付ファイルの URL。 |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 201 | クエリが正常に実行されたことを示します。 |
| 400 | 1 つ以上の必須パラメーターが要求になかったことを示します。 |
| 404 | table_name および table_sys_id パラメーターで指定されたレコードが存在しないか、現在のユーザーがアクセスできないことを示します。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 要素 | 説明 |
|---|---|
| result | 要求された添付ファイルのメタデータ。 データタイプ:オブジェクト |
| result.average_image_color | 添付ファイルが画像の場合は、すべての色の合計。 データタイプ:文字列 単位:RGB またはピクセル数。 |
| result.compressed | 添付ファイルが圧縮されているかどうかを示すフラグ。 可能な値:
データタイプ:文字列 |
| result.content_type | 関連付けられた添付ファイルのコンテンツタイプ (image、 jpeg、 application/x-shockflow-flash など)。 データタイプ:文字列 |
| result.created_by_name | 添付ファイルを最初に作成したエンティティのフルネーム。 データタイプ:文字列 |
| result.download_link | ServiceNow インスタンスの添付ファイルのダウンロード URL。 データタイプ:文字列 |
| result.file_name | 添付ファイルのファイル名。 データタイプ:文字列 |
| result.image_height | 画像ファイルの場合、画像の高さ。 データタイプ:文字列 単位:ピクセル |
| result.image_width | 画像ファイルの場合、画像の幅。 データタイプ:文字列 単位:ピクセル |
| result.size_bytes | 添付ファイルのサイズ。 データタイプ:文字列 単位:バイト |
| result.size_compressed | 圧縮された添付ファイルのサイズ。ファイルが圧縮されていない場合は、空になります。 データタイプ:文字列 単位:バイト |
| result.sys_created_by | 添付ファイルを最初に作成したエンティティ。 データタイプ:文字列 |
| result.sys_created_on | 添付ファイルが最初にインスタンスに保存された日時。 データタイプ:文字列 |
| result.sys_id | 添付ファイルの sys_id。 データタイプ:文字列 |
| result.sys_mod_count | 添付ファイルが変更された (インスタンスにアップロードされた) 回数。 データタイプ:文字列 |
| result.sys_tags | 添付ファイルに関連付けられているシステムタグ。 データタイプ:文字列 |
| result.sys_updated_by | 添付ファイルを最後に更新したエンティティ。 データタイプ:文字列 |
| result.sys_updated_on | 添付ファイルが最後に更新された日時。 データタイプ:文字列 |
| result.table_name | 添付ファイルが関連付けられたテーブルの名前。 データタイプ:文字列 |
| result.table_sys_id | 添付ファイルに関連付けられたテーブルの sys_id。 データタイプ:文字列 |
| result.updated_by_name | 添付ファイルを最後に更新したエンティティのフルネーム。 データタイプ:文字列 |
cURL 要求
curl "https://instance.servicenow.com/api/now/attachment/file?table_name=incident&table_sys_id=d71f7935c0a8016700802b64c67c11c6&file_name=Issue_screenshot" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type: image/jpeg" \
--user "username":"password" \
--data-binary "@ location of the file on file system"
{
"result": {
"table_sys_id": "d71f7935c0a8016700802b64c67c11c6",
"size_bytes": "36597",
"download_link": "https://instance.servicenow.com/api/now/attachment/6ea10fe64f411200adf9f8e18110c739/file",
"sys_updated_on": "2016-01-22 15:14:07",
"sys_id": "6ea10fe64f411200adf9f8e18110c739",
"image_height": "",
"sys_created_on": "2016-01-22 15:14:07",
"file_name": "Issue_screenshot",
"sys_created_by": "admin",
"compressed": "true",
"average_image_color": "",
"sys_updated_by": "admin",
"sys_tags": "",
"table_name": "incident",
"image_width": "",
"sys_mod_count": "0",
"content_type": "image/jpeg",
"size_compressed": "25130"
}
}
添付ファイル - POST /now/attachment/upload
マルチパート添付ファイルをアップロードします。
マルチパート POST メソッドはパラメーターを受け入れません。フォーム本体内でテーブル名とレコード sys_id 値を指定する必要があります。multipart/form-data 要求のサンプルについては、cURL の例を参照してください。
URL 形式
バージョニングされた URL:/api/now/v1/attachment/upload
デフォルトの URL:/api/now/attachment/upload
サポートされている要求パラメーター
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
| 名前 | 説明 |
|---|---|
| なし |
ヘッダー
次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。
| ヘッダー | 説明 |
|---|---|
| 承認 | 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml。 デフォルト: application/json |
| Content-Type | 要求のコンテンツタイプ。マルチパート POST メソッドを使用する場合は、この値を multipart/form-data に設定します。 |
| ヘッダー | 説明 |
|---|---|
| 場所 | 新しい添付ファイルの URL。 |
ステータスコード
この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。
| ステータスコード | 説明 |
|---|---|
| 201 | クエリが正常に実行されたことを示します。 |
| 400 | 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。 |
| 401 | 権限がありません。ユーザー資格情報が間違っているか、渡されていません。 |
| 404 | 見つかりません。要求されたアイテムが見つかりませんでした。 |
| 500 | 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。 |
応答本文のパラメーター (JSON または XML)
| 要素 | 説明 |
|---|---|
| result | 要求された添付ファイルのメタデータ。 データタイプ:オブジェクト |
| result.average_image_color | 添付ファイルが画像の場合は、すべての色の合計。 データタイプ:文字列 単位:RGB またはピクセル数。 |
| result.compressed | 添付ファイルが圧縮されているかどうかを示すフラグ。 可能な値:
データタイプ:文字列 |
| result.content_type | 関連付けられた添付ファイルのコンテンツタイプ (image、 jpeg、 application/x-shockflow-flash など)。 データタイプ:文字列 |
| result.created_by_name | 添付ファイルを最初に作成したエンティティのフルネーム。 データタイプ:文字列 |
| result.download_link | ServiceNow インスタンスの添付ファイルのダウンロード URL。 データタイプ:文字列 |
| result.file_name | 添付ファイルのファイル名。 データタイプ:文字列 |
| result.image_height | 画像ファイルの場合、画像の高さ。 データタイプ:文字列 単位:ピクセル |
| result.image_width | 画像ファイルの場合、画像の幅。 データタイプ:文字列 単位:ピクセル |
| result.size_bytes | 添付ファイルのサイズ。 データタイプ:文字列 単位:バイト |
| result.size_compressed | 圧縮された添付ファイルのサイズ。ファイルが圧縮されていない場合は、空になります。 データタイプ:文字列 単位:バイト |
| result.sys_created_by | 添付ファイルを最初に作成したエンティティ。 データタイプ:文字列 |
| result.sys_created_on | 添付ファイルが最初にインスタンスに保存された日時。 データタイプ:文字列 |
| result.sys_id | 添付ファイルの sys_id。 データタイプ:文字列 |
| result.sys_mod_count | 添付ファイルが変更された (インスタンスにアップロードされた) 回数。 データタイプ:文字列 |
| result.sys_tags | 添付ファイルに関連付けられているシステムタグ。 データタイプ:文字列 |
| result.sys_updated_by | 添付ファイルを最後に更新したエンティティ。 データタイプ:文字列 |
| result.sys_updated_on | 添付ファイルが最後に更新された日時。 データタイプ:文字列 |
| result.table_name | 添付ファイルが関連付けられたテーブルの名前。 データタイプ:文字列 |
| result.table_sys_id | 添付ファイルに関連付けられたテーブルの sys_id。 データタイプ:文字列 |
| result.updated_by_name | 添付ファイルを最後に更新したエンティティのフルネーム。 データタイプ:文字列 |
POST マルチパートの必須の値
| 値 | 説明 |
|---|---|
| Content-Type | マルチパートアップロードのメッセージ本文に含まれる、ファイルのコンテンツタイプ。 注:
Content-Type を、フォームデータ内ではなく、POST メッセージのファイル部分内で定義する必要があります。マルチパートメッセージの例については、POST マルチパートメッセージのサンプルを参照してください。 データタイプ:文字列 |
| table_name | ファイルを添付するテーブルの名前。 データタイプ:文字列 |
| table_sys_id | 指定されたテーブルの、ファイルを添付するレコードの sys_id。 データタイプ:文字列 |
cURL 要求
curl "https://instance.servicenow.com/api/now/attachment/upload" \
--request POST \
--header "Accept:application/json"\
--user "username":"password"\
--header "Content-Type:multipart/form-data"\
-F 'table_name=incident' \
-F 'table_sys_id=d71f7935c0a8016700802b64c67c11c6'\
-F 'uploadFile=@ location of the file on file system'
\
{
"result": {
"table_sys_id": "d71f7935c0a8016700802b64c67c11c6",
"size_bytes": "36597",
"download_link": "https://instance.service-now.com/api/now/attachment/994adbc64f511200adf9f8e18110c796/file",
"sys_updated_on": "2016-02-02 14:00:21",
"sys_id": "994adbc64f511200adf9f8e18110c796",
"image_height": "",
"sys_created_on": "2016-02-02 14:00:21",
"file_name": "banner-CS0001345_v1_1.jpeg",
"sys_created_by": "admin",
"compressed": "true",
"average_image_color": "",
"sys_updated_by": "admin",
"sys_tags": "",
"table_name": "incident",
"image_width": "",
"sys_mod_count": "0",
"content_type": "image/jpeg",
"size_compressed": "25130"
}
}