Guía de acceso
Descripción general del producto
La API abierta de Modelado espacial estructurado está diseñada para sistemas de terceros. Ofrece un procesamiento automatizado en la nube que convierte datos de captura 3D en modelos editables.
Flujo de trabajo: sube un paquete de escena LCC2, una nube de puntos LAS o una nube de puntos PLY → la nube genera el modelo automáticamente → se producen modelos 3D DXF / GLB / BLEND, junto con un modelo de Revit (RVT).
Casos de uso
- Entrega de planos as-built: obtén planos de planta y bases de secciones directamente a partir de los escaneos en obra, sin remodelado manual.
- Diseño de reformas: obtén muros, puertas y ventanas con sus dimensiones y diseña directamente en CAD.
- Gestión de inmuebles y activos: genera planos de planta y tablas de superficies por lotes.
- Viabilidad y estimación de cantidades: lee datos estructurados para evaluar demoliciones y modificaciones y estimar materiales.
Límites de uso
| Elemento | Límite |
|---|---|
| Concurrencia de la API | 10 solicitudes / segundo por API |
| Concurrencia de tareas de modelado | Sin límite; las tareas entran en la cola inmediatamente después de enviarse |
| Tamaño de la consulta por lotes | Hasta 50 modelIds por solicitud de detalles de tareas |
| Intervalo de sondeo | Se recomienda no menos de 5 segundos |
| Validez de las credenciales temporales de carga | 12 horas |
| Número máximo de partes | 10.000 partes |
| Tiempo de espera del latido de carga | 180 segundos; las tareas que superan el tiempo de espera pasan a carga fallida |
| Límite de frecuencia por modelId | Las API Iniciar tarea y Obtener de nuevo las credenciales de carga tienen un límite de frecuencia de 3 segundos |
Compra
Este servicio está disponible en AWS Marketplace. Suscríbete en la página del producto en AWS Marketplace.
Obtener las credenciales de la aplicación
Solicita una aplicación con antelación para obtener las siguientes credenciales.
| Credencial | Descripción |
|---|---|
| APP-ID | Identificador único de la aplicación |
| APP-Secret | Secreto de la aplicación, usado para generar firmas |
Nota: Guarda el APP-Secret de forma segura y no lo reveles nunca. Úsalo solo en el lado del servidor para generar firmas. No lo distribuyas nunca a clientes ni lo incluyas en código de frontend.
La región de almacenamiento de datos queda vinculada al solicitar la aplicación, por lo que no necesitas pasarla al llamar a las API.
Mecanismo de firma
Elementos de la firma
| Elemento | Origen | Regla |
|---|---|---|
| httpMethod | Método de la solicitud | En mayúsculas. Todas las API de este documento usan POST |
| path | Ruta de la solicitud | Ruta completa, incluido el prefijo /open-apis |
| timestamp | X-Timestamp | Marca de tiempo en segundos, idéntica al valor de la cabecera |
| nonce | X-Nonce | Cadena aleatoria, idéntica al valor de la cabecera |
Cadena a firmar
\n es un salto de línea. El cuerpo de la solicitud no se incluye en la firma.
httpMethod + "\n" + path + "\n" + timestamp + "\n" + nonce
Ejemplo:
POST
/open-apis/spatial-model/v1/model/create
1791763200
a3f91c2d8e7b4a6590fd12cb77ae40d1
Algoritmo de firma
| Elemento | Valor |
|---|---|
| Algoritmo | HMAC-SHA256 |
| Clave | APP-Secret |
| Salida | Cadena codificada en Base64 |
Código de ejemplo
public static void main(String[] args) throws Exception {
String httpMethod = "POST";
String path = "/open-apis/spatial-model/v1/model/create";
long timestamp = System.currentTimeMillis() / 1000;
String nonce = UUID.randomUUID().toString().replaceAll("-", "");
// 1. Construir la cadena a firmar
String signContent = httpMethod + "\n" + path + "\n" + timestamp + "\n" + nonce;
// 2. HMAC-SHA256
String appSecret = "xxxxxxxxxxxxxxxxxxx";
Mac mac = Mac.getInstance("HmacSHA256");
SecretKeySpec secretKey =
new SecretKeySpec(appSecret.getBytes(StandardCharsets.UTF_8), "HmacSHA256");
mac.init(secretKey);
byte[] rawHmac = mac.doFinal(signContent.getBytes(StandardCharsets.UTF_8));
// 3. Codificar en Base64
System.out.println(Base64.getEncoder().encodeToString(rawHmac));
}
Cuando tengas todo listo, lee Flujo de modelado para conocer el flujo completo de llamadas.