Skip to content

Tiendup Public API (1.0.0)

API pública para integrar Tiendup 🔑 Para obtener una API Key, sigue los pasos de la documentación:
¿Cómo obtener tu API Key de Tiendup?

Download OpenAPI description
Overview
Languages
Servers
https://{business_slug}.public-api.tiendup.com
Operations
Operations
Operations
Operations
Operations

Request

Retorna el listado paginado de descargables del negocio.

Security
ApiKeyAuth
Query
pageinteger>= 1
Default 1
limitinteger[ 1 .. 100 ]
Default 25
curl -i -X GET \
  'https://demo.public-api.tiendup.com/downloadables?page=1&limit=25' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Listado de descargables

Bodyapplication/json
countFilteredintegerrequired

Cantidad filtrada

countinteger or stringrequired

Puede venir como string o integer.

One of:

Puede venir como string o integer.

integer
previousinteger or nullrequired
One of:
integer
currentintegerrequired
pagesintegerrequired
nextinteger or nullrequired
One of:
integer
statusstringrequired
Example: "OK"
dataArray of objects(Downloadable)required

Lista de descargables (si no hay, viene vacío).

data[].​idintegerrequired
Example: 11971
data[].​hashstringrequired
Example: "gjjRbg"
data[].​namestringrequired
Example: "Test"
data[].​short_descriptionstring or null
Example: null
data[].​pricestringrequired
Example: "334.43"
data[].​price_minstring or null
Example: null
data[].​price_maxstring or null
Example: null
data[].​prices_list_keystring or null
Example: null
data[].​base_pricestringrequired
Example: "334.43"
data[].​price_variesbooleanrequired
Example: false
data[].​compare_at_pricestring or null
Example: "335"
data[].​price_visiblebooleanrequired
Example: false
data[].​subscription_onlybooleanrequired
Example: false
data[].​currencystringrequired
Example: "ARS"
data[].​ecommerce_typestringrequired
Example: "downloadable"
data[].​skustring or null
Example: null
data[].​slugstringrequired
Example: "test"
data[].​activebooleanrequired
Example: true
data[].​ratingnumberrequired
Example: 0
data[].​reviewsintegerrequired
Example: 0
data[].​salesintegerrequired
Example: 0
data[].​tagsstringrequired
Example: ""
data[].​imageImage (object) or boolean

Puede ser objeto o false cuando no hay imagen.

One of:

Puede ser objeto o false cuando no hay imagen.

data[].​egiftbooleanrequired
Example: false
data[].​is_variantbooleanrequired
Example: false
data[].​has_variantsbooleanrequired
Example: false
data[].​downloadable_free_accessbooleanrequired
Example: false
data[].​downloadable_accessbooleanrequired
Example: false
data[].​vendorstring or null
Example: null
data[].​stock_managementbooleanrequired
Example: false
data[].​sales_channelobject or Array of anyrequired

Puede venir como objeto con keys dinámicas o como array vacío.

One of:

Puede venir como objeto con keys dinámicas o como array vacío.

data[].​sales_channel.​property name*object(SalesChannelItem)additional property
data[].​is_buyablebooleanrequired
Example: false
data[].​publishedbooleanrequired
Example: true
data[].​categoriesArray of anyrequired
Example: []
data[].​property name*anyadditional property
property name*anyadditional property
Response
application/json
{ "countFiltered": 0, "count": 0, "previous": 0, "current": 0, "pages": 0, "next": 0, "status": "OK", "data": [ { … } ] }

Grant downloadable access to customer

Request

Otorga acceso a un descargable a un cliente existente, indicando si el acceso es free o paid.

Security
ApiKeyAuth
Path
product_idinteger>= 1required

ID del descargable (product_id).

customer_idinteger>= 1required

ID del cliente.

access_typestringrequired

Tipo de acceso a otorgar.

Enum"free""paid"
curl -i -X PUT \
  'https://demo.public-api.tiendup.com/downloadables/{product_id}/customers/{customer_id}/access/{access_type}' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Acceso otorgado correctamente

Bodyapplication/json
statusstringrequired
Example: "OK"
Response
application/json
{ "status": "OK" }

Grant downloadable access by email

Request

Otorga acceso a un descargable creando/vinculando el cliente por email. El tipo de acceso se define en el body (free|paid).

Security
ApiKeyAuth
Path
product_idinteger>= 1required

ID del descargable (product_id).

Bodyapplication/jsonrequired
customerobjectrequired
customer.​emailstring(email)required
Example: "customer4@example.com"
customer.​namestring
Example: "John"
customer.​last_namestring
Example: "Doe"
customer.​property name*anyadditional property
access_typestringrequired
Enum"free""paid"
Example: "free"
property name*anyadditional property
curl -i -X POST \
  'https://demo.public-api.tiendup.com/downloadables/{product_id}/access' \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: YOUR_API_KEY_HERE' \
  -d '{
    "customer": {
      "email": "customer4@example.com",
      "name": "John",
      "last_name": "Doe"
    },
    "access_type": "free"
  }'

Responses

Acceso otorgado correctamente

Bodyapplication/json
statusstringrequired
Example: "OK"
Response
application/json
{ "status": "OK" }

Revoke downloadable access by customer id

Request

Revoca el acceso de un cliente a un descargable.

Security
ApiKeyAuth
Path
product_idinteger>= 1required

ID del descargable (product_id).

customer_idinteger>= 1required

ID del cliente (customer_id).

curl -i -X PUT \
  'https://demo.public-api.tiendup.com/downloadables/{product_id}/customers/{customer_id}/access/revoke' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Acceso revocado correctamente

Bodyapplication/json
statusstringrequired
Example: "OK"
Response
application/json
{ "status": "OK" }

Request

Retorna el listado paginado de clientes que adquirieron el descargable.

Security
ApiKeyAuth
Path
product_idinteger>= 1required

ID del descargable (product_id).

Query
pageinteger>= 1
Default 1
limitinteger[ 1 .. 100 ]
Default 25
curl -i -X GET \
  'https://demo.public-api.tiendup.com/downloadables/{product_id}/acquisitions?page=1&limit=25' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Listado de adquisiciones

Bodyapplication/json
countFilteredintegerrequired

Cantidad filtrada

countinteger or stringrequired

Puede venir como string o integer.

One of:

Puede venir como string o integer.

integer
previousinteger or nullrequired
One of:
integer
currentintegerrequired
pagesintegerrequired
nextinteger or nullrequired
One of:
integer
statusstringrequired
Example: "OK"
dataArray of objects(DownloadableAcquisition)required
data[].​idintegerrequired
Example: 138
data[].​acquisition_typestringrequired
Enum"free""paid"
Example: "free"
data[].​status_idstringrequired
Example: "active"
data[].​data_source_typestring
Example: "public_api"
data[].​creation_datestringrequired
Example: "2026-02-18 19:51:14"
data[].​activation_datestringrequired
Example: "2026-02-18 19:51:14"
data[].​customerobjectrequired
data[].​customer.​idintegerrequired
Example: 41989
data[].​customer.​namestring
Example: "John"
data[].​customer.​last_namestring or null
Example: null
data[].​customer.​emailstring(email)required
Example: "customer5@example.com"
data[].​customer.​phonestring or null
Example: null
data[].​customer.​property name*anyadditional property
data[].​property name*anyadditional property
property name*anyadditional property
Response
application/json
{ "countFiltered": 0, "count": 0, "previous": 0, "current": 0, "pages": 0, "next": 0, "status": "OK", "data": [ { … } ] }

Request

Obtiene el detalle de una adquisición individual.

Security
ApiKeyAuth
Path
access_idinteger>= 1required

ID de la adquisición.

curl -i -X GET \
  'https://demo.public-api.tiendup.com/downloadables/acquisitions/{access_id}' \
  -H 'X-API-Key: YOUR_API_KEY_HERE'

Responses

Adquisición encontrada

Bodyapplication/json
statusstringrequired
Example: "OK"
dataobject(DownloadableAcquisitionDetail)required
data.​idintegerrequired
Example: 138
data.​acquisition_typestringrequired
Enum"free""paid"
Example: "free"
data.​status_idstringrequired
Example: "active"
data.​data_source_typestring
Example: "public_api"
data.​creation_datestringrequired
Example: "2026-02-18 19:51:14"
data.​activation_datestringrequired
Example: "2026-02-18 19:51:14"
data.​customerobject(AcquisitionCustomerDetail)required
data.​customer.​idintegerrequired
data.​customer.​namestring
data.​customer.​last_namestring or null
data.​customer.​emailstring(email)required
data.​customer.​creation_datestring
data.​customer.​update_datestring
data.​customer.​commentstring
data.​customer.​activeboolean
data.​customer.​is_guestboolean
data.​customer.​birthdatestring or null
data.​customer.​has_passwordboolean
data.​customer.​stagestring
data.​customer.​avatar_filenamestring or null
data.​customer.​identificationstring or null
data.​customer.​identification_typestring or null
data.​customer.​companystring or null
data.​customer.​tax_treatmentstring or null
data.​customer.​tax_id_typestring or null
data.​customer.​tax_id_numberstring or null
data.​customer.​languagestring
data.​customer.​member_idinteger
data.​customer.​autologin_hashstring
data.​customer.​is_sellerboolean
data.​customer.​property name*anyadditional property
data.​productobject(AcquisitionProductDetail)required
data.​product.​idintegerrequired
data.​product.​ecommerce_typestringrequired
Example: "downloadable"
data.​product.​slugstringrequired
data.​product.​skustring or null
data.​product.​namestringrequired
data.​product.​activebooleanrequired
data.​product.​short_descriptionstring or null
data.​product.​imageImage (object) or boolean
One of:
data.​product.​property name*anyadditional property
data.​property name*anyadditional property
property name*anyadditional property
Response
application/json
{ "status": "OK", "data": { "id": 138, "acquisition_type": "free", "status_id": "active", "data_source_type": "public_api", "creation_date": "2026-02-18 19:51:14", "activation_date": "2026-02-18 19:51:14", "customer": { … }, "product": { … } } }
Operations
Operations