curl --request POST \
--url https://api.nomenclator.com.ar/v1/classifications \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"operation": "import",
"country": "CN",
"description": "Bomba centrífuga monobloc de 3 HP, cuerpo de hierro fundido, para agua limpia, uso industrial.",
"file_url": null,
"external_reference": "PED-000123"
}
'const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
operation: 'import',
country: 'CN',
description: 'Bomba centrífuga monobloc de 3 HP, cuerpo de hierro fundido, para agua limpia, uso industrial.',
file_url: null,
external_reference: 'PED-000123'
})
};
fetch('https://api.nomenclator.com.ar/v1/classifications', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.nomenclator.com.ar/v1/classifications"
payload = {
"operation": "import",
"country": "CN",
"description": "Bomba centrífuga monobloc de 3 HP, cuerpo de hierro fundido, para agua limpia, uso industrial.",
"file_url": None,
"external_reference": "PED-000123"
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "<string>",
"status": "in_progress",
"stage": "answers_intake",
"app_url": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}Crear una clasificación
Encola la clasificación y responde 202 enseguida, sin dictamen. Consultá GET /classifications/{id} hasta que status sea resolved, pending_data o failed.
Mandá description (10 a 5.000 caracteres), una ficha técnica en PDF de hasta 10 MB (file_url, obtenida de POST /uploads) o las dos cosas. Se factura USD 2,00 en el medidor de la API cuando llega a resolved; no consume créditos del plan. Requiere una key con alcance classify.
curl --request POST \
--url https://api.nomenclator.com.ar/v1/classifications \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"operation": "import",
"country": "CN",
"description": "Bomba centrífuga monobloc de 3 HP, cuerpo de hierro fundido, para agua limpia, uso industrial.",
"file_url": null,
"external_reference": "PED-000123"
}
'const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
operation: 'import',
country: 'CN',
description: 'Bomba centrífuga monobloc de 3 HP, cuerpo de hierro fundido, para agua limpia, uso industrial.',
file_url: null,
external_reference: 'PED-000123'
})
};
fetch('https://api.nomenclator.com.ar/v1/classifications', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.nomenclator.com.ar/v1/classifications"
payload = {
"operation": "import",
"country": "CN",
"description": "Bomba centrífuga monobloc de 3 HP, cuerpo de hierro fundido, para agua limpia, uso industrial.",
"file_url": None,
"external_reference": "PED-000123"
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "<string>",
"status": "in_progress",
"stage": "answers_intake",
"app_url": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}{
"type": "<string>",
"title": "<string>",
"status": 499,
"detail": "<string>",
"instance": "<string>",
"request_id": "<string>",
"errors": [
{
"field": "<string>",
"code": "<string>",
"message": "<string>"
}
]
}null. Tiene que venir al menos description o file_url. Un campo que no está en la lista devuelve 422.
description: entre 10 y 5.000 caracteres. Mirá cómo describir el producto.file_url: el que devuelvePOST /uploads.external_reference: tu referencia, hasta 100 caracteres. La app la muestra como «Ref.» en el dictamen.
202 no trae dictamen. Seguí el ciclo de una clasificación.Autorizaciones
API key de tu organización, creada en la app en Ajustes → API. Se manda como Authorization: Bearer nmc_live_…, nunca en la query string. Alcances: read (solo leer) y classify (clasificar y leer).
Encabezados
Clave que elegís vos, de 16 a 128 caracteres entre letras sin acentos, números, - y _. Repetir el pedido con la misma clave devuelve la misma clasificación y no factura dos veces.
^[A-Za-z0-9_-]{16,128}$"erp-pedido-000123-a"
Cuerpo
import para importación, export para exportación.
import, export País en ISO 3166-1 alfa-2: de origen en una importación, de destino en una exportación.
^[A-Z]{2}$Descripción del producto, de 10 a 5.000 caracteres. null si solo mandás ficha.
10 - 5000El file_url de POST /uploads. null si no mandás ficha.
Tu referencia, hasta 100 caracteres. null si no la usás.
100Respuesta
Aceptada. Todavía no hay dictamen.
Id público de la clasificación.
^cls_[23456789ABCDEFGHJKMNPQRSTVWXYZ]{12}$Siempre in_progress.
"in_progress"Etapa con la que arranca.
answers_intake, extraction, retrieval, verdict, validation, sim Link a la clasificación en la app.