- Property Manager name: Device Characteristics
- Criteria version: The v2025-10-16rule format supports thedeviceCharacteristiccriteria v1.3.
- Rule format status: GA, stable
- Access: Read/Write
- Allowed in includes: Yes
Match various aspects of the device or browser making the request. Based on the value of the characteristic option, the expected value is either a boolean, a number, or a string, possibly representing a version number. Each type of value requires a different field.
| Option | Type | Description | Requires | |
|---|---|---|---|---|
| characteristic | enum | Aspect of the device or browser to match. | {"displayType":"enum","options":["BRAND_NAME","MODEL_NAME","MARKETING_NAME","IS_WIRELESS_DEVICE","IS_TABLET","DEVICE_OS","DEVICE_OS_VERSION","MOBILE_BROWSER","MOBILE_BROWSER_VERSION","RESOLUTION_WIDTH","RESOLUTION_HEIGHT","PHYSICAL_SCREEN_HEIGHT","PHYSICAL_SCREEN_WIDTH","COOKIE_SUPPORT","AJAX_SUPPORT_JAVASCRIPT","FULL_FLASH_SUPPORT","ACCEPT_THIRD_PARTY_COOKIE","XHTML_SUPPORT_LEVEL","IS_MOBILE"],"tag":"select"} | |
| BRAND_NAME | String value such as  | |||
| MODEL_NAME | String value such as  | |||
| MARKETING_NAME | String value such as  | |||
| IS_WIRELESS_DEVICE | Boolean value. | |||
| IS_TABLET | Boolean value, subset of  | |||
| DEVICE_OS | String value. | |||
| DEVICE_OS_VERSION | Version string value. | |||
| MOBILE_BROWSER | String value. | |||
| MOBILE_BROWSER_VERSION | Version string value. | |||
| RESOLUTION_WIDTH | Number of pixels wide. | |||
| RESOLUTION_HEIGHT | Number of pixels high. | |||
| PHYSICAL_SCREEN_HEIGHT | Number of millimeters high. | |||
| PHYSICAL_SCREEN_WIDTH | Number of millimeters wide. | |||
| COOKIE_SUPPORT | Boolean value. | |||
| AJAX_SUPPORT_JAVASCRIPT | Boolean value. | |||
| FULL_FLASH_SUPPORT | Boolean value. | |||
| ACCEPT_THIRD_PARTY_COOKIE | Boolean value. | |||
| XHTML_SUPPORT_LEVEL | Numeric value. | |||
| IS_MOBILE | Boolean value. | |||
| stringMatchOperator | enum | When the  | characteristicis either:BRAND_NAME,MODEL_NAME,MARKETING_NAME,DEVICE_OS,MOBILE_BROWSER,PREFERRED_MARKUP,HTML_PREFERRED_DTD,XHTML_PREFERRED_CHARSET,VIEWPORT_WIDTH,XHTMLMP_PREFERRED_MIME_TYPE,AJAX_PREFERRED_GEOLOC_API,XHTML_FILE_UPLOAD,XHTML_SUPPORTS_IFRAME,FLASH_LITE_VERSION | {"displayType":"enum","options":["MATCHES_ONE_OF","DOES_NOT_MATCH_ONE_OF"],"tag":"select"}{"if":{"attribute":"characteristic","op":"in","value":["BRAND_NAME","MODEL_NAME","MARKETING_NAME","DEVICE_OS","MOBILE_BROWSER","PREFERRED_MARKUP","HTML_PREFERRED_DTD","XHTML_PREFERRED_CHARSET","VIEWPORT_WIDTH","XHTMLMP_PREFERRED_MIME_TYPE","AJAX_PREFERRED_GEOLOC_API","XHTML_FILE_UPLOAD","XHTML_SUPPORTS_IFRAME","FLASH_LITE_VERSION"]}} | 
| MATCHES_ONE_OF | The value is included as a  | |||
| DOES_NOT_MATCH_ONE_OF | The value is not included as a  | |||
| numericMatchOperator | enum | When the  | characteristicis either:RESOLUTION_WIDTH,RESOLUTION_HEIGHT,PHYSICAL_SCREEN_HEIGHT,PHYSICAL_SCREEN_WIDTH,XHTML_SUPPORT_LEVEL,MAX_IMAGE_WIDTH,MAX_IMAGE_HEIGHT,VIEWPORT_INITIAL_SCALE | {"displayType":"enum","options":["IS","IS_NOT","IS_LESS_THAN","IS_LESS_THAN_OR_EQUAL","IS_MORE_THAN","IS_MORE_THAN_OR_EQUAL"],"tag":"select"}{"if":{"attribute":"characteristic","op":"in","value":["RESOLUTION_WIDTH","RESOLUTION_HEIGHT","PHYSICAL_SCREEN_HEIGHT","PHYSICAL_SCREEN_WIDTH","XHTML_SUPPORT_LEVEL","MAX_IMAGE_WIDTH","MAX_IMAGE_HEIGHT","VIEWPORT_INITIAL_SCALE"]}} | 
| IS | Values are equal. | |||
| IS_NOT | Values are not equal. | |||
| IS_LESS_THAN | The  | |||
| IS_LESS_THAN_OR_EQUAL | The  | |||
| IS_MORE_THAN | The  | |||
| IS_MORE_THAN_OR_EQUAL | The  | |||
| versionMatchOperator | enum | When the  | characteristicis either:DEVICE_OS_VERSION,MOBILE_BROWSER_VERSION | {"displayType":"enum","options":["IS","IS_NOT","IS_LESS_THAN","IS_LESS_THAN_OR_EQUAL","IS_MORE_THAN","IS_MORE_THAN_OR_EQUAL"],"tag":"select"}{"if":{"attribute":"characteristic","op":"in","value":["DEVICE_OS_VERSION","MOBILE_BROWSER_VERSION"]}} | 
| IS | The  | |||
| IS_NOT | The  | |||
| IS_LESS_THAN | The  | |||
| IS_LESS_THAN_OR_EQUAL | The  | |||
| IS_MORE_THAN | The  | |||
| IS_MORE_THAN_OR_EQUAL | The  | |||
| booleanValue | boolean | When the  | characteristicis either:IS_WIRELESS_DEVICE,IS_TABLET,COOKIE_SUPPORT,AJAX_SUPPORT_JAVASCRIPT,FULL_FLASH_SUPPRT,DUAL_ORIENTATION,ACCEPT_THIRD_PARTY_COOKIE,GIF_ANIMATED,JPG,PNG,XHTML_SUPPORTS_TABLE_FOR_LAYOUT,XHTML_TABLE_SUPPORT,PDF_SUPPORT,IS_MOBILE | {"displayType":"boolean","tag":"input","type":"checkbox"}{"if":{"attribute":"characteristic","op":"in","value":["IS_WIRELESS_DEVICE","IS_TABLET","COOKIE_SUPPORT","AJAX_SUPPORT_JAVASCRIPT","FULL_FLASH_SUPPRT","DUAL_ORIENTATION","ACCEPT_THIRD_PARTY_COOKIE","GIF_ANIMATED","JPG","PNG","XHTML_SUPPORTS_TABLE_FOR_LAYOUT","XHTML_TABLE_SUPPORT","PDF_SUPPORT","IS_MOBILE"]}} | 
| stringValue | string array | When the  | stringMatchOperatoris either:MATCHES_ONE_OF,DOES_NOT_MATCH_ONE_OF | {"displayType":"string array","tag":"input","todo":true}{"if":{"attribute":"stringMatchOperator","op":"in","value":["MATCHES_ONE_OF","DOES_NOT_MATCH_ONE_OF"]}} | 
| numericValue | number | When the  | numericMatchOperatoris either:IS,IS_NOT,IS_LESS_THAN,IS_LESS_THAN_OR_EQUAL,IS_MORE_THAN,IS_MORE_THAN_OR_EQUAL | {"displayType":"number","tag":"input","type":"number"}{"if":{"attribute":"numericMatchOperator","op":"in","value":["IS","IS_NOT","IS_LESS_THAN","IS_LESS_THAN_OR_EQUAL","IS_MORE_THAN","IS_MORE_THAN_OR_EQUAL"]}} | 
| versionValue | string | When the  | versionMatchOperatoris either:IS,IS_NOT,IS_LESS_THAN,IS_LESS_THAN_OR_EQUAL,IS_MORE_THAN,IS_MORE_THAN_OR_EQUAL | {"displayType":"string","tag":"input","type":"text"}{"if":{"attribute":"versionMatchOperator","op":"in","value":["IS","IS_NOT","IS_LESS_THAN","IS_LESS_THAN_OR_EQUAL","IS_MORE_THAN","IS_MORE_THAN_OR_EQUAL"]}} | 
| matchCaseSensitive | boolean | Sets a case-sensitive match for the  | stringMatchOperatoris either:MATCHES_ONE_OF,DOES_NOT_MATCH_ONE_OF | {"displayType":"boolean","tag":"input","type":"checkbox"}{"if":{"attribute":"stringMatchOperator","op":"in","value":["MATCHES_ONE_OF","DOES_NOT_MATCH_ONE_OF"]}} | 
| matchWildcard | boolean | Allows wildcards in the  | stringMatchOperatoris either:MATCHES_ONE_OF,DOES_NOT_MATCH_ONE_OF | {"displayType":"boolean","tag":"input","type":"checkbox"}{"if":{"attribute":"stringMatchOperator","op":"in","value":["MATCHES_ONE_OF","DOES_NOT_MATCH_ONE_OF"]}} | 
