Create or update up to 500 entries of one metaobject type, by handle (dry run available).
POST
/custom-data/metaobjects/{type}/entries/bulk
const url = 'https://your-store.myciqra.com/custom-data/metaobjects/example/entries/bulk';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"dryRun":false,"entries":[{"externalKey":"example","fields":"example","handle":"example","publish":"example","publishedAt":"2026-04-15T12:00:00Z","seoDescription":"example","seoTitle":"example"}],"mode":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://your-store.myciqra.com/custom-data/metaobjects/example/entries/bulk \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "dryRun": false, "entries": [ { "externalKey": "example", "fields": "example", "handle": "example", "publish": "example", "publishedAt": "2026-04-15T12:00:00Z", "seoDescription": "example", "seoTitle": "example" } ], "mode": "example" }'Required scope: write_metaobjects — an installation token without it receives 403.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”type
required
string
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
dryRun
boolean
entries
required
Array<object> | null
object
externalKey
null | string
fields
null | object
handle
required
null | string
publish
null | string
publishedAt
null | string format: date-time
seoDescription
null | string
seoTitle
null | string
mode
null | string
Responses
Section titled “Responses”OK
Media typeapplication/json
object
created
required
integer | string format: int32
dryRun
required
boolean
failed
required
integer | string format: int32
imagesImported
required
integer | string format: int32
requested
required
integer | string format: int32
results
required
Array<object>
object
error
required
null | string
errorCode
required
null | string
handle
required
string
id
required
null | string format: uuid
imagesImported
required
integer | string format: int32
index
required
integer | string format: int32
status
required
string
unchanged
required
integer | string format: int32
updated
required
integer | string format: int32
Examplegenerated
{ "created": 1, "dryRun": true, "failed": 1, "imagesImported": 1, "requested": 1, "results": [ { "error": "example", "errorCode": "example", "handle": "example", "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "imagesImported": 1, "index": 1, "status": "example" } ], "unchanged": 1, "updated": 1}Bad Request
Media typeapplication/json
object
code
required
string
error
required
string
Examplegenerated
{ "code": "example", "error": "example"}Not Found