Patch channel

Applies a partial update to a channel using JSON Patch (RFC 6902).

Path Parameters
subKey string — REQUIRED

Subscribe key identifying the keyset.

channelId string — REQUIRED

ID of the channel.

Query Parameters
auth string

Required unless you supply signature instead. An Access Manager token authorizing the operation. Use this for client-side callers.

Supply either auth or signature, never both. Supplying neither returns 401 (DS-0203). Supplying both returns 403 (DS-0201).

If the token cannot be decoded, or its projection does not permit the requested fields, the request fails with 403 (DS-0202, INVALID_TOKEN).

signature string

Required unless you supply auth instead. A signature proving the request was signed with the secret key for this keyset. Use this for server-side callers.

Supply either signature or auth, never both. Supplying neither returns 401 (DS-0203). Supplying both returns 403 (DS-0201).

Refer to Signature generation for how to compute it.

Header Parameters
If-Match string

ETag value for optimistic concurrency control. If provided, the update will only succeed if the current resource ETag matches this value.

Request Body — REQUIRED
object[]
op string — REQUIRED

Possible values: [add, remove, replace, move, copy, test]

The operation to perform

path string — REQUIRED

Possible values: Value must match regular expression ^(/[^/]*)*$

JSON Pointer (RFC 6901) to a location within a JSON document. Must be either empty string "" (refers to whole document) or start with "/" followed by reference tokens.

value

The value to add, replace, or test (required for add, replace, test operations)

from string

Possible values: Value must match regular expression ^(/[^/]*)*$

JSON Pointer (RFC 6901) to a location within a JSON document. Must be either empty string "" (refers to whole document) or start with "/" followed by reference tokens.

Responses
200

Successful response

Schema — OPTIONAL
data object

Channel resource - a specialized Entity of the Channel class (or one of its descendant classes).

payload objectNode — OPTIONAL
entityClass string

Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z][a-zA-Z0-9_-]*$

Name of the entity class.

entityClassVersion integer

Possible values: 1 ≤ value

Version of the entity class.

entityClassLevel string

Possible values: [Global, SubKey]

The level at which the entity class is defined.

id string — OPTIONAL

Possible values: 1 ≤ length ≤ 255

createdAt date-time — OPTIONAL

Date and time the entity was created.

updatedAt date-time — OPTIONAL

Date and time the entity was last updated.

eTag string

The entity's content fingerprint used in conditional requests.

status string — OPTIONAL

Possible values: 1 ≤ length ≤ 100

Entity status

expiresAt date-time

Date and time when the entity expires (will be deleted automatically).

meta object — OPTIONAL

Cursor-based pagination metadata

next_cursor string — OPTIONAL

Opaque cursor for the next page. Base64-encoded token. Use this value in the cursor query parameter to fetch the next page. Null if there are no more results (has_next is false).

has_next boolean

Indicates whether there are more results after this page

limit integer — OPTIONAL

The limit applied to this page (may differ from requested limit)

400

Bad request. For JSON Patch operations, which additionally reject patches that target immutable pointers.

CodeConstantCause
DS-0002BAD_REQUESTRequired header or query parameter missing.
DS-0003INVALID_JSONPatch document absent, empty, or not valid JSON.
DS-0004VALIDATION_ERRORPatch document, path variable or query parameter failed validation.
DS-0006INVALID_ARGUMENTA patch path or from is not a valid JSON Pointer, does not resolve to a container, or uses a non-numeric array index.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUEThe patched document's property value does not match its valueKind.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPEA declared property's path resolves to a non-scalar node after patching.
DS-0650NON_NULLABLE_PROPERTYThe patch leaves a property declared nullable: false missing or null.
DS-0700IMMUTABLE_FIELD_MODIFICATIONThe patch targets a pointer outside the mutable set. Patch only - full replace does not raise this.
Schema — OPTIONAL
errors object[] — OPTIONAL
errorCode string

A machine-readable error code. Stable across releases - use this, not message, for programmatic branching. The HTTP status for a given code is fixed.

Codes are grouped by range. Not every code can occur on every operation; each response documents the subset it can return.

Generic

CodeConstantStatusMeaning
DS-0000INTERNAL_SERVER_ERROR500Unhandled server error, or a server-side routing configuration problem.
DS-0002BAD_REQUEST400Required header or query parameter missing, or request input otherwise unusable.
DS-0003INVALID_JSON400Request body absent, empty, or not valid JSON.
DS-0004VALIDATION_ERROR400Body, path variable or query parameter failed validation. One error item per violation.
DS-0005INVALID_FILTER400filter_fast / filter could not be parsed or validated.
DS-0006INVALID_ARGUMENT400An argument could not be used - a sort field that is not sortable in that request, undecodable cursor, malformed JSON Pointer, parameter type mismatch.
DS-0007UNSUPPORTED_CONTENT_TYPE415Request Content-Type not supported.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUE400A declared class property's value does not match its valueKind.
DS-0009SERVICE_UNAVAILABLE503A required dependency is unavailable, or the request could not be forwarded to its region.
DS-0010NOT_ACCEPTABLE406Reserved - not currently emitted. 406 responses carry a text/plain body with no error code.
DS-0011METHOD_NOT_ALLOWED405HTTP method not supported for this path.

Resource (01xx)

CodeConstantStatusMeaning
DS-0100NOT_FOUND404The addressed resource does not exist.

Authorization (02xx)

CodeConstantStatusMeaning
DS-0200DATASYNC_NOT_ENABLED403Datasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIED403Access Manager not enabled, conflicting credentials supplied, or authorization check denied.
DS-0202INVALID_TOKEN403The auth PAM token could not be decoded, or its projection does not permit the requested fields.
DS-0203UNAUTHENTICATED401No credentials supplied.

State (03xx)

CodeConstantStatusMeaning
DS-0300ETAG_MISMATCH412If-Match does not contain the resource's current ETag.
DS-0301CONFLICT409A resource with the same identity already exists.

Size limits (04xx)

CodeConstantStatusMeaning
DS-0400CONTENT_TOO_LARGE413Reserved - not currently emitted.

Custom fields (05xx)

CodeConstantStatusMeaning
DS-0500CUSTOM_NOT_SCALAR400Reserved - not currently emitted.

Configuration (06xx)

CodeConstantStatusMeaning
DS-0600CONFIG_NOT_FOUND404Subscribe key unknown to the configuration service, or its datasync region is not configured.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPE400A declared property's path resolves to a non-scalar node (object or array).
DS-0650NON_NULLABLE_PROPERTY400A property declared nullable: false is missing or explicitly null.

Patch (07xx)

CodeConstantStatusMeaning
DS-0700IMMUTABLE_FIELD_MODIFICATION400A patch targets a pointer outside the mutable set. Patch only.

Relationships (08xx)

CodeConstantStatusMeaning
DS-0800WRONG_ENTITY_CLASS_TYPE400An endpoint entity's class does not satisfy the relationship class for that side. Create only.
DS-0801CARDINALITY_VIOLATED409ONE-TO-ONE or ONE-TO-MANY cardinality already satisfied. Create only.

Class management (09xx)

CodeConstantStatusMeaning
DS-0900GLOBAL_CLASS_MODIFICATION403Global class definitions are read-only. Replace and delete only.
DS-0901PROJECTION_LIMIT_EXCEEDED400Distinct projections across all properties exceed the per-class maximum.
DS-0902INVALID_PROJECTION_NAME400Projection name too long or malformed, or a property declares an empty projection list.
DS-0903INCOMPATIBLE_CHILD_PROPERTY400A redeclared inherited property differs from the parent in path, valueKind, or nullable. Entity classes only.
DS-0904MISSING_PARENT_PROPERTY400Reserved - not currently emitted. Missing parent properties are inherited automatically.
DS-0905CLASS_HAS_CHILDREN409The class still has subclasses and cannot be deleted. Entity classes only.
DS-0906RESERVED_PROPERTY_NAME400A declared property uses the name of a built-in record field (id, createdAt, updatedAt, status). Only status may be re-declared, and only as {name: "status", path: "/status"} to control its projections.
message string

A human-readable description of the error, intended for logs and diagnostics. Not stable across releases - do not parse or branch on it.

path string — OPTIONAL

Location of the input that caused the error. Present only for codes that can identify one. The form depends on the code: a JSON Pointer into the request payload (DS-0008, DS-0602, DS-0650), a query parameter name (filter for DS-0005, sort for DS-0006), a field name (DS-0004), or a class property name (DS-0903).

401

Unauthorized - no usable credentials were supplied.

CodeConstantCause
DS-0203UNAUTHENTICATEDNeither a PAM token (auth) nor a request signature was supplied, or the portal session token is missing.
Schema — OPTIONAL
errors object[] — OPTIONAL
errorCode string

A machine-readable error code. Stable across releases - use this, not message, for programmatic branching. The HTTP status for a given code is fixed.

Codes are grouped by range. Not every code can occur on every operation; each response documents the subset it can return.

Generic

CodeConstantStatusMeaning
DS-0000INTERNAL_SERVER_ERROR500Unhandled server error, or a server-side routing configuration problem.
DS-0002BAD_REQUEST400Required header or query parameter missing, or request input otherwise unusable.
DS-0003INVALID_JSON400Request body absent, empty, or not valid JSON.
DS-0004VALIDATION_ERROR400Body, path variable or query parameter failed validation. One error item per violation.
DS-0005INVALID_FILTER400filter_fast / filter could not be parsed or validated.
DS-0006INVALID_ARGUMENT400An argument could not be used - a sort field that is not sortable in that request, undecodable cursor, malformed JSON Pointer, parameter type mismatch.
DS-0007UNSUPPORTED_CONTENT_TYPE415Request Content-Type not supported.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUE400A declared class property's value does not match its valueKind.
DS-0009SERVICE_UNAVAILABLE503A required dependency is unavailable, or the request could not be forwarded to its region.
DS-0010NOT_ACCEPTABLE406Reserved - not currently emitted. 406 responses carry a text/plain body with no error code.
DS-0011METHOD_NOT_ALLOWED405HTTP method not supported for this path.

Resource (01xx)

CodeConstantStatusMeaning
DS-0100NOT_FOUND404The addressed resource does not exist.

Authorization (02xx)

CodeConstantStatusMeaning
DS-0200DATASYNC_NOT_ENABLED403Datasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIED403Access Manager not enabled, conflicting credentials supplied, or authorization check denied.
DS-0202INVALID_TOKEN403The auth PAM token could not be decoded, or its projection does not permit the requested fields.
DS-0203UNAUTHENTICATED401No credentials supplied.

State (03xx)

CodeConstantStatusMeaning
DS-0300ETAG_MISMATCH412If-Match does not contain the resource's current ETag.
DS-0301CONFLICT409A resource with the same identity already exists.

Size limits (04xx)

CodeConstantStatusMeaning
DS-0400CONTENT_TOO_LARGE413Reserved - not currently emitted.

Custom fields (05xx)

CodeConstantStatusMeaning
DS-0500CUSTOM_NOT_SCALAR400Reserved - not currently emitted.

Configuration (06xx)

CodeConstantStatusMeaning
DS-0600CONFIG_NOT_FOUND404Subscribe key unknown to the configuration service, or its datasync region is not configured.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPE400A declared property's path resolves to a non-scalar node (object or array).
DS-0650NON_NULLABLE_PROPERTY400A property declared nullable: false is missing or explicitly null.

Patch (07xx)

CodeConstantStatusMeaning
DS-0700IMMUTABLE_FIELD_MODIFICATION400A patch targets a pointer outside the mutable set. Patch only.

Relationships (08xx)

CodeConstantStatusMeaning
DS-0800WRONG_ENTITY_CLASS_TYPE400An endpoint entity's class does not satisfy the relationship class for that side. Create only.
DS-0801CARDINALITY_VIOLATED409ONE-TO-ONE or ONE-TO-MANY cardinality already satisfied. Create only.

Class management (09xx)

CodeConstantStatusMeaning
DS-0900GLOBAL_CLASS_MODIFICATION403Global class definitions are read-only. Replace and delete only.
DS-0901PROJECTION_LIMIT_EXCEEDED400Distinct projections across all properties exceed the per-class maximum.
DS-0902INVALID_PROJECTION_NAME400Projection name too long or malformed, or a property declares an empty projection list.
DS-0903INCOMPATIBLE_CHILD_PROPERTY400A redeclared inherited property differs from the parent in path, valueKind, or nullable. Entity classes only.
DS-0904MISSING_PARENT_PROPERTY400Reserved - not currently emitted. Missing parent properties are inherited automatically.
DS-0905CLASS_HAS_CHILDREN409The class still has subclasses and cannot be deleted. Entity classes only.
DS-0906RESERVED_PROPERTY_NAME400A declared property uses the name of a built-in record field (id, createdAt, updatedAt, status). Only status may be re-declared, and only as {name: "status", path: "/status"} to control its projections.
message string

A human-readable description of the error, intended for logs and diagnostics. Not stable across releases - do not parse or branch on it.

path string — OPTIONAL

Location of the input that caused the error. Present only for codes that can identify one. The form depends on the code: a JSON Pointer into the request payload (DS-0008, DS-0602, DS-0650), a query parameter name (filter for DS-0005, sort for DS-0006), a field name (DS-0004), or a class property name (DS-0903).

403

Forbidden - credentials were recognised but the request is not permitted.

CodeConstantCause
DS-0200DATASYNC_NOT_ENABLEDDatasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIEDAccess Manager is not enabled for the keyset, auth and signature were both supplied, or the portal authorization check denied the request.
DS-0202INVALID_TOKENThe auth PAM token could not be decoded, or its projection does not permit the requested fields.
Schema — OPTIONAL
errors object[] — OPTIONAL
errorCode string

A machine-readable error code. Stable across releases - use this, not message, for programmatic branching. The HTTP status for a given code is fixed.

Codes are grouped by range. Not every code can occur on every operation; each response documents the subset it can return.

Generic

CodeConstantStatusMeaning
DS-0000INTERNAL_SERVER_ERROR500Unhandled server error, or a server-side routing configuration problem.
DS-0002BAD_REQUEST400Required header or query parameter missing, or request input otherwise unusable.
DS-0003INVALID_JSON400Request body absent, empty, or not valid JSON.
DS-0004VALIDATION_ERROR400Body, path variable or query parameter failed validation. One error item per violation.
DS-0005INVALID_FILTER400filter_fast / filter could not be parsed or validated.
DS-0006INVALID_ARGUMENT400An argument could not be used - a sort field that is not sortable in that request, undecodable cursor, malformed JSON Pointer, parameter type mismatch.
DS-0007UNSUPPORTED_CONTENT_TYPE415Request Content-Type not supported.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUE400A declared class property's value does not match its valueKind.
DS-0009SERVICE_UNAVAILABLE503A required dependency is unavailable, or the request could not be forwarded to its region.
DS-0010NOT_ACCEPTABLE406Reserved - not currently emitted. 406 responses carry a text/plain body with no error code.
DS-0011METHOD_NOT_ALLOWED405HTTP method not supported for this path.

Resource (01xx)

CodeConstantStatusMeaning
DS-0100NOT_FOUND404The addressed resource does not exist.

Authorization (02xx)

CodeConstantStatusMeaning
DS-0200DATASYNC_NOT_ENABLED403Datasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIED403Access Manager not enabled, conflicting credentials supplied, or authorization check denied.
DS-0202INVALID_TOKEN403The auth PAM token could not be decoded, or its projection does not permit the requested fields.
DS-0203UNAUTHENTICATED401No credentials supplied.

State (03xx)

CodeConstantStatusMeaning
DS-0300ETAG_MISMATCH412If-Match does not contain the resource's current ETag.
DS-0301CONFLICT409A resource with the same identity already exists.

Size limits (04xx)

CodeConstantStatusMeaning
DS-0400CONTENT_TOO_LARGE413Reserved - not currently emitted.

Custom fields (05xx)

CodeConstantStatusMeaning
DS-0500CUSTOM_NOT_SCALAR400Reserved - not currently emitted.

Configuration (06xx)

CodeConstantStatusMeaning
DS-0600CONFIG_NOT_FOUND404Subscribe key unknown to the configuration service, or its datasync region is not configured.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPE400A declared property's path resolves to a non-scalar node (object or array).
DS-0650NON_NULLABLE_PROPERTY400A property declared nullable: false is missing or explicitly null.

Patch (07xx)

CodeConstantStatusMeaning
DS-0700IMMUTABLE_FIELD_MODIFICATION400A patch targets a pointer outside the mutable set. Patch only.

Relationships (08xx)

CodeConstantStatusMeaning
DS-0800WRONG_ENTITY_CLASS_TYPE400An endpoint entity's class does not satisfy the relationship class for that side. Create only.
DS-0801CARDINALITY_VIOLATED409ONE-TO-ONE or ONE-TO-MANY cardinality already satisfied. Create only.

Class management (09xx)

CodeConstantStatusMeaning
DS-0900GLOBAL_CLASS_MODIFICATION403Global class definitions are read-only. Replace and delete only.
DS-0901PROJECTION_LIMIT_EXCEEDED400Distinct projections across all properties exceed the per-class maximum.
DS-0902INVALID_PROJECTION_NAME400Projection name too long or malformed, or a property declares an empty projection list.
DS-0903INCOMPATIBLE_CHILD_PROPERTY400A redeclared inherited property differs from the parent in path, valueKind, or nullable. Entity classes only.
DS-0904MISSING_PARENT_PROPERTY400Reserved - not currently emitted. Missing parent properties are inherited automatically.
DS-0905CLASS_HAS_CHILDREN409The class still has subclasses and cannot be deleted. Entity classes only.
DS-0906RESERVED_PROPERTY_NAME400A declared property uses the name of a built-in record field (id, createdAt, updatedAt, status). Only status may be re-declared, and only as {name: "status", path: "/status"} to control its projections.
message string

A human-readable description of the error, intended for logs and diagnostics. Not stable across releases - do not parse or branch on it.

path string — OPTIONAL

Location of the input that caused the error. Present only for codes that can identify one. The form depends on the code: a JSON Pointer into the request payload (DS-0008, DS-0602, DS-0650), a query parameter name (filter for DS-0005, sort for DS-0006), a field name (DS-0004), or a class property name (DS-0903).

404

Not found.

CodeConstantCause
DS-0100NOT_FOUNDThe addressed resource does not exist. Also returned when a conditional request supplies no If-Match and the resource is absent.
DS-0600CONFIG_NOT_FOUNDThe subscribe key is unknown to the configuration service, or its datasync region is not configured.
Schema — OPTIONAL
errors object[] — OPTIONAL
errorCode string

A machine-readable error code. Stable across releases - use this, not message, for programmatic branching. The HTTP status for a given code is fixed.

Codes are grouped by range. Not every code can occur on every operation; each response documents the subset it can return.

Generic

CodeConstantStatusMeaning
DS-0000INTERNAL_SERVER_ERROR500Unhandled server error, or a server-side routing configuration problem.
DS-0002BAD_REQUEST400Required header or query parameter missing, or request input otherwise unusable.
DS-0003INVALID_JSON400Request body absent, empty, or not valid JSON.
DS-0004VALIDATION_ERROR400Body, path variable or query parameter failed validation. One error item per violation.
DS-0005INVALID_FILTER400filter_fast / filter could not be parsed or validated.
DS-0006INVALID_ARGUMENT400An argument could not be used - a sort field that is not sortable in that request, undecodable cursor, malformed JSON Pointer, parameter type mismatch.
DS-0007UNSUPPORTED_CONTENT_TYPE415Request Content-Type not supported.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUE400A declared class property's value does not match its valueKind.
DS-0009SERVICE_UNAVAILABLE503A required dependency is unavailable, or the request could not be forwarded to its region.
DS-0010NOT_ACCEPTABLE406Reserved - not currently emitted. 406 responses carry a text/plain body with no error code.
DS-0011METHOD_NOT_ALLOWED405HTTP method not supported for this path.

Resource (01xx)

CodeConstantStatusMeaning
DS-0100NOT_FOUND404The addressed resource does not exist.

Authorization (02xx)

CodeConstantStatusMeaning
DS-0200DATASYNC_NOT_ENABLED403Datasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIED403Access Manager not enabled, conflicting credentials supplied, or authorization check denied.
DS-0202INVALID_TOKEN403The auth PAM token could not be decoded, or its projection does not permit the requested fields.
DS-0203UNAUTHENTICATED401No credentials supplied.

State (03xx)

CodeConstantStatusMeaning
DS-0300ETAG_MISMATCH412If-Match does not contain the resource's current ETag.
DS-0301CONFLICT409A resource with the same identity already exists.

Size limits (04xx)

CodeConstantStatusMeaning
DS-0400CONTENT_TOO_LARGE413Reserved - not currently emitted.

Custom fields (05xx)

CodeConstantStatusMeaning
DS-0500CUSTOM_NOT_SCALAR400Reserved - not currently emitted.

Configuration (06xx)

CodeConstantStatusMeaning
DS-0600CONFIG_NOT_FOUND404Subscribe key unknown to the configuration service, or its datasync region is not configured.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPE400A declared property's path resolves to a non-scalar node (object or array).
DS-0650NON_NULLABLE_PROPERTY400A property declared nullable: false is missing or explicitly null.

Patch (07xx)

CodeConstantStatusMeaning
DS-0700IMMUTABLE_FIELD_MODIFICATION400A patch targets a pointer outside the mutable set. Patch only.

Relationships (08xx)

CodeConstantStatusMeaning
DS-0800WRONG_ENTITY_CLASS_TYPE400An endpoint entity's class does not satisfy the relationship class for that side. Create only.
DS-0801CARDINALITY_VIOLATED409ONE-TO-ONE or ONE-TO-MANY cardinality already satisfied. Create only.

Class management (09xx)

CodeConstantStatusMeaning
DS-0900GLOBAL_CLASS_MODIFICATION403Global class definitions are read-only. Replace and delete only.
DS-0901PROJECTION_LIMIT_EXCEEDED400Distinct projections across all properties exceed the per-class maximum.
DS-0902INVALID_PROJECTION_NAME400Projection name too long or malformed, or a property declares an empty projection list.
DS-0903INCOMPATIBLE_CHILD_PROPERTY400A redeclared inherited property differs from the parent in path, valueKind, or nullable. Entity classes only.
DS-0904MISSING_PARENT_PROPERTY400Reserved - not currently emitted. Missing parent properties are inherited automatically.
DS-0905CLASS_HAS_CHILDREN409The class still has subclasses and cannot be deleted. Entity classes only.
DS-0906RESERVED_PROPERTY_NAME400A declared property uses the name of a built-in record field (id, createdAt, updatedAt, status). Only status may be re-declared, and only as {name: "status", path: "/status"} to control its projections.
message string

A human-readable description of the error, intended for logs and diagnostics. Not stable across releases - do not parse or branch on it.

path string — OPTIONAL

Location of the input that caused the error. Present only for codes that can identify one. The form depends on the code: a JSON Pointer into the request payload (DS-0008, DS-0602, DS-0650), a query parameter name (filter for DS-0005, sort for DS-0006), a field name (DS-0004), or a class property name (DS-0903).

406

Not Acceptable - the Accept header does not contain a supported value.

This response carries a text/plain body and no error code.

Schema — OPTIONAL
string
412

Precondition Failed.

CodeConstantCause
DS-0300ETAG_MISMATCHThe If-Match header does not contain the resource's current ETag.
Schema — OPTIONAL
errors object[] — OPTIONAL
errorCode string

A machine-readable error code. Stable across releases - use this, not message, for programmatic branching. The HTTP status for a given code is fixed.

Codes are grouped by range. Not every code can occur on every operation; each response documents the subset it can return.

Generic

CodeConstantStatusMeaning
DS-0000INTERNAL_SERVER_ERROR500Unhandled server error, or a server-side routing configuration problem.
DS-0002BAD_REQUEST400Required header or query parameter missing, or request input otherwise unusable.
DS-0003INVALID_JSON400Request body absent, empty, or not valid JSON.
DS-0004VALIDATION_ERROR400Body, path variable or query parameter failed validation. One error item per violation.
DS-0005INVALID_FILTER400filter_fast / filter could not be parsed or validated.
DS-0006INVALID_ARGUMENT400An argument could not be used - a sort field that is not sortable in that request, undecodable cursor, malformed JSON Pointer, parameter type mismatch.
DS-0007UNSUPPORTED_CONTENT_TYPE415Request Content-Type not supported.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUE400A declared class property's value does not match its valueKind.
DS-0009SERVICE_UNAVAILABLE503A required dependency is unavailable, or the request could not be forwarded to its region.
DS-0010NOT_ACCEPTABLE406Reserved - not currently emitted. 406 responses carry a text/plain body with no error code.
DS-0011METHOD_NOT_ALLOWED405HTTP method not supported for this path.

Resource (01xx)

CodeConstantStatusMeaning
DS-0100NOT_FOUND404The addressed resource does not exist.

Authorization (02xx)

CodeConstantStatusMeaning
DS-0200DATASYNC_NOT_ENABLED403Datasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIED403Access Manager not enabled, conflicting credentials supplied, or authorization check denied.
DS-0202INVALID_TOKEN403The auth PAM token could not be decoded, or its projection does not permit the requested fields.
DS-0203UNAUTHENTICATED401No credentials supplied.

State (03xx)

CodeConstantStatusMeaning
DS-0300ETAG_MISMATCH412If-Match does not contain the resource's current ETag.
DS-0301CONFLICT409A resource with the same identity already exists.

Size limits (04xx)

CodeConstantStatusMeaning
DS-0400CONTENT_TOO_LARGE413Reserved - not currently emitted.

Custom fields (05xx)

CodeConstantStatusMeaning
DS-0500CUSTOM_NOT_SCALAR400Reserved - not currently emitted.

Configuration (06xx)

CodeConstantStatusMeaning
DS-0600CONFIG_NOT_FOUND404Subscribe key unknown to the configuration service, or its datasync region is not configured.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPE400A declared property's path resolves to a non-scalar node (object or array).
DS-0650NON_NULLABLE_PROPERTY400A property declared nullable: false is missing or explicitly null.

Patch (07xx)

CodeConstantStatusMeaning
DS-0700IMMUTABLE_FIELD_MODIFICATION400A patch targets a pointer outside the mutable set. Patch only.

Relationships (08xx)

CodeConstantStatusMeaning
DS-0800WRONG_ENTITY_CLASS_TYPE400An endpoint entity's class does not satisfy the relationship class for that side. Create only.
DS-0801CARDINALITY_VIOLATED409ONE-TO-ONE or ONE-TO-MANY cardinality already satisfied. Create only.

Class management (09xx)

CodeConstantStatusMeaning
DS-0900GLOBAL_CLASS_MODIFICATION403Global class definitions are read-only. Replace and delete only.
DS-0901PROJECTION_LIMIT_EXCEEDED400Distinct projections across all properties exceed the per-class maximum.
DS-0902INVALID_PROJECTION_NAME400Projection name too long or malformed, or a property declares an empty projection list.
DS-0903INCOMPATIBLE_CHILD_PROPERTY400A redeclared inherited property differs from the parent in path, valueKind, or nullable. Entity classes only.
DS-0904MISSING_PARENT_PROPERTY400Reserved - not currently emitted. Missing parent properties are inherited automatically.
DS-0905CLASS_HAS_CHILDREN409The class still has subclasses and cannot be deleted. Entity classes only.
DS-0906RESERVED_PROPERTY_NAME400A declared property uses the name of a built-in record field (id, createdAt, updatedAt, status). Only status may be re-declared, and only as {name: "status", path: "/status"} to control its projections.
message string

A human-readable description of the error, intended for logs and diagnostics. Not stable across releases - do not parse or branch on it.

path string — OPTIONAL

Location of the input that caused the error. Present only for codes that can identify one. The form depends on the code: a JSON Pointer into the request payload (DS-0008, DS-0602, DS-0650), a query parameter name (filter for DS-0005, sort for DS-0006), a field name (DS-0004), or a class property name (DS-0903).

415

Unsupported Media Type.

CodeConstantCause
DS-0007UNSUPPORTED_CONTENT_TYPEThe request Content-Type is not supported by this operation.
Schema — OPTIONAL
errors object[] — OPTIONAL
errorCode string

A machine-readable error code. Stable across releases - use this, not message, for programmatic branching. The HTTP status for a given code is fixed.

Codes are grouped by range. Not every code can occur on every operation; each response documents the subset it can return.

Generic

CodeConstantStatusMeaning
DS-0000INTERNAL_SERVER_ERROR500Unhandled server error, or a server-side routing configuration problem.
DS-0002BAD_REQUEST400Required header or query parameter missing, or request input otherwise unusable.
DS-0003INVALID_JSON400Request body absent, empty, or not valid JSON.
DS-0004VALIDATION_ERROR400Body, path variable or query parameter failed validation. One error item per violation.
DS-0005INVALID_FILTER400filter_fast / filter could not be parsed or validated.
DS-0006INVALID_ARGUMENT400An argument could not be used - a sort field that is not sortable in that request, undecodable cursor, malformed JSON Pointer, parameter type mismatch.
DS-0007UNSUPPORTED_CONTENT_TYPE415Request Content-Type not supported.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUE400A declared class property's value does not match its valueKind.
DS-0009SERVICE_UNAVAILABLE503A required dependency is unavailable, or the request could not be forwarded to its region.
DS-0010NOT_ACCEPTABLE406Reserved - not currently emitted. 406 responses carry a text/plain body with no error code.
DS-0011METHOD_NOT_ALLOWED405HTTP method not supported for this path.

Resource (01xx)

CodeConstantStatusMeaning
DS-0100NOT_FOUND404The addressed resource does not exist.

Authorization (02xx)

CodeConstantStatusMeaning
DS-0200DATASYNC_NOT_ENABLED403Datasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIED403Access Manager not enabled, conflicting credentials supplied, or authorization check denied.
DS-0202INVALID_TOKEN403The auth PAM token could not be decoded, or its projection does not permit the requested fields.
DS-0203UNAUTHENTICATED401No credentials supplied.

State (03xx)

CodeConstantStatusMeaning
DS-0300ETAG_MISMATCH412If-Match does not contain the resource's current ETag.
DS-0301CONFLICT409A resource with the same identity already exists.

Size limits (04xx)

CodeConstantStatusMeaning
DS-0400CONTENT_TOO_LARGE413Reserved - not currently emitted.

Custom fields (05xx)

CodeConstantStatusMeaning
DS-0500CUSTOM_NOT_SCALAR400Reserved - not currently emitted.

Configuration (06xx)

CodeConstantStatusMeaning
DS-0600CONFIG_NOT_FOUND404Subscribe key unknown to the configuration service, or its datasync region is not configured.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPE400A declared property's path resolves to a non-scalar node (object or array).
DS-0650NON_NULLABLE_PROPERTY400A property declared nullable: false is missing or explicitly null.

Patch (07xx)

CodeConstantStatusMeaning
DS-0700IMMUTABLE_FIELD_MODIFICATION400A patch targets a pointer outside the mutable set. Patch only.

Relationships (08xx)

CodeConstantStatusMeaning
DS-0800WRONG_ENTITY_CLASS_TYPE400An endpoint entity's class does not satisfy the relationship class for that side. Create only.
DS-0801CARDINALITY_VIOLATED409ONE-TO-ONE or ONE-TO-MANY cardinality already satisfied. Create only.

Class management (09xx)

CodeConstantStatusMeaning
DS-0900GLOBAL_CLASS_MODIFICATION403Global class definitions are read-only. Replace and delete only.
DS-0901PROJECTION_LIMIT_EXCEEDED400Distinct projections across all properties exceed the per-class maximum.
DS-0902INVALID_PROJECTION_NAME400Projection name too long or malformed, or a property declares an empty projection list.
DS-0903INCOMPATIBLE_CHILD_PROPERTY400A redeclared inherited property differs from the parent in path, valueKind, or nullable. Entity classes only.
DS-0904MISSING_PARENT_PROPERTY400Reserved - not currently emitted. Missing parent properties are inherited automatically.
DS-0905CLASS_HAS_CHILDREN409The class still has subclasses and cannot be deleted. Entity classes only.
DS-0906RESERVED_PROPERTY_NAME400A declared property uses the name of a built-in record field (id, createdAt, updatedAt, status). Only status may be re-declared, and only as {name: "status", path: "/status"} to control its projections.
message string

A human-readable description of the error, intended for logs and diagnostics. Not stable across releases - do not parse or branch on it.

path string — OPTIONAL

Location of the input that caused the error. Present only for codes that can identify one. The form depends on the code: a JSON Pointer into the request payload (DS-0008, DS-0602, DS-0650), a query parameter name (filter for DS-0005, sort for DS-0006), a field name (DS-0004), or a class property name (DS-0903).

429

Too Many Requests - rate limit exceeded.

Rate limiting is applied by the edge in front of this service; the service itself defines no error code for this status. Clients should not rely on an error code being present.

Schema — OPTIONAL
errors object[] — OPTIONAL
errorCode string

A machine-readable error code. Stable across releases - use this, not message, for programmatic branching. The HTTP status for a given code is fixed.

Codes are grouped by range. Not every code can occur on every operation; each response documents the subset it can return.

Generic

CodeConstantStatusMeaning
DS-0000INTERNAL_SERVER_ERROR500Unhandled server error, or a server-side routing configuration problem.
DS-0002BAD_REQUEST400Required header or query parameter missing, or request input otherwise unusable.
DS-0003INVALID_JSON400Request body absent, empty, or not valid JSON.
DS-0004VALIDATION_ERROR400Body, path variable or query parameter failed validation. One error item per violation.
DS-0005INVALID_FILTER400filter_fast / filter could not be parsed or validated.
DS-0006INVALID_ARGUMENT400An argument could not be used - a sort field that is not sortable in that request, undecodable cursor, malformed JSON Pointer, parameter type mismatch.
DS-0007UNSUPPORTED_CONTENT_TYPE415Request Content-Type not supported.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUE400A declared class property's value does not match its valueKind.
DS-0009SERVICE_UNAVAILABLE503A required dependency is unavailable, or the request could not be forwarded to its region.
DS-0010NOT_ACCEPTABLE406Reserved - not currently emitted. 406 responses carry a text/plain body with no error code.
DS-0011METHOD_NOT_ALLOWED405HTTP method not supported for this path.

Resource (01xx)

CodeConstantStatusMeaning
DS-0100NOT_FOUND404The addressed resource does not exist.

Authorization (02xx)

CodeConstantStatusMeaning
DS-0200DATASYNC_NOT_ENABLED403Datasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIED403Access Manager not enabled, conflicting credentials supplied, or authorization check denied.
DS-0202INVALID_TOKEN403The auth PAM token could not be decoded, or its projection does not permit the requested fields.
DS-0203UNAUTHENTICATED401No credentials supplied.

State (03xx)

CodeConstantStatusMeaning
DS-0300ETAG_MISMATCH412If-Match does not contain the resource's current ETag.
DS-0301CONFLICT409A resource with the same identity already exists.

Size limits (04xx)

CodeConstantStatusMeaning
DS-0400CONTENT_TOO_LARGE413Reserved - not currently emitted.

Custom fields (05xx)

CodeConstantStatusMeaning
DS-0500CUSTOM_NOT_SCALAR400Reserved - not currently emitted.

Configuration (06xx)

CodeConstantStatusMeaning
DS-0600CONFIG_NOT_FOUND404Subscribe key unknown to the configuration service, or its datasync region is not configured.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPE400A declared property's path resolves to a non-scalar node (object or array).
DS-0650NON_NULLABLE_PROPERTY400A property declared nullable: false is missing or explicitly null.

Patch (07xx)

CodeConstantStatusMeaning
DS-0700IMMUTABLE_FIELD_MODIFICATION400A patch targets a pointer outside the mutable set. Patch only.

Relationships (08xx)

CodeConstantStatusMeaning
DS-0800WRONG_ENTITY_CLASS_TYPE400An endpoint entity's class does not satisfy the relationship class for that side. Create only.
DS-0801CARDINALITY_VIOLATED409ONE-TO-ONE or ONE-TO-MANY cardinality already satisfied. Create only.

Class management (09xx)

CodeConstantStatusMeaning
DS-0900GLOBAL_CLASS_MODIFICATION403Global class definitions are read-only. Replace and delete only.
DS-0901PROJECTION_LIMIT_EXCEEDED400Distinct projections across all properties exceed the per-class maximum.
DS-0902INVALID_PROJECTION_NAME400Projection name too long or malformed, or a property declares an empty projection list.
DS-0903INCOMPATIBLE_CHILD_PROPERTY400A redeclared inherited property differs from the parent in path, valueKind, or nullable. Entity classes only.
DS-0904MISSING_PARENT_PROPERTY400Reserved - not currently emitted. Missing parent properties are inherited automatically.
DS-0905CLASS_HAS_CHILDREN409The class still has subclasses and cannot be deleted. Entity classes only.
DS-0906RESERVED_PROPERTY_NAME400A declared property uses the name of a built-in record field (id, createdAt, updatedAt, status). Only status may be re-declared, and only as {name: "status", path: "/status"} to control its projections.
message string

A human-readable description of the error, intended for logs and diagnostics. Not stable across releases - do not parse or branch on it.

path string — OPTIONAL

Location of the input that caused the error. Present only for codes that can identify one. The form depends on the code: a JSON Pointer into the request payload (DS-0008, DS-0602, DS-0650), a query parameter name (filter for DS-0005, sort for DS-0006), a field name (DS-0004), or a class property name (DS-0903).

500

Internal server error.

CodeConstantCause
DS-0000INTERNAL_SERVER_ERRORAn unhandled error occurred, or the request could not be routed because of a server-side configuration problem.
Schema — OPTIONAL
errors object[] — OPTIONAL
errorCode string

A machine-readable error code. Stable across releases - use this, not message, for programmatic branching. The HTTP status for a given code is fixed.

Codes are grouped by range. Not every code can occur on every operation; each response documents the subset it can return.

Generic

CodeConstantStatusMeaning
DS-0000INTERNAL_SERVER_ERROR500Unhandled server error, or a server-side routing configuration problem.
DS-0002BAD_REQUEST400Required header or query parameter missing, or request input otherwise unusable.
DS-0003INVALID_JSON400Request body absent, empty, or not valid JSON.
DS-0004VALIDATION_ERROR400Body, path variable or query parameter failed validation. One error item per violation.
DS-0005INVALID_FILTER400filter_fast / filter could not be parsed or validated.
DS-0006INVALID_ARGUMENT400An argument could not be used - a sort field that is not sortable in that request, undecodable cursor, malformed JSON Pointer, parameter type mismatch.
DS-0007UNSUPPORTED_CONTENT_TYPE415Request Content-Type not supported.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUE400A declared class property's value does not match its valueKind.
DS-0009SERVICE_UNAVAILABLE503A required dependency is unavailable, or the request could not be forwarded to its region.
DS-0010NOT_ACCEPTABLE406Reserved - not currently emitted. 406 responses carry a text/plain body with no error code.
DS-0011METHOD_NOT_ALLOWED405HTTP method not supported for this path.

Resource (01xx)

CodeConstantStatusMeaning
DS-0100NOT_FOUND404The addressed resource does not exist.

Authorization (02xx)

CodeConstantStatusMeaning
DS-0200DATASYNC_NOT_ENABLED403Datasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIED403Access Manager not enabled, conflicting credentials supplied, or authorization check denied.
DS-0202INVALID_TOKEN403The auth PAM token could not be decoded, or its projection does not permit the requested fields.
DS-0203UNAUTHENTICATED401No credentials supplied.

State (03xx)

CodeConstantStatusMeaning
DS-0300ETAG_MISMATCH412If-Match does not contain the resource's current ETag.
DS-0301CONFLICT409A resource with the same identity already exists.

Size limits (04xx)

CodeConstantStatusMeaning
DS-0400CONTENT_TOO_LARGE413Reserved - not currently emitted.

Custom fields (05xx)

CodeConstantStatusMeaning
DS-0500CUSTOM_NOT_SCALAR400Reserved - not currently emitted.

Configuration (06xx)

CodeConstantStatusMeaning
DS-0600CONFIG_NOT_FOUND404Subscribe key unknown to the configuration service, or its datasync region is not configured.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPE400A declared property's path resolves to a non-scalar node (object or array).
DS-0650NON_NULLABLE_PROPERTY400A property declared nullable: false is missing or explicitly null.

Patch (07xx)

CodeConstantStatusMeaning
DS-0700IMMUTABLE_FIELD_MODIFICATION400A patch targets a pointer outside the mutable set. Patch only.

Relationships (08xx)

CodeConstantStatusMeaning
DS-0800WRONG_ENTITY_CLASS_TYPE400An endpoint entity's class does not satisfy the relationship class for that side. Create only.
DS-0801CARDINALITY_VIOLATED409ONE-TO-ONE or ONE-TO-MANY cardinality already satisfied. Create only.

Class management (09xx)

CodeConstantStatusMeaning
DS-0900GLOBAL_CLASS_MODIFICATION403Global class definitions are read-only. Replace and delete only.
DS-0901PROJECTION_LIMIT_EXCEEDED400Distinct projections across all properties exceed the per-class maximum.
DS-0902INVALID_PROJECTION_NAME400Projection name too long or malformed, or a property declares an empty projection list.
DS-0903INCOMPATIBLE_CHILD_PROPERTY400A redeclared inherited property differs from the parent in path, valueKind, or nullable. Entity classes only.
DS-0904MISSING_PARENT_PROPERTY400Reserved - not currently emitted. Missing parent properties are inherited automatically.
DS-0905CLASS_HAS_CHILDREN409The class still has subclasses and cannot be deleted. Entity classes only.
DS-0906RESERVED_PROPERTY_NAME400A declared property uses the name of a built-in record field (id, createdAt, updatedAt, status). Only status may be re-declared, and only as {name: "status", path: "/status"} to control its projections.
message string

A human-readable description of the error, intended for logs and diagnostics. Not stable across releases - do not parse or branch on it.

path string — OPTIONAL

Location of the input that caused the error. Present only for codes that can identify one. The form depends on the code: a JSON Pointer into the request payload (DS-0008, DS-0602, DS-0650), a query parameter name (filter for DS-0005, sort for DS-0006), a field name (DS-0004), or a class property name (DS-0903).

503

Service Unavailable.

CodeConstantCause
DS-0009SERVICE_UNAVAILABLEA dependency required to serve the request is unavailable, or the request could not be forwarded to its target region. A Retry-After header may be present.
Schema — OPTIONAL
errors object[] — OPTIONAL
errorCode string

A machine-readable error code. Stable across releases - use this, not message, for programmatic branching. The HTTP status for a given code is fixed.

Codes are grouped by range. Not every code can occur on every operation; each response documents the subset it can return.

Generic

CodeConstantStatusMeaning
DS-0000INTERNAL_SERVER_ERROR500Unhandled server error, or a server-side routing configuration problem.
DS-0002BAD_REQUEST400Required header or query parameter missing, or request input otherwise unusable.
DS-0003INVALID_JSON400Request body absent, empty, or not valid JSON.
DS-0004VALIDATION_ERROR400Body, path variable or query parameter failed validation. One error item per violation.
DS-0005INVALID_FILTER400filter_fast / filter could not be parsed or validated.
DS-0006INVALID_ARGUMENT400An argument could not be used - a sort field that is not sortable in that request, undecodable cursor, malformed JSON Pointer, parameter type mismatch.
DS-0007UNSUPPORTED_CONTENT_TYPE415Request Content-Type not supported.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUE400A declared class property's value does not match its valueKind.
DS-0009SERVICE_UNAVAILABLE503A required dependency is unavailable, or the request could not be forwarded to its region.
DS-0010NOT_ACCEPTABLE406Reserved - not currently emitted. 406 responses carry a text/plain body with no error code.
DS-0011METHOD_NOT_ALLOWED405HTTP method not supported for this path.

Resource (01xx)

CodeConstantStatusMeaning
DS-0100NOT_FOUND404The addressed resource does not exist.

Authorization (02xx)

CodeConstantStatusMeaning
DS-0200DATASYNC_NOT_ENABLED403Datasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIED403Access Manager not enabled, conflicting credentials supplied, or authorization check denied.
DS-0202INVALID_TOKEN403The auth PAM token could not be decoded, or its projection does not permit the requested fields.
DS-0203UNAUTHENTICATED401No credentials supplied.

State (03xx)

CodeConstantStatusMeaning
DS-0300ETAG_MISMATCH412If-Match does not contain the resource's current ETag.
DS-0301CONFLICT409A resource with the same identity already exists.

Size limits (04xx)

CodeConstantStatusMeaning
DS-0400CONTENT_TOO_LARGE413Reserved - not currently emitted.

Custom fields (05xx)

CodeConstantStatusMeaning
DS-0500CUSTOM_NOT_SCALAR400Reserved - not currently emitted.

Configuration (06xx)

CodeConstantStatusMeaning
DS-0600CONFIG_NOT_FOUND404Subscribe key unknown to the configuration service, or its datasync region is not configured.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPE400A declared property's path resolves to a non-scalar node (object or array).
DS-0650NON_NULLABLE_PROPERTY400A property declared nullable: false is missing or explicitly null.

Patch (07xx)

CodeConstantStatusMeaning
DS-0700IMMUTABLE_FIELD_MODIFICATION400A patch targets a pointer outside the mutable set. Patch only.

Relationships (08xx)

CodeConstantStatusMeaning
DS-0800WRONG_ENTITY_CLASS_TYPE400An endpoint entity's class does not satisfy the relationship class for that side. Create only.
DS-0801CARDINALITY_VIOLATED409ONE-TO-ONE or ONE-TO-MANY cardinality already satisfied. Create only.

Class management (09xx)

CodeConstantStatusMeaning
DS-0900GLOBAL_CLASS_MODIFICATION403Global class definitions are read-only. Replace and delete only.
DS-0901PROJECTION_LIMIT_EXCEEDED400Distinct projections across all properties exceed the per-class maximum.
DS-0902INVALID_PROJECTION_NAME400Projection name too long or malformed, or a property declares an empty projection list.
DS-0903INCOMPATIBLE_CHILD_PROPERTY400A redeclared inherited property differs from the parent in path, valueKind, or nullable. Entity classes only.
DS-0904MISSING_PARENT_PROPERTY400Reserved - not currently emitted. Missing parent properties are inherited automatically.
DS-0905CLASS_HAS_CHILDREN409The class still has subclasses and cannot be deleted. Entity classes only.
DS-0906RESERVED_PROPERTY_NAME400A declared property uses the name of a built-in record field (id, createdAt, updatedAt, status). Only status may be re-declared, and only as {name: "status", path: "/status"} to control its projections.
message string

A human-readable description of the error, intended for logs and diagnostics. Not stable across releases - do not parse or branch on it.

path string — OPTIONAL

Location of the input that caused the error. Present only for codes that can identify one. The form depends on the code: a JSON Pointer into the request payload (DS-0008, DS-0602, DS-0650), a query parameter name (filter for DS-0005, sort for DS-0006), a field name (DS-0004), or a class property name (DS-0903).

If-Match
Type: string
ETag value for optimistic concurrency control. If provided, the update will only succeed if the current resource ETag matches this value.
* required
subKey*
Type: string
Subscribe key identifying the keyset.
channelId*
Type: string
ID of the channel.
auth
Type: string
Required unless you supply signature instead. An Access Manager token authorizing the operation. Use this for client-side callers.

Supply either auth or signature, never both. Supplying neither returns 401 (DS-0203). Supplying both returns 403 (DS-0201).

If the token cannot be decoded, or its projection does not permit the requested fields, the request fails with 403 (DS-0202, INVALID_TOKEN).
signature
Type: string
Required unless you supply auth instead. A signature proving the request was signed with the secret key for this keyset. Use this for server-side callers.

Supply either signature or auth, never both. Supplying neither returns 401 (DS-0203). Supplying both returns 403 (DS-0201).

Refer to Signature generation for how to compute it.
Bad request. For JSON Patch operations, which additionally reject patches that target
immutable pointers.
CodeConstantCause
DS-0002BAD_REQUESTRequired header or query parameter missing.
DS-0003INVALID_JSONPatch document absent, empty, or not valid JSON.
DS-0004VALIDATION_ERRORPatch document, path variable or query parameter failed validation.
DS-0006INVALID_ARGUMENTA patch path or from is not a valid JSON Pointer, does not resolve to a container, or uses a non-numeric array index.
DS-0008UNEXPECTED_FILTERABLE_FIELD_VALUEThe patched document's property value does not match its valueKind.
DS-0602UNSUPPORTED_ENTITY_PROPERTY_TYPEA declared property's path resolves to a non-scalar node after patching.
DS-0650NON_NULLABLE_PROPERTYThe patch leaves a property declared nullable: false missing or null.
DS-0700IMMUTABLE_FIELD_MODIFICATIONThe patch targets a pointer outside the mutable set. Patch only - full replace does not raise this.
errors
Type: array
Array items:
items
Type: object
Error object
Example Response
{
  "errors": [
    {
      "errorCode": "DS-0700",
      "message": "Cannot modify immutable field: /id. Only [/payload, /status] can be modified"
    }
  ]
}
Unauthorized - no usable credentials were supplied.
CodeConstantCause
DS-0203UNAUTHENTICATEDNeither a PAM token (auth) nor a request signature was supplied, or the portal session token is missing.
errors
Type: array
Array items:
items
Type: object
Error object
Example Response
{
  "errors": [
    {
      "errorCode": "DS-0203",
      "message": "Authentication required: provide either a PAM token via 'auth' parameter or a request signature."
    }
  ]
}
Forbidden - credentials were recognised but the request is not permitted.
CodeConstantCause
DS-0200DATASYNC_NOT_ENABLEDDatasync is not enabled for this subscribe key.
DS-0201ACCESS_DENIEDAccess Manager is not enabled for the keyset, auth and signature were both supplied, or the portal authorization check denied the request.
DS-0202INVALID_TOKENThe auth PAM token could not be decoded, or its projection does not permit the requested fields.
errors
Type: array
Array items:
items
Type: object
Error object
Example Response
{
  "errors": [
    {
      "errorCode": "DS-0200",
      "message": "Datasync not enabled for this subscribe key"
    }
  ]
}
Not found.
CodeConstantCause
DS-0100NOT_FOUNDThe addressed resource does not exist. Also returned when a conditional request supplies no If-Match and the resource is absent.
DS-0600CONFIG_NOT_FOUNDThe subscribe key is unknown to the configuration service, or its datasync region is not configured.
errors
Type: array
Array items:
items
Type: object
Error object
Example Response
{
  "errors": [
    {
      "errorCode": "DS-0100",
      "message": "Entity not found: user-42"
    }
  ]
}
Not Acceptable - the Accept header does not contain a supported value.

This response carries a text/plain body and no error code.
Precondition Failed.
CodeConstantCause
DS-0300ETAG_MISMATCHThe If-Match header does not contain the resource's current ETag.
errors
Type: array
Array items:
items
Type: object
Error object
Example Response
{
  "errors": [
    {
      "errorCode": "DS-0300",
      "message": "ETag mismatch: provided ETag '3' does not match current version"
    }
  ]
}
Unsupported Media Type.
CodeConstantCause
DS-0007UNSUPPORTED_CONTENT_TYPEThe request Content-Type is not supported by this operation.
errors
Type: array
Array items:
items
Type: object
Error object
Example Response
{
  "errors": [
    {
      "errorCode": "DS-0007",
      "message": "Content type text/plain is not supported"
    }
  ]
}
Too Many Requests - rate limit exceeded.

Rate limiting is applied by the edge in front of this service; the service itself defines no
error code for this status. Clients should not rely on an error code being present.
errors
Type: array
Array items:
items
Type: object
Error object
Internal server error.
CodeConstantCause
DS-0000INTERNAL_SERVER_ERRORAn unhandled error occurred, or the request could not be routed because of a server-side configuration problem.
errors
Type: array
Array items:
items
Type: object
Error object
Example Response
{
  "errors": [
    {
      "errorCode": "DS-0000",
      "message": "Internal server error"
    }
  ]
}
Service Unavailable.
CodeConstantCause
DS-0009SERVICE_UNAVAILABLEA dependency required to serve the request is unavailable, or the request could not be forwarded to its target region. A Retry-After header may be present.
errors
Type: array
Array items:
items
Type: object
Error object
Example Response
{
  "errors": [
    {
      "errorCode": "DS-0009",
      "message": "Service temporarily unavailable"
    }
  ]
}