Actualizar Stock del Producto
curl --request PUT \
--url https://api.zenflow.com.ar/api/v1/stock/product/{productId} \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"location_id": "<string>",
"quantity": 123,
"reason": "<string>"
}
'import requests
url = "https://api.zenflow.com.ar/api/v1/stock/product/{productId}"
payload = {
"location_id": "<string>",
"quantity": 123,
"reason": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({location_id: '<string>', quantity: 123, reason: '<string>'})
};
fetch('https://api.zenflow.com.ar/api/v1/stock/product/{productId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.zenflow.com.ar/api/v1/stock/product/{productId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'location_id' => '<string>',
'quantity' => 123,
'reason' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.zenflow.com.ar/api/v1/stock/product/{productId}"
payload := strings.NewReader("{\n \"location_id\": \"<string>\",\n \"quantity\": 123,\n \"reason\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.zenflow.com.ar/api/v1/stock/product/{productId}")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"location_id\": \"<string>\",\n \"quantity\": 123,\n \"reason\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zenflow.com.ar/api/v1/stock/product/{productId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"location_id\": \"<string>\",\n \"quantity\": 123,\n \"reason\": \"<string>\"\n}"
response = http.request(request)
puts response.read_bodyStock
Actualizar Stock del Producto
Establecer el nivel de stock de un producto en una ubicación
PUT
/
api
/
v1
/
stock
/
product
/
{productId}
Actualizar Stock del Producto
curl --request PUT \
--url https://api.zenflow.com.ar/api/v1/stock/product/{productId} \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"location_id": "<string>",
"quantity": 123,
"reason": "<string>"
}
'import requests
url = "https://api.zenflow.com.ar/api/v1/stock/product/{productId}"
payload = {
"location_id": "<string>",
"quantity": 123,
"reason": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({location_id: '<string>', quantity: 123, reason: '<string>'})
};
fetch('https://api.zenflow.com.ar/api/v1/stock/product/{productId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.zenflow.com.ar/api/v1/stock/product/{productId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'location_id' => '<string>',
'quantity' => 123,
'reason' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.zenflow.com.ar/api/v1/stock/product/{productId}"
payload := strings.NewReader("{\n \"location_id\": \"<string>\",\n \"quantity\": 123,\n \"reason\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.zenflow.com.ar/api/v1/stock/product/{productId}")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"location_id\": \"<string>\",\n \"quantity\": 123,\n \"reason\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zenflow.com.ar/api/v1/stock/product/{productId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"location_id\": \"<string>\",\n \"quantity\": 123,\n \"reason\": \"<string>\"\n}"
response = http.request(request)
puts response.read_bodyActualizar Stock del Producto
Establece la cantidad absoluta de stock de un producto en una ubicación específica.Requiere scope
write:stock.Solicitud
PUT /api/v1/stock/product/{productId}
Parámetros de Ruta
integer
required
El ID del producto
Parámetros del Body
string
required
El ID de la ubicación
number
required
La nueva cantidad de stock
string
Razón del ajuste
Ejemplo
curl -X PUT "https://api.zenflow.com.ar/api/v1/stock/product/100" \
-H "X-API-Key: zenflow_live_your_key" \
-H "Content-Type: application/json" \
-d '{
"location_id": "LOC-A1",
"quantity": 75,
"reason": "Ajuste de conteo de inventario"
}'
Respuesta
{
"success": true,
"data": {
"product_id": 100,
"location_id": "LOC-A1",
"previous_quantity": 50,
"new_quantity": 75,
"movement_id": "MOV-12345"
}
}
Respuestas de Error
400 Error de Validación
{
"success": false,
"error": {
"code": "validation_error",
"message": "ID de ubicación es requerido"
}
}
400 Cantidad Inválida
{
"success": false,
"error": {
"code": "validation_error",
"message": "Cantidad es requerida y debe ser un número"
}
}
⌘I

