Updates the configuration for a single type

put/admin/config/types/{type}
Internal-Use Only

Updates the configuration for the specified type. The request will be rejected unless the specified version number matches the current version. This is to ensure the latest version of the configuration is being edited and not an out-of-date version. If the new configuration contains breaking changes, such as the field type or events configuration has changed, the changes are saved, but also require the data to be re-indexed to take effect. A localized message is included in the response if this is the case. The /admin/indices resource can be used to re-index the data.

Request Samples

1

Response Samples

1{
2 "solution": "Insurance",
3 "name": "person",
4 "displayName": "Person",
5 "category": "entity",
6 "fields": {
7 "first_name": {
8 "displayName": "First Name",
9 "type": "text",
10 "options": {
11 "features": [
12 "search",
13 "sort"
14 ]
15 }
16 },
17 "last_name": {
18 "displayName": "Last Name",
19 "type": "text",
20 "options": {
21 "features": [
22 "search",
23 "facet",
24 "sort"
25 ]
26 }
27 },
28 "dob": {
29 "displayName": "Date of Birth",
30 "type": "date",
31 "options": {
32 "format": "strict_date_optional_time||epoch_millis"
33 }
34 },
35 "addresses": {
36 "displayName": "Addresses",
37 "type": "object",
38 "innerFields": {
39 "address": {
40 "displayName": "Address",
41 "type": "text"
42 },
43 "city": {
44 "displayName": "City",
45 "type": "text",
46 "options": {
47 "features": [
48 "facet"
49 ]
50 }
51 },
52 "areaCode": {
53 "displayName": "Area Code",
54 "type": "text",
55 "options": {
56 "features": []
57 }
58 },
59 "country": {
60 "displayName": "Country",
61 "type": "text",
62 "options": {
63 "features": []
64 }
65 },
66 "lat": {
67 "displayName": "Latitude",
68 "type": "double"
69 },
70 "lon": {
71 "displayName": "Longitude",
72 "type": "double"
73 }
74 }
75 }
76 },
77 "options": {
78 "number_of_replicas": 2
79 },
80 "config": {
81 "summary": {
82 "fields": [
83 "dob"
84 ],
85 "highlighting": {
86 "first_name": {
87 "highlighter": "plain",
88 "fragments": 3,
89 "fragmentSize": 50
90 },
91 "last_name": {
92 "highlighter": "plain",
93 "fragments": 3,
94 "fragmentSize": 50
95 }
96 }
97 },
98 "table": {
99 "fields": [
100 "first_name",
101 "last_name",
102 "dob"
103 ]
104 },
105 "facets": [
106 {
107 "type": "terms",
108 "field": "last_name",
109 "limit": 100
110 },
111 {
112 "type": "terms",
113 "field": "addresses.city",
114 "limit": 100
115 }
116 ],
117 "textAnalytics": {
118 "fields": [
119 "first_name",
120 "last_name"
121 ]
122 },
123 "events": [
124 {
125 "fields": {
126 "category": "birthday",
127 "label": "{first_name} {last_name}",
128 "description": "Born on {dob}",
129 "pointTimestamp": "{dob}"
130 }
131 },
132 {
133 "root": "addresses",
134 "fields": {
135 "category": "address",
136 "label": "{/first_name} {/last_name}",
137 "description": "Resides at {address} in {city}, {country}",
138 "latitude": "lat",
139 "longitude": "lon"
140 }
141 }
142 ],
143 "label": {
144 "template": "{0} {1}",
145 "values": [
146 "first_name",
147 "last_name"
148 ]
149 }
150 },
151 "links": [
152 {
153 "method": "GET",
154 "rel": "self",
155 "href": "/svi-sand/admin/config/types/person",
156 "uri": "/svi-sand/admin/config/types/person",
157 "type": "application/vnd.sas.sand.type"
158 },
159 {
160 "method": "PUT",
161 "rel": "update",
162 "href": "/svi-sand/admin/config/types/person",
163 "uri": "/svi-sand/admin/config/types/person",
164 "type": "application/vnd.sas.sand.type"
165 },
166 {
167 "method": "DELETE",
168 "rel": "delete",
169 "href": "/svi-sand/admin/config/types/person",
170 "uri": "/svi-sand/admin/config/types/person"
171 },
172 {
173 "method": "GET",
174 "rel": "up",
175 "href": "/svi-sand/admin/config/types",
176 "uri": "/svi-sand/admin/config/types",
177 "type": "application/vnd.sas.collection",
178 "itemType": "application/vnd.sas.sand.type"
179 }
180 ]
181}

Path Parameters

NameTypeRequiredDescription
type
string
true

The name of the type.

Query Parameters

NameTypeRequiredDescription
validateOnly
boolean
false

Whether to validate the configuration and check for breaking changes without importing it.

Default:
false
waitForRefresh
boolean
false

Whether to wait for any index-related operations to be applied prior to the response being returned.

Default:
false

Header Parameters

NameTypeRequiredDescription
If-Match
integer
true

Specifies the version number of the type that is to be edited.

Request Body

The request and response for /admin/config/types/{type} when retrieving or updating the configuration for a single entity or relationship type.

NameTypeRequiredDescription
version
integer
false

The representation version (3).

solution
string
false

The name of the solution.

Default:
default
name
string
false

The unique name for the type.

displayName
string
false

The localized display name for the type. Note for this release, this is the actual localized text as only one language is supported; in future, this member will be the resource key to look up the localized display name.

category
string
false

The category of the type. The alert category applies to entities whose objects are generated by the Alert component and support free text, faceted, and graph search (represented by vertices in the Network visualization). The entity category (the default category) applies to all other internal and external entities and supports free text, faceted, geo, and graph search (represented by vertices in the Network visualization). The resolvedEntity category applies to resolved entities generated by the Entity Resolution component and supports free text, geo, and graph search (represented by vertices in the Network visualization). The entityRelationship category applies to relationships between internal, external, or alert entities and supports graph search (represented by edges in the Network visualization). The resolvedEntityRelationship category applies to relationships (between resolved entities and their contributing entities) generated by the Entity Resolution component and supports graph search (represented by edges in the Network visualization).

Allowed values:
alertentityresolvedEntityentityRelationshipresolvedEntityRelationship
fields
object
false

The field definitions keyed by field name. Field names can contain up to 150 alphanumeric characters and underscores but cannot start with an underscore.

options
object
false

Any options relating to this type. The boolean option indexed_for_search specifies whether objects of this type can be indexed (defaults to true). The integer option number_of_shards specifies the number of sections that the indexed data is divided into. These sections are distributed across the underlying search engine's data nodes. The acceptable range of values is from 1 to 1024. The default value is 1. The value should be set to ensure that each shard is no bigger than 50GB but ideally somewhere between 10GB and 30GB. As a rough guide, use a value equal to the total size of the indexed data divided by 20GB. The integer option number_of_replicas specifies the number of replica shards (i.e. copies) per primary shard. These copies are distributed across the underlying search engine's data nodes to ensure high availability. The acceptable range of values is from 0 to 1024. The default value is 1. A value of 0 will disable high availability as there will be no replica shards but this is useful during the initial data load. The maximum usable value equates to the number of data nodes minus one (as a maximum of one copy of each shard can exist on each data node and one of them will be the primary copy). As a rough guide, use a value between 1 and 3. The integer option refresh_interval specifies the frequency (in seconds) by which changes to the indexed data become searchable. The default value is 1. A value of -1 disables the refresh and is therefore useful when performing large bulk operations but otherwise a positive value is expected. Warnings: 1. modifying the number_of_shards, number_of_replicas or refresh_interval options can adversely affect the performance and stability of the application and as such they should only be set by advanced users. 2. changing the indexed_for_search option to false causes all indexed data for this type to be deleted, which cannot be undone without first making a backup.

config
TypeConfiguration
false

The configuration relating to the various search visualizations. While each sub-section is optional, their absence will reduce the functionality available when interacting with objects or relationships of this type.

links
array [object]
false

Zero or more links to related resources or operations. See the link relations table for a description of the link types.

Responses

StatusMeaningDescription
200OKThe request succeeded.HeadersSchema
400Bad RequestThe request is malformed or contains invalid parameter values.Schema
404Not FoundThe type does not exist.Schema
412Precondition FailedThe request refers to an out-of-date version of the configuration.Schema
428Precondition RequiredThe request is missing the If-Match header.Schema