WoowUp Developer Docs
Woowup
  • Getting Started (EN)
  • Primeros Pasos (ES)
  • API
    • Users
    • Purchases
    • Products
    • Benefits
    • Coupons
    • Events
      • Garantía Extendida
    • Custom Attributes
    • Branches
    • Blacklist
    • Abandoned carts
    • Reset account
    • Integration Stats
    • Categories
    • Segment Export
  • Web Tracking
    • Configuración Navegación Web
  • Push Notifications
    • Configuración Notificaciones Web Push en Magento / Web Custom
    • Configuración Push en VTEX Legacy
    • Configuración Push en VTEX IO
    • ¿Cómo saber si la configuración fue exitosa?
  • Formularios Web
    • Formulario HTML / Script JS Newsletter
  • VTEX
    • Conectar Cuenta
    • Trigger Carrito Abandonado
    • Trigger Newsletter
    • VTEX APP Instalación
    • VTEX APP Configuración
  • Magento 1
    • Conectar Cuenta
    • Extension Carrito Abandonado
  • Magento 2
    • Conectar Cuenta
  • Shopify
    • Conectar Cuenta
  • Woocommerce
    • Conectar Cuenta
    • Extensión Carrito Abandonado
  • Prestashop
    • Conectar Cuenta
  • E3
    • Conecta tu eCommerce E3
  • Tienda Nube
    • Conectar Cuenta
  • Mensajería
    • SendGrid: Conectar Cuenta
    • Perfit: Conectar Cuenta
    • Infobip: Conectar Cuenta
  • Editor de campañas
    • Motor de template de emails
  • Data Processing
    • WoowUp Connectors
    • Migración a Multi - ID
  • How To
    • SurveyKiwi: Conectar Cuenta
      • Untitled
    • Snappy: Conectar Cuenta
    • Zendesk: Conectar Cuenta
  • Integración CSV / SQL
    • Primeros pasos
    • Archivo de Tiendas
    • Archivo de Categorías
    • Archivo de Productos
    • Archivo de Clientes
    • Archivo de Ventas
    • Archivo de Medios de Pago
    • Archivo de Miembros de Familia
  • Validación de Datos
  • ¿Cómo completar el Blueprint?
Powered by GitBook
On this page
  • POST /products
  • POST /products/bulk
  • PUT /products/{id}
  • GET /products/{id}/exist

Was this helpful?

  1. API

Products

PreviousPurchasesNextBenefits

Last updated 2 years ago

Was this helpful?

POST /products

Create a new product. The json with the product should be valid with the following

Request content format

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "description": "A representation of a product",
    "type": "object",
    "required": ["sku", "name"],
    "properties": {
        "sku": {"type":"string"},
        "base_sku": {"type":"string"},
        "name": {"type":"string", "minLength": 1},
        "base_name": {"type": "string"},
        "brand": {"type":"string"},
        "description": {"type":"string"},
        "url": {"type":"string"},
        "image_url": {"type":"string"},
        "thumbnail_url": {"type":"string"},
        "price": {"type":"number"},
        "offer_price": {"type":"number"},        
        "stock": {"type":"number"},
        "available": {"type":"boolean"},
        "release_date": {"type":"string"},
        "category": {
            "type": "array",
            "items": {
                "oneOf": [
                    {
                        "type": "string",
                        "minLength" : 1,
                        "maxLength" : 100
                    },
                    {
                        "type": "object",
                        "required": ["id", "name" ],
                        "properties": {
                            "id": {
                                "type" : "string",
                                "minLength" : 1,
                                "maxLength" : 64
                            },
                            "name": {
                                "type" : "string",
                                "minLength" : 1,
                                "maxLength" : 100
                            },
                            "url": { "type": "string" },
                            "image_url": { "type": "string" }
                        }
                    }
                ]
            }
        },
        "specifications": {
            "type": "array",
            "items": {
                "type": "object",
                "required": ["name", "value"],
                "properties": {
                    "name": { "type": "string" },
                    "value": { "type": "string" }
                }
            }
        },
        "metadata": {
            "type": "object"
        },
        "with_extension_warranty": { "type": "boolean" },
        "custom_attributes": { "type": "object" }
    }
}

Example

{
    "sku": "6786896868",
    "base_sku": "6786896",
    "brand": "BGH Positive",
    "name": "Notebook",
    "base_name": "BGH Notebook",
    "description": "Notebook BGH 14\"",
    "url": "http://www.example.com/notebook-bgh-6786896868",
    "image_url": "http://www.example.com/notebook-bgh-6786896868.png",
    "thumbnail_url": "http://www.example.com/thumbnail_notebook-bgh-6786896868.png",
    "price": 12200,
    "offer_price": 12000,
    "stock": 20,
    "available": true,
    "release_date": "2020-04-16T00:00:00-03:00",
    "category": [
        {
            "id": "a",
            "name": "Todos los productos",
            "url": "http://www.example.com/categorias/a",
            "image_url": "http://www.example.com/categorias/a.jpg"
        },
        {
            "id": "a-b",
            "name": "Hogar",
            "url": "http://www.example.com/categorias/a/b",
            "image_url": "http://www.example.com/categorias/b.png"
        },
        {
            "id": "a-b-c",
            "name": "Notebook",
            "url": "http://www.example.com/categorias/a/b/c",
            "image_url": "http://www.example.com/categorias/c.jpg"
        }
    ],
    "specifications": [
        {"name": "Disco rígido", "value": "1TB"}
    ],
    "metadata": {
        "internal_id": 123456789,
        "uploaded_by": {
            "id": 1,
            "name": "john doe",
            "email": "dataentry@myecommerce.com"
        }
    },
    "custom_attributes": { 
        "weight": 2,
        "release_date": "2019-05-22T14:35:22-03:00"
    }
}

This is a curl example:

curl -X POST \
  https://api.woowup.com/apiv3/products \
  -H 'accept: application/json' \
  -H 'authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
  -H 'cache-control: no-cache' \
  -d '{
    "sku": "6786896868",
    "base_sku": "6786896",
    "brand": "BGH Positive",
    "name": "Notebook",
    "base_name": "BGH Notebook",
    "description": "Notebook BGH 14\"",
    "url": "http://www.example.com/notebook-bgh-6786896868",
    "image_url": "http://www.example.com/notebook-bgh-6786896868.png",
    "thumbnail_url": "http://www.example.com/thumbnail_notebook-bgh-6786896868.png",
    "price": 12200,
    "offer_price": 12000,
    "stock": 20,
    "available": true,
    "release_date": "2020-04-16 03:00:00",
    "category": [
        {
            "id": "a",
            "name": "Todos los productos",
            "url": "http://www.example.com/categorias/a",
            "image_url": "http://www.example.com/categorias/a.jpg"
        },
        {
            "id": "a-b",
            "name": "Hogar",
            "url": "http://www.example.com/categorias/a/b",
            "image_url": "http://www.example.com/categorias/b.png"
        },
        {
            "id": "a-b-c",
            "name": "Notebook",
            "url": "http://www.example.com/categorias/a/b/c",
            "image_url": "http://www.example.com/categorias/c.jpg"
        }
    ],
    "specifications": [
        {"name": "Disco rígido", "value": "1TB"}
    ],
    "metadata": {
        "internal_id": 123456789,
        "uploaded_by": {
            "id": 1,
            "name": "john doe",
            "email": "dataentry@myecommerce.com"
        }
    },
    "custom_attributes": { 
        "weight": 2,
        "release_date": "2019-05-22T14:35:22-03:00"
    }
}'

Errors

HttpCode

HttpCode Name

Code

Description

201

ok

ok

Request successful

400

bad request

bad_request

Invalid parameters, view message for more details

429

too many requests

too_many_requests

API's requests-per-second limit exceeded

500

internal error

internal_error

Unexpected error

POST /products/bulk

Create multiple products in one request. This endpoint is equal to /products but accept an array of products.

This is an example with 2 products in one request:

curl -X POST \
  https://api.woowup.com/apiv3/products/bulk \
  -H 'accept: application/json' \
  -H 'authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
  -H 'cache-control: no-cache' \
  -d '[{
    "sku": "6786896868",
    "brand": "BGH Positive",
    "name": "Notebook",
    "base_name": "BGH Notebook",
    "description": "Notebook BGH 14\"",
    "url": "http://www.example.com/notebook-bgh-6786896868",
    "image_url": "http://www.example.com/notebook-bgh-6786896868.png",
    "thumbnail_url": "http://www.example.com/thumbnail_notebook-bgh-6786896868.png",
    "price": 12200,
    "offer_price": 12000,
    "stock": 20,
    "available": true,
    "category": [
        {
            "id": "a",
            "name": "Todos los productos",
            "url": "http://www.example.com/categorias/a",
            "image_url": "http://www.example.com/categorias/a.jpg"
        },
        {
            "id": "a-b",
            "name": "Hogar",
            "url": "http://www.example.com/categorias/a/b",
            "image_url": "http://www.example.com/categorias/b.png"
        },
        {
            "id": "a-b-c",
            "name": "Notebook",
            "url": "http://www.example.com/categorias/a/b/c",
            "image_url": "http://www.example.com/categorias/c.jpg"
        }
    ],
    "specifications": [
        {"name": "Disco rígido", "value": "1TB"}
    ],
    "metadata": {
        "internal_id": 123456789,
        "uploaded_by": {
            "id": 1,
            "name": "john doe",
            "email": "dataentry@myecommerce.com"
        }
    },
    "custom_attributes": { 
        "weight": 2,
        "release_date": "2019-05-22T14:35:22-03:00"
    }
}, {
    "sku": "44558987",
    "brand": "Asus",
    "name": "Notebook",
    "base_name": "Asus Notebook",
    "description": "Notebook ASUS 15\"",
    "url": "http://www.example.com/notebook-asus-44558987",
    "image_url": "http://www.example.com/notebook-asus-44558987.png",
    "thumbnail_url": "http://www.example.com/thumbnail_notebook-asus-44558987.png",
    "price": 14000,
    "offer_price": 13900,
    "stock": 15,
    "available": true,
    "category": [
        {
            "id": "a",
            "name": "Todos los productos",
            "url": "http://www.example.com/categorias/a",
            "image_url": "http://www.example.com/categorias/a.jpg"
        },
        {
            "id": "a-b",
            "name": "Hogar",
            "url": "http://www.example.com/categorias/a/b",
            "image_url": "http://www.example.com/categorias/b.png"
        },
        {
            "id": "a-b-c",
            "name": "Notebook",
            "url": "http://www.example.com/categorias/a/b/c",
            "image_url": "http://www.example.com/categorias/c.jpg"
        }
    ],
    "specifications": [
        {"name": "Disco rígido", "value": "720GB"}
    ]
}]'

Errors

HttpCode

HttpCode Name

Code

Description

201

ok

ok

Request successful

400

bad request

bad_request

Invalid parameters, view message for more details

429

too many requests

too_many_requests

API's requests-per-second limit exceeded

500

internal error

internal_error

Unexpected error

PUT /products/{id}

Update product's information. The {id} parameter is required and can be: the product's code encoded or the product's id.

This is an example to update the stock and the availability of the product according to the json schema on the POST section:

curl -X PUT \
  https://api.woowup.com/apiv3/products/Njc4Njg5Njg2OA== \
  -H 'accept: application/json' \
  -H 'authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
  -H 'cache-control: no-cache' \
  -d '{
    "sku": "6786896868",
    "base_sku": "6786896",
    "brand": "BGH Positive",
    "name": "Notebook",
    "base_name": "BGH Notebook",
    "description": "Notebook BGH 14\"",
    "url": "http://www.example.com/notebook-bgh-6786896868",
    "image_url": "http://www.example.com/notebook-bgh-6786896868.png",
    "thumbnail_url": "http://www.example.com/thumbnail_notebook-bgh-6786896868.png",
    "price": 12200,
    "offer_price": 12000,
    "stock": 20,
    "available": true,
    "release_date": "2020-04-16T00:00:00-03:00",
    "category": [
        {
            "id": "a",
            "name": "Todos los productos",
            "url": "http://www.example.com/categorias/a",
            "image_url": "http://www.example.com/categorias/a.jpg"
        },
        {
            "id": "a-b",
            "name": "Hogar",
            "url": "http://www.example.com/categorias/a/b",
            "image_url": "http://www.example.com/categorias/b.png"
        },
        {
            "id": "a-b-c",
            "name": "Notebook",
            "url": "http://www.example.com/categorias/a/b/c",
            "image_url": "http://www.example.com/categorias/c.jpg"
        }
    ],
    "specifications": [
        {"name": "Disco rígido", "value": "1TB"}
    ],
    "metadata": {
        "internal_id": 987654321,
        "uploaded_by": {
            "id": 2,
            "name": "joanne doe",
            "email": "dataentry2@myecommerce.com"
        }
    },
    "custom_attributes": { 
        "weight": 15,
        "release_date": "2019-04-26"
    }
}'

Errors

HttpCode

HttpCode Name

Code

Description

200

ok

ok

Request successful

400

bad request

bad_request

Invalid parameters, view message for more details

404

not found

not_found

Product not found

429

too many requests

too_many_requests

API's requests-per-second limit exceeded

500

internal error

internal_error

Unexpected error

GET /products/{id}/exist

Test if a product exist by id/sku. The {id} parameter is required and can be: the product's code encoded or the product's id.

Parameter

Type

Required

Description

id

uri

Yes

Product ID or encoded sku

Example

curl -X GET \
    -H "Accept: application/json" \
    -H "Authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
    -H "Content-Type: application/x-www-form-urlencoded" \
    -H "Cache-Control: no-cache" \
    "https://api.woowup.com/apiv3/products/12345/exist"

Response

{
    "payload": {
        "exist": true
    },
    "message":"ok",
    "code":"ok",
    "time":"100ms"
}

Errors

HttpCode

HttpCode Name

Code

Description

200

ok

ok

Request successful

429

too many requests

too_many_requests

API's requests-per-second limit exceeded

500

internal error

internal_error

Unexpected error

This is a valid purchase according to the previous :

json-schema
json-schema