Create document with custom ID or update entire document
Creates a new document with a custom ID, or updates an entire document if there is already a document with the informed ID. For example, you can update a customer profile or address.
ℹ️ You can use this request to create or update documents in any given data entity. Because of this, you are not restricted to using the fields exemplified below in your requests. But you should be aware of the fields allowed or required for each document you wish to update.
A## Permissions
Any user or API key must have at least one of the appropriate License Manager resources to be able to successfully run this request. Otherwise they will receive a status code 403 error. These are the applicable resources for this endpoint:
| Product | Category | Resource |
|---|---|---|
| Dynamic Storage | Dynamic storage generic resources | Insert or update document (not remove) |
| Dynamic Storage | Dynamic storage generic resources | Full access to all documents |
| Dynamic Storage | Dynamic storage generic resources | Master Data administrator |
There are no applicable predefined roles for this resource list. You must create a custom role and add at least one of the resources above in order to use this endpoint.To learn more about machine authentication at VTEX, see Authentication overview.
❗ To prevent integrations from having excessive permissions, consider the best practices for managing API keys when assigning License Manager roles to integrations.
Path parameters
Name of the data entity.
ID of the document. If you inform an unused ID, this endpoint will create a new document with the informed custom ID, differently from the Create new document endpoint, which automatically generates the ID. If you inform an existing ID, this endpoint will update the entire document associated with the informed ID.
Query parameters
Defines a condition the document must comply with. When referring to fields, you can use a nested field up to the first level (e.g. wishlistProduct.productName).
Name of the schema that the document complies with. This field is required when using _where or _fields query parameters.
Headers
HTTP Client Negotiation Accept Header. Indicates the types of responses the client can understand.
Request body
This can be any pure JSON document. Add new Key-Value pairs to test.
Response
No Content