---
title: "Envia lote idempotente para sandbox"
method: POST
path: "/partners/catalog/products:batchUpsert"
tags: ["Partner API"]
---

# Envia lote idempotente para sandbox

`POST /partners/catalog/products:batchUpsert`

## Request

- Base URL: `https://obraaberta.com.br/api/v1`
- URL: `https://obraaberta.com.br/api/v1/partners/catalog/products:batchUpsert`
- Auth: OAuth 2 (client credentials, token URL `https://obraaberta.com.br/api/v1/partners/oauth/token`, scopes: `catalog:write`)

## Headers

- `Idempotency-Key` string, required

## Request body

- object
  - `idempotency_key` string
  - `source_version` string
  - `terms_version` string
  - `items` object[], required

## Response `200`

Lote aceito com resultado por linha

## Other responses

- `401`: Token inválido
- `403`: Escopo insuficiente
- `409`: Integração sandbox não configurada

---

[API](https://skmtc.dev/obraaberta/apis/obraaberta-api.md) · [All operations](https://skmtc.dev/obraaberta/apis/obraaberta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/obraaberta/apis/obraaberta-api/revisions/cfaed100c33c?raw)
