Skip to main content
PUT
Update Object

Authorizations

Authorization
string
header
required

Mixpeek API key, sent as Authorization: Bearer mxp_sk_.... Create one in Studio under Settings → API Keys, or with an admin key via POST /v1/organizations/users/{user_email}/api-keys. A missing, malformed, unknown, revoked, inactive or expired key returns 401; a key without the permission, scope or plan an operation needs returns 403.

X-Namespace
string
header
required

Namespace id (ns_...), not the namespace name. This scopes the request rather than authenticating it, and it is required on every operation marked x-mixpeek-namespace-scoped.

Path Parameters

bucket_identifier
string
required

The unique identifier of the bucket.

object_identifier
string
required

The unique identifier of the object.

Body

application/json

Keys this body does not declare are ignored, and the response's warnings name them, until 2026-11-02; from 2026-11-02 they are refused with 422 extra_forbidden naming the accepted keys.

Request model for updating an existing bucket object.

key_prefix
string | null

Updated storage key/path prefix of the object, this will be used to retrieve the object from the storage. It's at the root of the object.

metadata
Metadata · object | null

Custom fields to change. A key the object holds inside its own metadata object (because it was created with one) is updated there; any other key is set at the root of the object, the same place PATCH writes it. Fields you leave out keep their values.

skip_duplicates
boolean | null

Skip duplicate blobs, if a blob with the same hash already exists, it will be skipped.

Response

Successful Response

Response model for bucket objects.

bucket_id
string
required

ID of the bucket this object belongs to

object_id
string

Unique identifier for the object

key_prefix
string | null

Storage key/path of the object, this will be used to retrieve the object from the storage. It is similar to a file path. If not provided, it will be placed in the root of the bucket.

blobs
BlobModel · object[]

List of blobs contained in this object

source_details
SourceDetails · object[]

Lineage/source details for this object; used for downstream references.

edges
EdgeModel · object[]

Typed, directed relationships from this object to other objects (customer-owned, root-level — never _internal). Flows to the document + MVS payload for the traverse_edge retriever stage.

status
enum<string>
default:PENDING

Processing status of the object. A new object is PENDING, which means it has not been processed yet: either no batch including it has been submitted, or it is in a submitted batch that has not finished. The status of the object's batch tells these apart. When a batch run finishes with the object it becomes COMPLETED or FAILED.

Available options:
PENDING,
QUEUED,
IN_PROGRESS,
PROCESSING,
COMPLETED,
COMPLETED_WITH_ERRORS,
FAILED,
CANCELED,
INTERRUPTED,
UNKNOWN,
SKIPPED,
DRAFT,
ACTIVE,
ARCHIVED,
SUSPENDED,
DEACTIVATED
error
string | null

The error message if the object failed to process.

Example:

"Failed to process object: Object not found"

created_at
string<date-time> | null

Timestamp when the object was created. Automatically populated by the system.

updated_at
string<date-time> | null

Timestamp when the object was last updated. Automatically populated by the system.

document_count
integer | null

Number of documents your collections have produced from this object. The object's own record in its bucket is not counted, so the value stays 0 until a collection has processed the object. Populated on GET requests. Null on list responses (expensive query) and when the count cannot be read in time. Use this to check if an object has already been processed.

consistency
WriteConsistency · object | null

When and how this object becomes a searchable document. Set on write (create) responses: managed ingestion is visible only after a collection batch processes the object — poll until document_count > 0.