Ejemplos de código de la API

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:

Lista de clientes actuales

  1. 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"
    
  2. Guarda el nombre del cliente que se devuelve como una variable:

    CUSTOMER_NAME=customers/...
    

Crear una configuración de dispositivo

  1. Define el ${FCCID} y el ${SN} del dispositivo que quieras crear:

    FCCID=f1
    SN=sn1
    
  2. 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.

  3. 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)

  1. 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>"
     }
    
  2. Usa el formato JSON Web Token para codificar la cadena secreta en un JWT.

  3. Configura lo siguiente:

    1. ${SECRET} a la cadena secreta
    2. ${ENCODED_SECRET} a la cadena JWT
    3. ${CPI_ID} al ID de la CPI
  4. 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.

  1. Usa la clave privada de la CPI para codificar los parámetros de la CBSD. Te recomendamos que uses el formato JSON Web Token.
  2. Asigna ${ENCODED_DEVICE} a la cadena JWT y ${CPI_ID} al ID del CPI.
  3. 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