Boa tarde!
Estou testando a gravação de dados no Masterdata, utilizando uma tabela que já existe e funciona na loja em produção. Meu objetivo é desenvolver um middleware que grava dados trazidos do Sintegra. Através do Insomnia, eu consigo fazer o post e gravar, contudo pelo middleware, não consigo. Ele retorna a mensagem de erro acima.
import { ExternalClient, IOContext, InstanceOptions } from "@vtex/api";
export default class vtexCustomClient extends ExternalClient {
constructor(context: IOContext, options?: InstanceOptions) {
super('https://fujiokadistribuidor.vtexcommercestable.com.br', context, {
...options,
headers: {
"X-VTEX-API-AppKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"X-VTEX-API-AppToken": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"Content-Type": "application/json",
"Accept": "application/vnd.vtex.ds.v10+json"
}
});
}
public async createNewCustomer() {
return await this.http.post(`/api/dataentities/CL/documents`);
}
}
export async function createNewUser(ctx: Context, next: () => Promise<void>) {
ctx.set("Cache-Control", "no-cache");
await ctx.clients.masterdata.createDocument({
dataEntity: "CL",
fields: {
"businessPhone": "xxxxxxxxxxx",
"corporateDocument": "",
"email": "antonio.junior@gmail.com",
"fieldOfStore": "",
"email_boleto": "antonio.junior@gmail.com",
"licitacao": false,
"lastName": "Jr",
"isCorporate": true,
"firstName": "Antonio",
"emailPrimary": "antonio.junior@gmail.com",
"email_nf": "antonio.junior@gmail.com",
"phone": "",
"homePhone": "",
"purchaseIntention": "",
"isNewsletterOptIn": false
}
})
ctx.body = {
mensagem: "Deu tudo certo! :)"
}
ctx.status = 200;
console.log(ctx.response);
await next();
}