Update either of the following:
Draft: In addition to updating a draft's properties, you may add or update a rule.
This endpoint will attempt to update a rule when a rule ID is specified and it matches an existing rule.
Update a draft via the following request:
HTTP Method | Request URI |
---|---|
PATCH |
https://api.vdms.io/rules-engine/v1.1/policies/PolicyID |
Define the following variable when submitting the above request:
VariableA variable represents a value that must be replaced. A variable consists of either a URL segment (e.g., "0001" in /0001/) or a query string value (e.g., "3" in mediaTypes=3). | Description |
---|---|
Required |
Replace this variable with the system-defined ID for the desired draft. Retrieve policies and their system-defined IDs via the Get All Policies endpoint. |
This endpointIdentifies a request's connection point to our REST API service. only takes advantage of common request headers.
Unlike requests to api.edgecast.com, requests to our API gateway (api.vdms.io) require an access token (OAuth).
Pass the following request body parameters:
Name | Data Type | Description |
---|---|---|
@type |
String |
Set it to policy-update. |
name Required |
String |
Determines the policy's name. |
id Required |
Integer |
Set it to the system-defined ID for the desired policy. |
description |
String |
Determines the policy's description. You may set a policy's description to a blank value. |
state Required |
String |
Determines the state of the new policy. Valid values are:
|
platform Required |
String |
Assigns a delivery platform to the policy. Valid values are:
|
rules Required |
Array |
Defines one or more rules. Each object in this array represents a rule. |
@type |
String |
rules array Set it to rule-create. |
Integer |
Set it to the system-defined ID for the desired rule. This property is required when updating a rule. |
|
name |
String |
rules array Set it to any value. This parameter is reserved for future use. |
description Required |
String |
rules array Determines the rule's description. You may set a rule's description to a blank value. This property is required when updating a rule. |
Required |
Array |
rules array Contains the match conditions that will be assigned to the rule. Each object in this array contains a match condition configuration. List match conditions in the order in which they should appear in the rule. The set of required properties varies by match condition. |
The matches array describes one or more match condition(s) using the following parameters:
The set of supported and required parameters varies by match condition.
Name | Data Type | Description |
---|---|---|
compare |
String |
Device - Resolution Height and Resolution Width Only Determines how the value defined in the value parameter will be compared against the request. Set this parameter to the desired mathematical operator. Valid values are: == | < | <= | > | >=
|
Array |
Contains the features that will be assigned to this match condition. Each object in this array contains a feature configuration. The set of required properties varies by feature. |
|
hostnames |
String |
match.request.edge-cname.literal Match Condition Only Identifies a hostname corresponding to an edge CNAME configuration. |
ignore_case |
Boolean |
Determines whether the comparison between the value parameter and the request will be case-sensitive. Valid values are:
Certain match conditions use a parameter other than value to determine whether a request is a match. The ignore_case parameter applies to whichever parameter will be compared against the request. For example, match.request.edge-cname.literal uses hostnames. |
Array |
Contains the match conditions that will be assigned to this match condition. Each object in this array contains a match condition configuration. |
|
name |
String |
Identifies the entity that will be matched. Example: The match.request.cookie.literal match condition uses this parameter to identify the cookie whose value will be compared against the value parameter. |
relative_to |
String |
URL Match Conditions Only Determines where the URL comparison will start. Valid values are: root | origin
|
result |
String |
Determines whether the comparison must result in a match in order to satisfy this match condition. Valid values are: match | nomatch
|
type Required |
String |
Identifies a match condition by its code name. View valid values.
Mutually Exclusive (Select First Match) Use select.first-match to create mutually exclusive match conditions (i.e., Select First Match). Nest the desired mutually exclusive match conditions within a child matches array. ... "matches": [{ "type": "select.first-match", "ordinal": 1, "matches": [{ "type": "match.url.url-path.wildcard", ... Independent Match Conditions Use one of the following values:
|
value |
String |
Determines the value that will be compared against the request. Acceptable values for this parameter vary by match condition. Although the Get Policy endpoint may return a space-separated list of values as an array of string values, you must set this parameter to a single string value. |
The features array describes one or more feature(s) associated with the parent match condition using the following parameters:
View the set of supported parameters for each feature in the features array template provided below this table.
Name | Data Type | Description |
---|---|---|
action |
String |
Determines the action (e.g., set) that will take place. |
code |
String |
Assigns a HTTP status code. |
codes |
String |
Assigns one or more HTTP status codes. |
destination |
String |
Identifies a relative path via a regular expression. |
enabled |
Boolean |
Determines whether the feature will be enabled. Valid values are: true | false
|
extensions |
String |
Identifies one or more file extensions. |
format |
String |
feature.logs.custom-log-field-1 Feature Only Indicates the format and the content that will be assigned to a custom log field. |
header_name |
String |
feature.access.token-auth-denial-code Feature Only Set this to Location. |
header_value |
String |
feature.access.token-auth-denial-code Feature Only Identifies the URL to which unauthorized requests will be redirected. |
instance |
String |
feature.waf.web-application-firewall Feature Only Identifies a WAF instance by its system-defined ID. |
kbytes_per_second |
Integer |
feature.caching.bandwidth-throttling Feature Only Indicates the bandwidth, in Kbps, to which requests will be throttled. |
media_types |
String |
feature.caching.compress-file-types Feature Only Specify one or more media types (aka content types). |
methods |
String |
feature.specialty.cacheable-http-methods Feature Only Specify one or more supported HTTP methods. |
mode |
String |
feature.caching.cache-key-query-string Feature Only Determine whether query string parameters will be included in the cache-key. Valid values are: include | exclude | include-all | exclude-all
|
name |
String |
Identifies the object (e.g., request header) on which the feature will be applied by its name. |
names |
String |
feature.origin.proxy-special-headers Feature Only Identifies one or more CDN-specific request header that will be forwarded to an origin server. |
parameters |
String |
feature.caching.cache-key-query-string Feature Only Identifies one or more query string parameters by their names. |
prebuf_seconds |
Integer |
feature.caching.bandwidth-throttling Feature Only Determines the number of seconds that our edge servers will wait until throttling bandwidth. |
requests |
Integer |
feature.origin.max-keep-alive-requests Feature Only Determines the maximum number of requests for a Keep-Alive connection before it is closed. |
seek_end |
String |
feature.caching.h264-support-video-seek-params Feature Only Overrides the name assigned to ec_end. |
seek_start |
String |
feature.caching.h264-support-video-seek-params Feature Only Overrides the name assigned to ec_seek. |
source |
String |
Identifies a relative path via a regular expression. |
status |
String |
Identifies requests via a HTTP status code. |
treatment |
String |
Determines how an edge server will handle a header. |
type Required |
String |
Identifies a feature by its code name. View valid values.
Valid values are:
View the set of supported parameters for each feature in the features array template provided below this table. |
units |
String |
Determines the time unit that will be used for the value parameter. |
value |
String |
Determines the value that will be set. Acceptable values for this parameter vary by feature. Although the Get Policy endpoint may return a space-separated list of values as an array of string values, you must set this parameter to a single string value. |
Use the following code excerpt to view a list of features and the set of information returned for each feature.
"features": [{ "type": "feature.caching.complete-cache-fill", "ordinal": 0, "enabled": true }, { "type": "feature.caching.compress-file-types", "ordinal": 0, "media_types": "string" }, { "type": "feature.caching.default-internal-max-age", "ordinal": 0, "status": "200", "value": 0, "units": "off" }, { "type": "feature.caching.external-max-age", "ordinal": 0, "value": 0, "units": "off" }, { "type": "feature.caching.force-internal-max-age", "ordinal": 0, "status": "200", "value": 0, "units": "off" }, { "type": "feature.access.deny-access", "ordinal": 0, "enabled": true }, { "type": "feature.access.token-auth", "ordinal": 0, "enabled": true }, { "type": "feature.access.token-auth-denial-code", "ordinal": 0, "code": "301", "header_name": "", "header_value": "string" }, { "type": "feature.caching.bypass-cache", "ordinal": 0, "enabled": true }, { "type": "feature.caching.cache-control-header-treatment", "ordinal": 0, "treatment": "pass" }, { "type": "feature.caching.cache-key-query-string", "ordinal": 0, "mode": "include", "parameters": "string" }, { "type": "feature.caching.expires-header-treatment", "ordinal": 0, "treatment": "pass" }, { "type": "feature.access.token-auth-ignore-url-case", "ordinal": 0, "enabled": true }, { "type": "feature.access.token-auth-parameter", "ordinal": 0, "name": "string", "enabled": true }, { "type": "feature.caching.bandwidth-parameters", "ordinal": 0, "enabled": true }, { "type": "feature.caching.bandwidth-throttling", "ordinal": 0, "prebuf_seconds": 0, "kbytes_per_second": 0 }, { "type": "feature.caching.cache-key-rewrite", "ordinal": 0, "source": "string", "destination": "string" }, { "type": "feature.caching.h264-support", "ordinal": 0, "extensions": "string" }, { "type": "feature.caching.honor-no-cache-request", "ordinal": 0, "enabled": true }, { "type": "feature.caching.ignore-origin-no-cache", "ordinal": 0, "codes": "string" }, { "type": "feature.caching.ignore-unsatisfiable-ranges", "ordinal": 0, "enabled": true }, { "type": "feature.caching.internal-max-stale", "ordinal": 0, "status": "200", "value": 0, "units": "off" }, { "type": "feature.caching.partial-cache-sharing", "ordinal": 0, "enabled": true }, { "type": "feature.caching.prevalidate-cached-content", "ordinal": 0, "value": 0, "units": "off" }, { "type": "feature.caching.refresh-zero-byte-cache-files", "ordinal": 0, "enabled": true }, { "type": "feature.caching.set-cacheable-status-codes", "ordinal": 0, "codes": "string" }, { "type": "feature.caching.stale-content-delivery-on-error", "ordinal": 0, "enabled": true }, { "type": "feature.caching.stale-while-revalidate", "ordinal": 0, "value": 0, "units": "off" }, { "type": "feature.comment", "ordinal": 0, "value": "string" }, { "type": "feature.headers.age-response-header", "ordinal": 0, "enabled": true }, { "type": "feature.headers.debug-cache-response-headers", "ordinal": 0, "enabled": true }, { "type": "feature.headers.modify-client-request-header", "ordinal": 0, "action": "set", "name": "string", "value": "string" }, { "type": "feature.logs.custom-log-field-1", "ordinal": 0, "format": "string" }, { "type": "feature.logs.log-query-string", "ordinal": 0, "enabled": true }, { "type": "feature.optimizer.edge-optimizer", "ordinal": 0, "enabled": true }, { "type": "feature.optimizer.edge-optimizer-instantiate-configuration", "ordinal": 0, "site": "string" }, { "type": "feature.origin.max-keep-alive-requests", "ordinal": 0, "requests": 0 }, { "type": "feature.origin.proxy-special-headers", "ordinal": 0, "names": "string" }, { "type": "feature.specialty.cacheable-http-methods", "ordinal": 0, "methods": "GET" }, { "type": "feature.headers.modify-client-response-header", "ordinal": 0, "action": "set", "name": "string", "value": "string" }, { "type": "feature.headers.set-client-ip-custom-header", "ordinal": 0, "enabled": true, "name": "string" }, { "type": "feature.specialty.cacheable-request-body-size", "ordinal": 0, "value": 0, "units": "bytes" }, { "type": "feature.specialty.streaming-optimization", "ordinal": 0, "enabled": true }, { "type": "feature.specialty.user-variable", "ordinal": 0, "name": "string", "value": "string" }, { "type": "feature.url.follow-redirects", "ordinal": 0, "enabled": true }, { "type": "feature.url.url-redirect", "ordinal": 0, "source": "string", "destination": "string", "code": "301" }, { "type": "feature.url.url-rewrite", "ordinal": 0, "source": "string", "destination": "string" }, { "type": "feature.waf.web-application-firewall", "ordinal": 0, "instance": "string" }, { "type": "feature.caching.h264-support-video-seek-params", "ordinal": 0, "seek_start": "string", "seek_end": "string" } ]
The response to the above request includes an HTTP status code, response headers, and a response body.
A status code indicates whether the request was successfully performed.
The response for this endpoint only includes standard HTTP response headers.
The response body for a successful request contains the following response elements:
Name | Data Type | Description |
---|---|---|
@id |
String |
Indicates the relative path to an endpoint through which you may retrieve the current policy. |
@type |
String |
Returns Policy. |
id |
String |
Identifies the policy by its system-defined ID. |
name |
String |
Identifies the policy by its name. |
description |
String |
Indicates the policy's description. |
policy_type |
String |
Returns customer. |
state |
String |
Indicates the policy's state. Valid values are:
|
platform |
String |
Indicates the delivery platform corresponding to the policy. Valid values are:
|
created_at |
String |
Indicates the date and time (UTC) at which the policy was created. Syntax: YYYY-MM-DDThh:mm:ssZ
Example: 2024-01-08T20:31:06Z
|
updated_at |
String |
Indicates the date and time (UTC) at which the policy was last updated. Syntax: YYYY-MM-DDThh:mm:ssZ
|
rules |
Array |
Contains the rules associated with this policy. Each object in this array contains a rule. |
@id |
String |
rules array Indicates the relative path to an endpoint through which you may retrieve the current rule. This endpoint has not been released yet. |
@type |
String |
rules array Returns Rule. |
id |
String |
rules array Identifies the rule by its system-defined ID. |
name |
String |
rules array This parameter is reserved for future use. |
description |
String |
rules array Indicates the rule's description. |
ordinal |
Integer |
rules array Indicates the position of the rule within the policy. |
created_at |
String |
rules array Indicates the date and time (UTC) at which the rule was created. Syntax: YYYY-MM-DDThh:mm:ssZ
Example: 2024-01-08T20:31:06Z
|
updated_at |
String |
rules array Indicates the date and time (UTC) at which the rule was last updated. Syntax: YYYY-MM-DDThh:mm:ssZ
|
Array |
rules array Contains the match conditions associated with the rule. Each object in this array contains a match condition configuration. Match conditions are listed in the order in which they appear in the rule. |
|
Array |
Describes each state change for this policy. |
The matches array describes one or more match condition(s) using the following parameters:
The set of supported parameters varies by match condition.
Name | Data Type | Description |
---|---|---|
compare |
String |
Device - Resolution Height and Resolution Width Only Determines how the value defined in the value parameter will be compared against the request. Set this parameter to the desired mathematical operator. Valid values are: == | < | <= | > | >=
|
Array |
Contains the features associated with this match condition. Each object in this array contains a feature configuration. |
|
hostnames |
String |
match.request.edge-cname.literal Match Condition Only Identifies a hostname corresponding to an edge CNAME configuration. |
ignore_case |
Boolean |
Determines whether the comparison between the value parameter and the request will be case-sensitive. Valid values are:
Certain match conditions use a parameter other than value to determine whether a request is a match. The ignore_case parameter applies to whichever parameter will be compared against the request. For example, match.request.edge-cname.literal uses hostnames. |
Array |
Contains the match conditions associated with this match condition. Each object in this array contains a match condition configuration. Match conditions are listed in the order in which they appear in the rule. |
|
name |
String |
Identifies the entity that will be matched. Example: The match.request.cookie.literal match condition uses this parameter to identify the cookie whose value will be compared against the value parameter. |
ordinal |
Integer |
Indicates the position of the match condition within the rule. |
relative_to |
String |
URL Match Conditions Only Determines where the URL comparison will start. Valid values are: root | origin
|
result |
String |
Determines whether the comparison must result in a match in order to satisfy this match condition. Valid values are: match | nomatch
|
type |
String |
Identifies a match condition by its code name. View valid values.
Mutually Exclusive (Select First Match) Use select.first-match to create mutually exclusive match conditions (i.e., Select First Match). Nest the desired mutually exclusive match conditions within a child matches array. ... "matches": [{ "type": "select.first-match", "ordinal": 1, "matches": [{ "type": "match.url.url-path.wildcard", ... Independent Match Conditions Use one of the following values:
|
value |
String | Array of string values |
Determines the value that will be compared against the request. Acceptable values for this parameter vary by match condition. Multiple values (e.g., space-separated values) are returned as an array |
The features array describes one or more feature(s) associated with the parent match condition using the following parameters:
View the set of supported parameters for each feature in the features array template provided below this table.
Name | Data Type | Description |
---|---|---|
action |
String |
Indicates the action (e.g., set) that will take place. |
code |
String |
Indicates a HTTP status code. |
codes |
String | Array of string values |
Indicates one or more HTTP status codes. Multiple values (e.g., space-separated values) are returned as an array |
destination |
String |
Identifies a relative path via a regular expression. |
enabled |
Boolean |
Determines whether the feature will be enabled. Valid values are: true | false
|
extensions |
String | Array of string values |
Identifies one or more file extensions. Multiple values (e.g., space-separated values) are returned as an array |
format |
String |
feature.logs.custom-log-field-1 Feature Only Indicates the format and the content that will be assigned to a custom log field. |
header_name |
String |
feature.access.token-auth-denial-code Feature Only Set this to Location. |
header_value |
String |
feature.access.token-auth-denial-code Feature Only Identifies the URL to which unauthorized requests will be redirected. |
instance |
String |
feature.waf.web-application-firewall Feature Only Identifies a WAF instance by its system-defined ID. |
kbytes_per_second |
Integer |
feature.caching.bandwidth-throttling Feature Only Indicates the bandwidth, in Kbps, to which requests will be throttled. |
media_types |
String |
feature.caching.compress-file-types Feature Only Specify one or more media types (aka content types). |
methods |
String | Array of string values |
feature.specialty.cacheable-http-methods Feature Only Specify one or more supported HTTP methods. Multiple values (e.g., space-separated values) are returned as an array |
mode |
String |
feature.caching.cache-key-query-string Feature Only Determine whether query string parameters will be included in the cache-key. Valid values are: include | exclude | include-all | exclude-all
|
name |
String |
Identifies the object (e.g., request header) on which the feature will be applied by its name. |
names |
String |
feature.origin.proxy-special-headers Feature Only Identifies one or more CDN-specific request header that will be forwarded to an origin server. Multiple values (e.g., space-separated values) are returned as an array |
ordinal |
Integer |
Indicates the position of the feature. |
parameters |
String |
feature.caching.cache-key-query-string Feature Only Identifies one or more query string parameters by their names. |
prebuf_seconds |
Integer |
feature.caching.bandwidth-throttling Feature Only Determines the number of seconds that our edge servers will wait until throttling bandwidth. |
requests |
Integer |
feature.origin.max-keep-alive-requests Feature Only Determines the maximum number of requests for a Keep-Alive connection before it is closed. |
seek_end |
String |
feature.caching.h264-support-video-seek-params Feature Only Overrides the name assigned to ec_end. |
seek_start |
String |
feature.caching.h264-support-video-seek-params Feature Only Overrides the name assigned to ec_seek. |
source |
String |
Identifies a relative path via a regular expression. |
status |
String |
Identifies requests via a HTTP status code. |
treatment |
String |
Determines how an edge server will handle a header. |
type |
String |
Identifies a feature by its code name. View valid values.
Valid values are:
View the set of supported parameters for each feature in the features array template provided below this table. |
units |
String |
Determines the time unit that will be used for the value parameter. |
value |
String | Integer | Array |
Determines the value that will be set. Multiple values (e.g., space-separated values) are returned as an array. |
Use the following code excerpt to view a list of features and the set of information returned for each feature.
"features": [{ "type": "feature.caching.complete-cache-fill", "ordinal": 0, "enabled": true }, { "type": "feature.caching.compress-file-types", "ordinal": 0, "media_types": "string" }, { "type": "feature.caching.default-internal-max-age", "ordinal": 0, "status": "200", "value": 0, "units": "off" }, { "type": "feature.caching.external-max-age", "ordinal": 0, "value": 0, "units": "off" }, { "type": "feature.caching.force-internal-max-age", "ordinal": 0, "status": "200", "value": 0, "units": "off" }, { "type": "feature.access.deny-access", "ordinal": 0, "enabled": true }, { "type": "feature.access.token-auth", "ordinal": 0, "enabled": true }, { "type": "feature.access.token-auth-denial-code", "ordinal": 0, "code": "301", "header_name": "", "header_value": "string" }, { "type": "feature.caching.bypass-cache", "ordinal": 0, "enabled": true }, { "type": "feature.caching.cache-control-header-treatment", "ordinal": 0, "treatment": "pass" }, { "type": "feature.caching.cache-key-query-string", "ordinal": 0, "mode": "include", "parameters": "string" }, { "type": "feature.caching.expires-header-treatment", "ordinal": 0, "treatment": "pass" }, { "type": "feature.access.token-auth-ignore-url-case", "ordinal": 0, "enabled": true }, { "type": "feature.access.token-auth-parameter", "ordinal": 0, "name": "string", "enabled": true }, { "type": "feature.caching.bandwidth-parameters", "ordinal": 0, "enabled": true }, { "type": "feature.caching.bandwidth-throttling", "ordinal": 0, "prebuf_seconds": 0, "kbytes_per_second": 0 }, { "type": "feature.caching.cache-key-rewrite", "ordinal": 0, "source": "string", "destination": "string" }, { "type": "feature.caching.h264-support", "ordinal": 0, "extensions": "string" }, { "type": "feature.caching.honor-no-cache-request", "ordinal": 0, "enabled": true }, { "type": "feature.caching.ignore-origin-no-cache", "ordinal": 0, "codes": "string" }, { "type": "feature.caching.ignore-unsatisfiable-ranges", "ordinal": 0, "enabled": true }, { "type": "feature.caching.internal-max-stale", "ordinal": 0, "status": "200", "value": 0, "units": "off" }, { "type": "feature.caching.partial-cache-sharing", "ordinal": 0, "enabled": true }, { "type": "feature.caching.prevalidate-cached-content", "ordinal": 0, "value": 0, "units": "off" }, { "type": "feature.caching.refresh-zero-byte-cache-files", "ordinal": 0, "enabled": true }, { "type": "feature.caching.set-cacheable-status-codes", "ordinal": 0, "codes": "string" }, { "type": "feature.caching.stale-content-delivery-on-error", "ordinal": 0, "enabled": true }, { "type": "feature.caching.stale-while-revalidate", "ordinal": 0, "value": 0, "units": "off" }, { "type": "feature.comment", "ordinal": 0, "value": "string" }, { "type": "feature.headers.age-response-header", "ordinal": 0, "enabled": true }, { "type": "feature.headers.debug-cache-response-headers", "ordinal": 0, "enabled": true }, { "type": "feature.headers.modify-client-request-header", "ordinal": 0, "action": "set", "name": "string", "value": "string" }, { "type": "feature.logs.custom-log-field-1", "ordinal": 0, "format": "string" }, { "type": "feature.logs.log-query-string", "ordinal": 0, "enabled": true }, { "type": "feature.optimizer.edge-optimizer", "ordinal": 0, "enabled": true }, { "type": "feature.optimizer.edge-optimizer-instantiate-configuration", "ordinal": 0, "site": "string" }, { "type": "feature.origin.max-keep-alive-requests", "ordinal": 0, "requests": 0 }, { "type": "feature.origin.proxy-special-headers", "ordinal": 0, "names": "string" }, { "type": "feature.specialty.cacheable-http-methods", "ordinal": 0, "methods": "GET" }, { "type": "feature.headers.modify-client-response-header", "ordinal": 0, "action": "set", "name": "string", "value": "string" }, { "type": "feature.headers.set-client-ip-custom-header", "ordinal": 0, "enabled": true, "name": "string" }, { "type": "feature.specialty.cacheable-request-body-size", "ordinal": 0, "value": 0, "units": "bytes" }, { "type": "feature.specialty.user-variable", "ordinal": 0, "name": "string", "value": "string" }, { "type": "feature.url.follow-redirects", "ordinal": 0, "enabled": true }, { "type": "feature.url.url-redirect", "ordinal": 0, "source": "string", "destination": "string", "code": "301" }, { "type": "feature.url.url-rewrite", "ordinal": 0, "source": "string", "destination": "string" }, { "type": "feature.waf.web-application-firewall", "ordinal": 0, "instance": "string" }, { "type": "feature.caching.h264-support-video-seek-params", "ordinal": 0, "seek_start": "string", "seek_end": "string" } ]
The history object describes the policy's state changes using the following parameters:
Name | Data Type | Description |
---|---|---|
id | String | Identifies this entry by its system-defined ID. |
type | String |
Indicates the policy's new state. Valid values are: created | deleted | locked | updated
|
created_at | String |
Indicates the date and time (UTC) at which the policy entered the state identified by the state property. Syntax: YYYY-MM-DDThh:mm:ssZ
Example: 2024-01-08T20:31:06Z
|
Object |
Describes the user that requested the change in state. |
The user object describes a user using the following parameters:
Name | Data Type | Description |
---|---|---|
id | String | Identifies a user by its system-defined ID. |
first_name | String | Indicates a user's first name. |
last_name | String | Indicates a user's last name. |
|
String |
Indicates a user's email address. |
The response body for an unsuccessful request will contain an error response that provides additional information.
A sample JSON request is shown below.
PATCH https://api.vdms.io/rules-engine/v1.1/policies/22525 HTTP/1.1
Accept: application/json
Content-Type: application/json
Host: api.vdms.io
Content-Length: 396
{ "id": "22525", "name": "My Policy 1.1", "description": "", "state": "draft", "platform": "adn", "rules": [{ "@id": "/rules-engine/v1.1/policies/22525/rules/525255", "@type": "Rule", "id": "525255", "name": "", "description": "", "matches": [{ "type": "match.always", "features": [{ "type": "feature.caching.external-max-age", "value": "1", "units": "hours" } ] } ] } }
A sample JSON response is shown below.
HTTP/1.1 202 Accepted
Cache-Control: no-cache
Content-Type: application/json; charset=utf-8
Date: Thu, 15 Apr 2021 12:00:00 GMT
Content-Length: 1258
{ "@id": "/rules-engine/v1.1/policies/22525", "@type": "Policy", "id": "22525", "name": "My Policy 1.0", "description": "", "policy_type": "customer", "state": "locked", "platform": "adn", "created_at": "2019-09-26T00:02:36Z", "updated_at": "2019-09-26T00:02:37Z", "rules": [{ "@id": "/rules-engine/v1.1/policies/22525/rules/525255", "@type": "Rule", "id": "525255", "name": "", "description": "", "ordinal": 1, "created_at": "2019-09-26T00:02:37Z", "updated_at": "2019-09-26T00:02:37Z", "matches": [{ "type": "match.always", "ordinal": 1, "features": [{ "type": "feature.caching.external-max-age", "ordinal": 1, "value": "1", "units": "hours" } ] } ] } ], "history": [{ "id": 113868, "type": "created", "created_at": "2019-09-26T00:02:37Z", "user": { "id": "300300", "first_name": "Joe", "last_name": "Smith", "email": "joe.smith@example.com" }, { "id": 7007, "type": "updated", "created_at": "2019-09-27T17:25:39Z", "user": { "id": "300300", "first_name": "Joe", "last_name": "Smith", "email": "joe.smith@example.com" } } } ] }