メタデータ・コレクションの作成
/documents/api/1.2/metadata/{collectionName}
フィールド値を文字列として保存するための名前付きコレクションを作成します。 グローバル・コレクションを作成するには、管理者としてログインする必要があります。 すべてのテナント・ユーザーがグローバル・コレクションを使用できます。
フィールド値を割当て可能にするには、コレクションをフォルダまたはファイルに割り当てる必要があります。
新規:
コレクションの名前の前にPersonal.
を付けることで、ユーザー個人のコレクションを作成できます。 個人コレクションは作成者のみが表示およびアクセスできるため、2人の異なるユーザーが同じ名前を使用して独自の個人コレクションを定義した場合でも、ネーミングの競合は発生しません。
ノート:
グローバル・コレクション名は、コレクションが定義されているインスタンスで一意でなければならず、コレクション名を作成した後で変更することはできません。 これらの理由から、メタデータ・コレクションの広範囲の使用を予定している場合は命名規則の遵守を考慮してください。
リクエスト
- application/json
- application/xml
- collectionName: string
最大長:
240
グローバル・コレクション名は、コレクションが定義され使用されているインスタンスで一意でなければなりません。 ユーザー個人コレクション名は、
Personal.MyCollection
などのPersonal.
で始まる必要があります。ノート:
作成後に、コレクションの名前を変更することはできません。
コレクション名およびフィールド名には次の制限事項があります。
- コレクション名およびフィールド名の先頭または末尾をスペースにすることはできません。
- コレクション名およびフィールド名を結合した長さが240文字を超えることはできません。
- コレクション名およびファイル名では、大文字と小文字は区別されません。つまり、
Field Name
とfield name
は同一とみなされます。
コレクション名またはフィールド名で次の文字を使用しないでください。
/ \ < > [ ] { } = $ % ' * " ? : # & ^ . , | コレクション名またはフィールド名では、次の文字列も使用できません。
- NUL
- NULL
- xSystem
- xUser
- xAF
- dMetadataUnitID
- dParentMetadataUnitID
- dMetadataInheritLevel
- dAssignedMetaCollection
- dMetaCollection
- dMetaCollections
- dMetadataCollectionID
- dMetadataID
object
メタデータ・コレクションの作成に使用できるフィールドの説明。
- fields: string
最大長:
240
カンマで区切られた1つ以上のフィールド名。 コレクションが作成された後、フィールドを追加および削除できます。 フィールド名はコレクション内で一意である必要があります。 すべてのフィールドは
text
タイプになります。コレクション名およびフィールド名には次の制限事項があります。
- コレクション名およびフィールド名の先頭または末尾をスペースにすることはできません。
- コレクション名およびフィールド名を結合した長さが240文字を超えることはできません。
- コレクション名とフィールド名では大文字と小文字は区別されません。つまり、
Field Name
とfield name
は同一とみなされます。
コレクション名またはフィールド名で次の文字を使用しないでください。
/ \ < > [ ] { } = $ % ' * " ? : # & ^ . , | コレクション名またはフィールド名では、次の文字列も使用できません。
- NUL
- NULL
- xSystem
- xUser
- xAF
- dMetadataUnitID
- dParentMetadataUnitID
- dMetadataInheritLevel
- dAssignedMetaCollection
- dMetaCollection
- dMetaCollections
- dMetadataCollectionID
- dMetadataID
- fieldsArray(optional): array fieldsArray
作成されたフィールドをより詳細に制御する必要がある場合は、
fields
パラメータのかわりに使用できます。fields
とfieldsArray
の両方を指定した場合、前者は無視されます。
array
fields
パラメータのかわりに使用できます。 fields
とfieldsArray
の両方を指定した場合、前者は無視されます。 object
- defaultValue(optional): string
フィールドのデフォルト値。
fieldType
がdate
の場合、値はyyyy-mm-ddThh:mm:ss
フォームにある必要があります。boolean
タイプの場合、有効な値はtrue
の場合は(1)、false
の場合は(0)です。 - fieldDescription(optional): string
フィールドの説明。
- fieldName(optional): string
fields
入力パラメータの説明となるフィールド名。 - fieldType(optional): string
フィールドのタイプ。
使用可能な値は次のとおりです。
- テキスト(デフォルト)
- number
- date
- boolean
{
"fields":"FieldA,FieldB"
}
レスポンス
- application/json
- application/xml
201レスポンス
リクエストが処理されました。
object
メタデータ・コレクションの作成レスポンスで使用可能なフィールドの説明。
- errorCode(optional): number
エラー・コードがゼロ(0)の場合は、エラーなしです
400レスポンス
リクエスト・パラメータが正しい形式ではありません。
その名前のコレクションがすでに存在します。
例
次の例では、A1
およびA2
の2つのフィールドを含むCollectionA
というコレクションを作成します。
POST .../metadata/CollectionA
リクエスト・ヘッダー
なし。
リクエスト本文
{ "fields": "A1,A2" }
HTTPステータス・コード
HTTP_STATUS = 200
JSONレスポンス
{ "errorCode": "0" }
例2
次の例では、様々なタイプの複数のフィールドを記述とデフォルト値とともに使用して、Personal.CollectionA
という個人用コレクションを作成します。
POST .../metadata/Personal.CollectionA
リクエスト・ヘッダー
なし。
リクエスト本文
{ "fieldsArray":[ {"fieldName":"FieldA", "fieldType":"text", "fieldDescription":"Field A", "defaultValue":"Hello world"}, {"fieldName":"FieldB", "fieldType":"number", "fieldDescription":"Field B", "defaultValue":123}, {"fieldName":"FieldC", "fieldType":"date", "fieldDescription":"Field C", "defaultValue":"2020-02-20T11:12:13"}, {"fieldName":"FieldD", "fieldType":"boolean", "fieldDescription":"Field D", "defaultValue":1} ] }
HTTPステータス
HTTP_STATUS = 200
JSONレスポンス
{ "errorCode": "0" }
例3
次の例では、すでに存在する名前を使用してコレクションを作成しようとします。
POST .../metadata/CollectionA
リクエスト・ヘッダー
なし。
リクエスト本文
{ "fields": "field1,field2" }
HTTPステータス
HTTP_STATUS = 409
JSONレスポンス
{ "errorCode": "-17", "errorKey": "!csUnableToCreateMetaColDef!csMetaDefinitionExists,CollectionA", "errorMessage": "Unable to create metadata collection definition. Metadata field definition 'CollectionA' is already defined.", "title": "Unable to create metadata collection definition. Metadata field definition 'CollectionA' is already defined.", "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html" }
例4
次の例では、名前に含まれる無効な文字を使用してコレクションを作成しようとします。
POST .../metadata/CollectionA,B
リクエスト・ヘッダー
なし。
リクエスト本文
{ "fields": "field1,field2" }
HTTPステータス・コード
HTTP_STATUS = 400
JSONレスポンス
{ "errorCode": "-96", "errorKey": "!csCollectionNameInvalidCharacters,CollectionA\\,B", "errorMessage": "Invalid characters in the collection name 'CollectionA,B'.", "title": "Invalid characters in the collection name 'CollectionA,B'.", "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html" }