Ncloud Storageの概要

Prev Next

Classic/VPC環境で利用できます。

Ncloud Storageは、優れた拡張性と可用性、データ耐久性を保証し、いつでもデータを保存したり検索したりできる NAVERクラウドプラットフォームのオブジェクトストレージサービスです。Ncloud Storageサービスは、バケットの管理、オブジェクトのアップロードなどデータを保存・管理する機能関連の APIを RESTful形式で提供します。

参考

Ncloud Storage APIは、Amazon S3 API v2006-03-01と高いレベルの互換性を持つように設計されています。Ncloud Stroage APIの詳細は、AWSのS3 API Referenceをご参照ください。

Ncloud Storageの共通設定

Ncloud Storage APIで共通して使用されるリクエスト形式とレスポンス形式を説明します。

リクエスト

共通リクエスト形式を説明します。

API URL

リクエスト API URLは次の通りです。

https://{Bucket}.{regionCode}.ncloudstorage.com

BucketregionCodeの説明は次の通りです。

構成要素 必須の有無 説明
Bucket Optional バケット名
  • 英字の小文字、数字、記号の「-」を組み合わせて3~63文字以内
  • 先頭文字と末尾文字は英字または数字のみ使用
  • 特定の接頭辞と接尾辞は使用不可: バケット名ルールを参照
  • バケット名の確認: ListBucketsを参照
regionCode Required リージョンコード
  • kr: 韓国リージョン (有効値)
参考

API URLに関する次の内容をご確認ください。

  • HTTP/HTTPSプロトコルをサポートします。ただし、データ保護のため、HTTPSの使用をお勧めします。
  • 現在韓国リージョンをサポートしていますが、対象リージョンは継続して追加される予定です。

リクエストヘッダ

リクエストヘッダの説明は次の通りです。

フィールド 必須の有無 説明
Authorization Required 認証のための署名
  • AWS Signature Version 4を使用
  • NAVERクラウドプラットフォームコンソールから発行された Access Keyと Secret Keyを使用
Host Required リージョンごとのエンドポイント
  • <例> kr.ncloudstorage.com
x-amz-date Required リクエスト日時
  • ISO 8601形式(UTCを使用)
Content-Length Conditional リクエストボディのサイズ(Byte)
  • オブジェクトアップロードのリクエスト時、必須

レスポンス

共通レスポンス形式を説明します。

レスポンスヘッダ

レスポンスヘッダの説明は次の通りです。

フィールド 必須の有無 説明
accept-ranges - 範囲リクエスト(Range Request)をサポートするかどうか
  • bytes | none
    • bytes: サポート
    • none: サポートしない
connection - 接続を保持するかどうか
  • keep-alive | close
    • keep-alive: リクエスト完了後、接続保持
    • close: リクエスト完了後、接続解除
Content-Length - レスポンスボディサイズ(Byte)
Content-Type - リクエストデータの形式
date - レスポンス日時
  • HTTP-date形式(GMTを使用)
etag - オブジェクトの固有 ID(Entity Tag)
last-modified - 最終更新日時
  • HTTP-date形式(GMTを使用)
server - レスポンスを返すサーバ名
  • Ncloud Storage (有効値)
x-amz-access-point-alias - バケット名のタイプ
  • true | false
    • true: アクセスポイントのエイリアス(Alias)
    • false: バケット名
x-amz-bucket-region - バケットリージョン
  • kr: 韓国リージョン
x-amz-checksum-type - オブジェクトのチェックサムタイプ
  • COMPOSITE | FULL_OBJECT
    • COMPOSITE: マルチパートのチェックサム
    • FULL_OBJECT: 全オブジェクトのチェックサム
x-amz-delete-marker - オブジェクト削除マーカーかどうか
  • true | false
    • true: 削除マーカー
    • false: 一般のオブジェクト
x-amz-id-2 - リクエスト ID
  • x-amz-request-idと一緒にトラブルシューティング時に使用
x-amz-object-size - オブジェクトのサイズ(Byte)
x-amz-request-id - リクエスト ID
  • UUID形式
x-amz-version-id - バージョン管理 ID
  • バージョン管理有効化時に表示

レスポンスステータスコード

レスポンスステータスコードの説明は次の通りです。

HTTPステータスコード コード 説明 課金するかどうか
304 NotModified リソースが変更されていない N
400 AuthorizationHeaderMalformed 無効な認証情報またはリージョン情報 N
400 AuthorizationQueryParametersError 無効な認証クエリパラメータ N
400 BadDigest リクエストヘッダの Content-MD5またはチェックサム値がサーバの計算と一致しない Y
400 EntityTooLarge アップロードしたオブジェクトの容量が最大容量を超過 N
400 EntityTooSmall アップロードしたオブジェクトの容量が最小容量未満 N
400 InvalidArgument 無効なリクエスパラメータまたはヘッダ N
400 InvalidBucketName 無効な形式のバケット名 N
400 InvalidDigest リクエストヘッダの Content-MD5またはチェックサム値エラー N
400 InvalidLocationConstraint 無効なリージョン制約条件 N
400 InvalidPart 指定されたパートのうち、1つ以上見つからない(パートがアップロードされなかったか、ETagが一致しないパートを指定) Y
400 InvalidPartNumber 無効なパート番号 Y
400 InvalidPartOrder パートリストがパート番号の昇順でソートされていない Y
400 InvalidRequest 無効なリクエスト N
400 InvalidStorageClass 無効なストレージクラス N
400 InvalidURI パースできない URI N
400 KeyTooLongError 入力したキーの長さが許容範囲を超過 N
400 MalformedXML 入力した XML形式が正しくないか、公開されたスキーマが検査されていない N
400 MetadataTooLarge メタデータのヘッダが最大サイズを超過 N
400 MissingRequestBodyError リクエストボディが空である N
400 NotImplemented 実装されていないヘッダを入力 N
400 RequestHeaderSectionTooLarge リクエストヘッダとリクエストクエリパラメータが最大サイズを超過 N
400 TooManyBuckets 最大バケット数(100個)を超過 N
400 XAmzContentSHA256Mismatch x-amz-content-sha256ヘッダがサーバの計算と一致しない N
400 InvalidEncryptionAlgorithmError 無効な暗号化アルゴリズム N
403 AccessDenied アクセス権限なし N
403 InvalidAccessKeyId 存在しない Access Key ID N
403 InvalidObjectState 現在のオブジェクトの状態に対して無効な操作をリクエスト Y
403 RequestTimeTooSkewed リクエスト時間とサーバ時間との差が大きすぎる N
403 SignatureDoesNotMatch リクエストの署名値がサーバの計算と一致しない N
404 NoSuchBucket 存在しないバケット N
404 NoSuchKey 存在しない Key Y
404 NoSuchUpload 存在しないマルチパートアップロード(アップロード IDエラーか、マルチパートアップロードが中断/完了) Y
404 NoSuchVersion 存在しないバージョン ID Y
404 NoSuchLifecycleConfiguration 存在しないライフサイクルルール Y
405 MethodNotAllowed リソースに対して許可されていないメソッドをリクエスト N
409 BucketAlreadyExists 使用できないバケット名 N
409 BucketAlreadyOwnedByYou 既に所有するバケットの作成をリクエスト Y
409 BucketNotEmpty 空でないバケットの削除をリクエスト Y
409 BucketNotEmptyInUnversioned 空でないバケットの削除をリクエスト(バージョン管理は無効化状態) N
409 RestoreAlreadyInProgress オブジェクトの復元が既に進行中 Y
411 MissingContentLength Content-Lengthヘッダの欠落 N
412 PreconditionFailed 指定した前提条件のうち少なくとも1つが成立していない Y
416 InvalidPartNumber リクエストしたパート番号が有効ではない Y
416 InvalidRange リクエストされた範囲がリクエストに適していない Y
429 SlowDown 高すぎるリクエスト率 N
500 InternalError サーバ内部エラー N
503 ServiceUnavailable サービスでリクエスト処理不可 N
参考

NAVERクラウドプラットフォームで共通して使用されるレスポンスステータスコードの詳細は、Ncloud APIのレスポンスステータスコードをご参照ください。

Ncloud Storage API

Ncloud Storageサービスが提供する APIの説明は次の通りです。

Bucket

Bucket関連 APIの説明は次の通りです。

API 説明
CreateBucket Ncloud Storageバケットを作成
GetBucketEncryption Ncloud Storageバケットの暗号化ポリシーを照会
GetBucketLifecycleConfiguration Ncloud Storageバケットのライフサイクルを照会
GetBucketLocation Ncloud Storageバケットのリージョン情報を照会
GetBucketVersioning Ncloud Storageバケットバージョンの状態を照会
HeadBucket Ncloud Storageバケットのメタデータを照会
ListBuckets Ncloud Storageバケットリストを照会
PutBucketVersioning Ncloud Storageバケットバージョンの状態を変更
PutBuckeLifecycleConfiguration Ncloud Storageバケットのライフサイクルを変更
DeleteBucket Ncloud Storageバケットを削除
DeleteBucketLifecycle Ncloud Storageバケットのライフサイクルを削除

Object

Object関連 APIの説明は次の通りです。

API 説明
CopyObject Ncloud Storageバケットに保存したオブジェクトをコピー
PutObject Ncloud Storageバケットにオブジェクトを保存
GetObject Ncloud Storageバケットに保存したオブジェクトのダウンロードと照会
HeadObject Ncloud Storageバケットに保存したオブジェクトのメタデータを照会
ListObjects Ncloud Storageバケットのオブジェクトリストを照会
ListObjectsV2 Ncloud Storageバケットのオブジェクトリストを照会(最新バージョン)
ListObjectVersions バージョン管理が設定されたバケットに保存したオブジェクトのすべてのバージョンのメタデータを照会
RestoreObject Archive Classに保存したオブジェクトにアクセスできるようにオブジェクトを復元
DeleteObject Ncloud Storageバケットに保存したオブジェクトを削除
DeleteObjects Ncloud Storageバケットに保存したオブジェクトを一括削除

Multipart Upload

Multipart Upload関連 APIの説明は次の通りです。

API 説明
CreateMultipartUpload マルチパートアップロードを開始し、アップロード IDを返す
UploadPart マルチパートアップロードのパートをアップロード
UploadPartCopy バケットに既に保存したオブジェクトをコピーしてパートでアップロード
ListParts マルチパートアップロードのパートリストを照会
ListMultipartUploads 進行中のマルチパートアップロードリストを照会
CompleteMultipartUpload アップロードしたパートを組み合わせてオブジェクトを作成し、マルチパートアップロードを完了
AbortMultipartUpload 実行中のマルチパートアップロードを中断

Ncloud Storage関連リソース

Ncloud Storage APIについてユーザーの理解に役立つよう、さまざまな関連リソースを提供しています。