Esta página contiene ejemplos de código de la API del portal del sistema de acceso al espectro (SAS) de Google.
Antes de empezar
En los siguientes ejemplos, asegúrate de cumplir los requisitos previos:
- Obtener un token con tu cuenta de servicio
TOKEN=$(gcloud auth print-access-token)
. - Asigna a
${CLIENT_PROJECT}
el ID del proyecto Google Cloud .
Lista de clientes actuales
Devuelve todos los clientes a los que tiene acceso la persona que llama:
curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${TOKEN}" \"https://sasportal.googleapis.com/v1alpha1/customers"
Guarda el nombre del cliente que se devuelve como una variable:
CUSTOMER_NAME=customers/...
Crear una configuración de dispositivo
Define el
${FCCID}
y el${SN}
del dispositivo que quieras crear:FCCID=f1 SN=sn1
Crea la configuración del dispositivo:
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${TOKEN}" \ "https://sasportal.googleapis.com/v1alpha1/${CUSTOMER_NAME}/devices" \ -d "{ \"fcc_id\": \"$FCCID\", \"serial_number\": \"$SN\", \"preloaded_config\": { \"call_sign\": \"cs1\", \"category\": \"DEVICE_CATEGORY_A\"}}"
El comando devuelve una configuración de dispositivo recién creada.
Guarda el nombre del dispositivo como una variable:
DEVICE_NAME=customers/.../devices/...
Listar dispositivos actuales
curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${CUSTOMER_NAME}/devices"
Recuperar dispositivos por nombre
curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${DEVICE_NAME}"
Actualizar un dispositivo
curl -X PATCH -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${DEVICE_NAME}" \
Validar tu identidad y certificación de instalador profesional certificado (CPI)
Genera la cadena secreta:
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/installer:generateSecret" \ -d "{}"
El resultado debería ser similar al siguiente:
{ "secret": "<generated secret>" }
Usa el formato JSON Web Token para codificar la cadena secreta en un JWT.
Configura lo siguiente:
${SECRET}
a la cadena secreta${ENCODED_SECRET}
a la cadena JWT${CPI_ID}
al ID de la CPI
Valida la identidad y la certificación del CPI:
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/installer:validate" \ -d "{ \"installer_id\": \"${CPI_ID}\", \"secret\": \"${SECRET}\", \"encoded_secret\": \"${ENCODED_SECRET}\" }"
Ahora, el CPI puede instalar un dispositivo de servicio de radio de banda ancha para ciudadanos (CBSD) que tenga todos los parámetros necesarios.
Registro de CBSD en varios pasos
Puedes registrar un CBSD en varios pasos con parámetros de dispositivo firmados previamente por un CPI o con una cuenta de CPI.
Parámetros del dispositivo firmados previamente por un CPI
En este ejemplo se muestra cómo crear una configuración de dispositivo inactivo con parámetros de instalación de CBSD codificados previamente por un CPI. Por lo tanto, los usuarios que no son de CPI también pueden crear la configuración.
- Usa la clave privada de la CPI para codificar los parámetros de la CBSD. Te recomendamos que uses el formato JSON Web Token.
- Asigna
${ENCODED_DEVICE}
a la cadena JWT y${CPI_ID}
al ID del CPI. Crea la configuración de dispositivos inactivos:
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${TOKEN}" \ "https://sasportal.googleapis.com/v1alpha1/${CUSTOMER_NAME}/devices:createSigned" \ -d "{ \"installer_id\": \"${CPI_ID}\", \"encoded_device\": \"${ENCODED_DEVICE}\", \"parent\": \"${CUSTOMER_NAME}\" }"
A continuación, el CBSD debe enviar una solicitud de registro al SAS para completar el registro.
Cuenta de CPI
La identidad del CPI debe validarse antes de validar la configuración de un dispositivo. Cuando lo hayas hecho, usa el siguiente comando para crear una configuración de dispositivo inactivo:
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${DEVICE_NAME}:signDevice" \ -d "${DEVICE}"
Sustituye ${DEVICE}
por la representación JSON de los parámetros de registro de CBSD. Para obtener más información sobre el formato, consulta Recurso REST: customers.devices.
A continuación, el CBSD debe enviar una solicitud de registro al SAS para completar el registro.
Siguientes pasos
- Para obtener una descripción general de la API del portal de SAS, consulta el artículo Descripción general de la API del portal de SAS de Google.
- Para obtener información sobre cada API, consulta la API Customers y la API Device Manager.
- Para consultar la documentación de referencia, ve a APIs and reference (APIs y referencia).