define_index_field
(**kwargs)¶Configures an IndexField
for the search domain. Used to create new fields and modify existing ones. You must specify the name of the domain you are configuring and an index field configuration. The index field configuration specifies a unique name, the index field type, and the options you want to configure for the field. The options you can specify depend on the IndexFieldType
. If the field exists, the new configuration replaces the old one. For more information, see Configuring Index Fields in the Amazon CloudSearch Developer Guide .
See also: AWS API Documentation
Request Syntax
response = client.define_index_field(
DomainName='string',
IndexField={
'IndexFieldName': 'string',
'IndexFieldType': 'int'|'double'|'literal'|'text'|'date'|'latlon'|'int-array'|'double-array'|'literal-array'|'text-array'|'date-array',
'IntOptions': {
'DefaultValue': 123,
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'DoubleOptions': {
'DefaultValue': 123.0,
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'LiteralOptions': {
'DefaultValue': 'string',
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'TextOptions': {
'DefaultValue': 'string',
'SourceField': 'string',
'ReturnEnabled': True|False,
'SortEnabled': True|False,
'HighlightEnabled': True|False,
'AnalysisScheme': 'string'
},
'DateOptions': {
'DefaultValue': 'string',
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'LatLonOptions': {
'DefaultValue': 'string',
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'IntArrayOptions': {
'DefaultValue': 123,
'SourceFields': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False
},
'DoubleArrayOptions': {
'DefaultValue': 123.0,
'SourceFields': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False
},
'LiteralArrayOptions': {
'DefaultValue': 'string',
'SourceFields': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False
},
'TextArrayOptions': {
'DefaultValue': 'string',
'SourceFields': 'string',
'ReturnEnabled': True|False,
'HighlightEnabled': True|False,
'AnalysisScheme': 'string'
},
'DateArrayOptions': {
'DefaultValue': 'string',
'SourceFields': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False
}
}
)
[REQUIRED]
A string that represents the name of a domain. Domain names are unique across the domains owned by an account within an AWS region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).
[REQUIRED]
The index field and field options you want to configure.
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
The type of field. The valid options for a field depend on the field type. For more information about the supported field types, see Configuring Index Fields in the Amazon CloudSearch Developer Guide .
Options for a 64-bit signed integer field. Present if IndexFieldType
specifies the field is of type int
. All options are enabled by default.
The name of the source field to map to the field.
Whether facet information can be returned for the field.
Whether the contents of the field are searchable.
Whether the contents of the field can be returned in the search results.
Whether the field can be used to sort the search results.
Options for a double-precision 64-bit floating point field. Present if IndexFieldType
specifies the field is of type double
. All options are enabled by default.
A value to use for the field if the field isn't specified for a document. This can be important if you are using the field in an expression and that field is not present in every document.
The name of the source field to map to the field.
Whether facet information can be returned for the field.
Whether the contents of the field are searchable.
Whether the contents of the field can be returned in the search results.
Whether the field can be used to sort the search results.
Options for literal field. Present if IndexFieldType
specifies the field is of type literal
. All options are enabled by default.
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
Whether facet information can be returned for the field.
Whether the contents of the field are searchable.
Whether the contents of the field can be returned in the search results.
Whether the field can be used to sort the search results.
Options for text field. Present if IndexFieldType
specifies the field is of type text
. A text
field is always searchable. All options are enabled by default.
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
Whether the contents of the field can be returned in the search results.
Whether the field can be used to sort the search results.
Whether highlights can be returned for the field.
The name of an analysis scheme for a text
field.
Options for a date field. Dates and times are specified in UTC (Coordinated Universal Time) according to IETF RFC3339: yyyy-mm-ddT00:00:00Z. Present if IndexFieldType
specifies the field is of type date
. All options are enabled by default.
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
Whether facet information can be returned for the field.
Whether the contents of the field are searchable.
Whether the contents of the field can be returned in the search results.
Whether the field can be used to sort the search results.
Options for a latlon field. A latlon field contains a location stored as a latitude and longitude value pair. Present if IndexFieldType
specifies the field is of type latlon
. All options are enabled by default.
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
Whether facet information can be returned for the field.
Whether the contents of the field are searchable.
Whether the contents of the field can be returned in the search results.
Whether the field can be used to sort the search results.
Options for a field that contains an array of 64-bit signed integers. Present if IndexFieldType
specifies the field is of type int-array
. All options are enabled by default.
A list of source fields to map to the field.
Whether facet information can be returned for the field.
Whether the contents of the field are searchable.
Whether the contents of the field can be returned in the search results.
Options for a field that contains an array of double-precision 64-bit floating point values. Present if IndexFieldType
specifies the field is of type double-array
. All options are enabled by default.
A list of source fields to map to the field.
Whether facet information can be returned for the field.
Whether the contents of the field are searchable.
Whether the contents of the field can be returned in the search results.
Options for a field that contains an array of literal strings. Present if IndexFieldType
specifies the field is of type literal-array
. All options are enabled by default.
A list of source fields to map to the field.
Whether facet information can be returned for the field.
Whether the contents of the field are searchable.
Whether the contents of the field can be returned in the search results.
Options for a field that contains an array of text strings. Present if IndexFieldType
specifies the field is of type text-array
. A text-array
field is always searchable. All options are enabled by default.
A list of source fields to map to the field.
Whether the contents of the field can be returned in the search results.
Whether highlights can be returned for the field.
The name of an analysis scheme for a text-array
field.
Options for a field that contains an array of dates. Present if IndexFieldType
specifies the field is of type date-array
. All options are enabled by default.
A list of source fields to map to the field.
Whether facet information can be returned for the field.
Whether the contents of the field are searchable.
Whether the contents of the field can be returned in the search results.
dict
Response Syntax
{
'IndexField': {
'Options': {
'IndexFieldName': 'string',
'IndexFieldType': 'int'|'double'|'literal'|'text'|'date'|'latlon'|'int-array'|'double-array'|'literal-array'|'text-array'|'date-array',
'IntOptions': {
'DefaultValue': 123,
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'DoubleOptions': {
'DefaultValue': 123.0,
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'LiteralOptions': {
'DefaultValue': 'string',
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'TextOptions': {
'DefaultValue': 'string',
'SourceField': 'string',
'ReturnEnabled': True|False,
'SortEnabled': True|False,
'HighlightEnabled': True|False,
'AnalysisScheme': 'string'
},
'DateOptions': {
'DefaultValue': 'string',
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'LatLonOptions': {
'DefaultValue': 'string',
'SourceField': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False,
'SortEnabled': True|False
},
'IntArrayOptions': {
'DefaultValue': 123,
'SourceFields': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False
},
'DoubleArrayOptions': {
'DefaultValue': 123.0,
'SourceFields': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False
},
'LiteralArrayOptions': {
'DefaultValue': 'string',
'SourceFields': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False
},
'TextArrayOptions': {
'DefaultValue': 'string',
'SourceFields': 'string',
'ReturnEnabled': True|False,
'HighlightEnabled': True|False,
'AnalysisScheme': 'string'
},
'DateArrayOptions': {
'DefaultValue': 'string',
'SourceFields': 'string',
'FacetEnabled': True|False,
'SearchEnabled': True|False,
'ReturnEnabled': True|False
}
},
'Status': {
'CreationDate': datetime(2015, 1, 1),
'UpdateDate': datetime(2015, 1, 1),
'UpdateVersion': 123,
'State': 'RequiresIndexDocuments'|'Processing'|'Active'|'FailedToValidate',
'PendingDeletion': True|False
}
}
}
Response Structure
(dict) --
The result of a DefineIndexField
request. Contains the status of the newly-configured index field.
IndexField (dict) --
The value of an IndexField
and its current status.
Options (dict) --
Configuration information for a field in the index, including its name, type, and options. The supported options depend on the IndexFieldType
.
IndexFieldName (string) --
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
IndexFieldType (string) --
The type of field. The valid options for a field depend on the field type. For more information about the supported field types, see Configuring Index Fields in the Amazon CloudSearch Developer Guide .
IntOptions (dict) --
Options for a 64-bit signed integer field. Present if IndexFieldType
specifies the field is of type int
. All options are enabled by default.
DefaultValue (integer) -- A value to use for the field if the field isn't specified for a document. This can be important if you are using the field in an expression and that field is not present in every document.
SourceField (string) --
The name of the source field to map to the field.
FacetEnabled (boolean) --
Whether facet information can be returned for the field.
SearchEnabled (boolean) --
Whether the contents of the field are searchable.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
SortEnabled (boolean) --
Whether the field can be used to sort the search results.
DoubleOptions (dict) --
Options for a double-precision 64-bit floating point field. Present if IndexFieldType
specifies the field is of type double
. All options are enabled by default.
DefaultValue (float) --
A value to use for the field if the field isn't specified for a document. This can be important if you are using the field in an expression and that field is not present in every document.
SourceField (string) --
The name of the source field to map to the field.
FacetEnabled (boolean) --
Whether facet information can be returned for the field.
SearchEnabled (boolean) --
Whether the contents of the field are searchable.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
SortEnabled (boolean) --
Whether the field can be used to sort the search results.
LiteralOptions (dict) --
Options for literal field. Present if IndexFieldType
specifies the field is of type literal
. All options are enabled by default.
DefaultValue (string) -- A value to use for the field if the field isn't specified for a document.
SourceField (string) --
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
FacetEnabled (boolean) --
Whether facet information can be returned for the field.
SearchEnabled (boolean) --
Whether the contents of the field are searchable.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
SortEnabled (boolean) --
Whether the field can be used to sort the search results.
TextOptions (dict) --
Options for text field. Present if IndexFieldType
specifies the field is of type text
. A text
field is always searchable. All options are enabled by default.
DefaultValue (string) -- A value to use for the field if the field isn't specified for a document.
SourceField (string) --
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
SortEnabled (boolean) --
Whether the field can be used to sort the search results.
HighlightEnabled (boolean) --
Whether highlights can be returned for the field.
AnalysisScheme (string) --
The name of an analysis scheme for a text
field.
DateOptions (dict) --
Options for a date field. Dates and times are specified in UTC (Coordinated Universal Time) according to IETF RFC3339: yyyy-mm-ddT00:00:00Z. Present if IndexFieldType
specifies the field is of type date
. All options are enabled by default.
DefaultValue (string) -- A value to use for the field if the field isn't specified for a document.
SourceField (string) --
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
FacetEnabled (boolean) --
Whether facet information can be returned for the field.
SearchEnabled (boolean) --
Whether the contents of the field are searchable.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
SortEnabled (boolean) --
Whether the field can be used to sort the search results.
LatLonOptions (dict) --
Options for a latlon field. A latlon field contains a location stored as a latitude and longitude value pair. Present if IndexFieldType
specifies the field is of type latlon
. All options are enabled by default.
DefaultValue (string) -- A value to use for the field if the field isn't specified for a document.
SourceField (string) --
A string that represents the name of an index field. CloudSearch supports regular index fields as well as dynamic fields. A dynamic field's name defines a pattern that begins or ends with a wildcard. Any document fields that don't map to a regular index field but do match a dynamic field's pattern are configured with the dynamic field's indexing options.
Regular field names begin with a letter and can contain the following characters: a-z (lowercase), 0-9, and _ (underscore). Dynamic field names must begin or end with a wildcard (*). The wildcard can also be the only character in a dynamic field name. Multiple wildcards, and wildcards embedded within a string are not supported.
The name score
is reserved and cannot be used as a field name. To reference a document's ID, you can use the name _id
.
FacetEnabled (boolean) --
Whether facet information can be returned for the field.
SearchEnabled (boolean) --
Whether the contents of the field are searchable.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
SortEnabled (boolean) --
Whether the field can be used to sort the search results.
IntArrayOptions (dict) --
Options for a field that contains an array of 64-bit signed integers. Present if IndexFieldType
specifies the field is of type int-array
. All options are enabled by default.
DefaultValue (integer) -- A value to use for the field if the field isn't specified for a document.
SourceFields (string) --
A list of source fields to map to the field.
FacetEnabled (boolean) --
Whether facet information can be returned for the field.
SearchEnabled (boolean) --
Whether the contents of the field are searchable.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
DoubleArrayOptions (dict) --
Options for a field that contains an array of double-precision 64-bit floating point values. Present if IndexFieldType
specifies the field is of type double-array
. All options are enabled by default.
DefaultValue (float) -- A value to use for the field if the field isn't specified for a document.
SourceFields (string) --
A list of source fields to map to the field.
FacetEnabled (boolean) --
Whether facet information can be returned for the field.
SearchEnabled (boolean) --
Whether the contents of the field are searchable.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
LiteralArrayOptions (dict) --
Options for a field that contains an array of literal strings. Present if IndexFieldType
specifies the field is of type literal-array
. All options are enabled by default.
DefaultValue (string) -- A value to use for the field if the field isn't specified for a document.
SourceFields (string) --
A list of source fields to map to the field.
FacetEnabled (boolean) --
Whether facet information can be returned for the field.
SearchEnabled (boolean) --
Whether the contents of the field are searchable.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
TextArrayOptions (dict) --
Options for a field that contains an array of text strings. Present if IndexFieldType
specifies the field is of type text-array
. A text-array
field is always searchable. All options are enabled by default.
DefaultValue (string) -- A value to use for the field if the field isn't specified for a document.
SourceFields (string) --
A list of source fields to map to the field.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
HighlightEnabled (boolean) --
Whether highlights can be returned for the field.
AnalysisScheme (string) --
The name of an analysis scheme for a text-array
field.
DateArrayOptions (dict) --
Options for a field that contains an array of dates. Present if IndexFieldType
specifies the field is of type date-array
. All options are enabled by default.
DefaultValue (string) -- A value to use for the field if the field isn't specified for a document.
SourceFields (string) --
A list of source fields to map to the field.
FacetEnabled (boolean) --
Whether facet information can be returned for the field.
SearchEnabled (boolean) --
Whether the contents of the field are searchable.
ReturnEnabled (boolean) --
Whether the contents of the field can be returned in the search results.
Status (dict) --
The status of domain configuration option.
CreationDate (datetime) --
A timestamp for when this option was created.
UpdateDate (datetime) --
A timestamp for when this option was last updated.
UpdateVersion (integer) --
A unique integer that indicates when this option was last updated.
State (string) --
The state of processing a change to an option. Possible values:
RequiresIndexDocuments
: the option's latest value will not be deployed until IndexDocuments has been called and indexing is complete.Processing
: the option's latest value is in the process of being activated.Active
: the option's latest value is completely deployed.FailedToValidate
: the option value is not compatible with the domain's data and cannot be used to index the data. You must either modify the option value or update or remove the incompatible documents.PendingDeletion (boolean) --
Indicates that the option will be deleted once processing is complete.
Exceptions
CloudSearch.Client.exceptions.BaseException
CloudSearch.Client.exceptions.InternalException
CloudSearch.Client.exceptions.LimitExceededException
CloudSearch.Client.exceptions.InvalidTypeException
CloudSearch.Client.exceptions.ResourceNotFoundException
CloudSearch.Client.exceptions.ValidationException