Creates a new type

post/admin/config/types
Internal-Use Only

Configures a new type. The request will be rejected if a type already exists with the same name.

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}

Query Parameters

NameTypeRequiredDescription
validateOnly
boolean
false

Whether to validate the configuration without saving it.

Default:
false

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
201CreatedThe request succeeded.HeadersSchema
400Bad RequestThe request is malformed or contains invalid parameter values.Schema
409ConflictA type already exists with the given name.Schema