curl --request POST \
--url https://api.revem.ai/organizations/public/v1 \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tax_id": "76.123.456-K",
"name": "Empresa Ejemplo SpA"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({tax_id: '76.123.456-K', name: 'Empresa Ejemplo SpA'})
};
fetch('https://api.revem.ai/organizations/public/v1', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.revem.ai/organizations/public/v1"
payload = {
"tax_id": "76.123.456-K",
"name": "Empresa Ejemplo SpA"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"ok": true,
"id": "3f2b6c1e-8d4a-4f0b-9c2e-7a1d5e6f8b90",
"created": true,
"warnings": []
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"error": "Unauthorized",
"message": "Invalid API key"
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"ok": false,
"error": "Too many requests. Retry in 60 seconds."
}Crear o actualizar una organización
Identifica la organización por tax_id dentro del tenant de la API key. Dos sistemas enviando el mismo identificador actualizan la misma organización: gana el último valor enviado. Las claves ausentes o los campos nativos vacíos conservan sus valores. Los atributos van al mismo nivel por nombre y se combinan con los existentes; desconocidos, ambiguos o inválidos responden 422. Una organización en papelera responde 409; no se restaura ni recrea. Las del simulador no existen para esta API: si sólo una de ellas tiene ese identificador, se crea la real. Si ya existe una organización activa con ese identificador, se actualiza esa. Las organizaciones nuevas no tienen propietario asignado. Un null explícito en un atributo personalizado existente y de nombre no ambiguo borra su valor, incluso si es monetario; se omite en las respuestas GET. Los campos nativos no aceptan null.
curl --request POST \
--url https://api.revem.ai/organizations/public/v1 \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tax_id": "76.123.456-K",
"name": "Empresa Ejemplo SpA"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({tax_id: '76.123.456-K', name: 'Empresa Ejemplo SpA'})
};
fetch('https://api.revem.ai/organizations/public/v1', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.revem.ai/organizations/public/v1"
payload = {
"tax_id": "76.123.456-K",
"name": "Empresa Ejemplo SpA"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"ok": true,
"id": "3f2b6c1e-8d4a-4f0b-9c2e-7a1d5e6f8b90",
"created": true,
"warnings": []
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"error": "Unauthorized",
"message": "Invalid API key"
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"error": "<string>",
"ok": false,
"message": "<string>",
"unknownAttributes": [
"<string>"
]
}{
"ok": false,
"error": "Too many requests. Retry in 60 seconds."
}Authorizations
La API key de tu organización, con la forma rvm_<prefijo>.<secreto>, enviada como Authorization: Bearer rvm_…. Revem la emite y sólo se muestra una vez; si la pierdes se reemplaza, no se recupera.
Body
tax_id es obligatorio e identifica la organización dentro del tenant. Los atributos personalizados de organización se envían al mismo nivel, por nombre sin distinguir mayúsculas. Deben existir previamente; hasta 100 por solicitud. Los campos nativos no aceptan null. id, created_at y updated_at son de sólo lectura. Cuerpo máximo: 128 KiB.
Identificador tributario (RUT/RUC). Se eliminan signos y se convierte a mayúsculas; se conservan ceros iniciales. Debe contener letras o números. No se valida el dígito verificador chileno.
1 - 100Nombre de la organización. Omitido o vacío conserva el existente.
500Sitio web. Omitido o vacío conserva el existente.
2000Dirección. Omitida o vacía conserva la existente.
2000Giro o actividad económica. Omitido o vacío conserva el existente.
500Response
Solicitud completada.
