Permissões de variável Master Data

Boa tarde!

Estou passando por alguns problemas ao tentar atribuir dados à uma variável de Master Data.
Quando executo o código, me retorna um erro de permissão, mesmo eu tendo marcado as checkbox de permissão “readable” nas propriedades da variável.

O código que fiz é esse

const getTotalItems = () => {
	vtexjs.checkout.getOrderForm().then((res) => {
		const result = res;
		console.log(result);
		let sum = 0;
		result.items.forEach((item) => {
			sum += item.quantity;
		});
		console.log(sum);

		var totalCartItemsJSON = { totalCartItems: sum };
		$.ajax({
			headers: {
				Accept: "application/vnd.vtex.ds.v10+json",
				"Content-Type": "application/json",
			},
			url: "/bleymed/dataentities/CL/documents/",
			data: JSON.stringify(totalCartItemsJSON),
			type: "PATCH",
			success: function (data, textStatus, xhr) {
				console.log(
					"postInfoInVtex() - Dados de Newsletter enviados com sucesso!!!\n"
				);

				//Tem dados para ser alterado nos Dados de Contato
				if (xhr.status == "200" || xhr.status == "201") {
					// console.log(data)
				}

				//Nenhum dado de contato foi alterado
				if (xhr.status == "304") {
					console.log(
						"postInfoInVtex() - Nenhum dado foi alterado!!!"
					);
				}
			},
			error: function (data, textStatus, xhr) {
				console.log(
					"postInfoInVtex() - Ocorreu um erro no envio dos Dados de Newsletter: ",
					data,
					data.responseText
				);
			},
		});
	});
};


getTotalItems()

Alguém pode me ajudar com isso?

Opa @HiranOliveira beleza? Eu acho que aqui esse CURL está errado. Com base no documento, você precisa ter a “api/” antes de “/dataentities” → /api/dataentities/{dataEntityName}/documents/{id} sendo dessa forma. Veja este documento

Uma dúvida: você precisa salvar as informações para cada cliente ou todos de uma vez? Verifique se a sintaxe realmente está correta para essa lógica.

Dependendo do que você for atualizar, talvez seja necessário usar o método PUT e não o PATCH. Veja esse doc para confirmar se é isso mesmo para você.

Sigo a disposição.

Abs,
Estevão.

1 Like

Faltou indicar qual o email ou id do documento que deseja atualizar.
E quando informá-lo, não vai conseguir deixa-lo publico, então terá que usar uma middleware para poder passar o appkey/token.

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.