API-Codebeispiele

Diese Seite enthält Codebeispiele für die Google Spectrum Access System (SAS) Portal API.

Hinweise

Für die folgenden Beispiele müssen die folgenden Voraussetzungen erfüllt sein:

Aktuelle Kunden auflisten

  1. Gibt alle Kunden zurück, auf die der Aufrufer Zugriff hat:

    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. Speichern Sie den zurückgegebenen Kundennamen als Variable:

    CUSTOMER_NAME=customers/...
    

Neue Gerätekonfiguration erstellen

  1. Legen Sie ${FCCID} und ${SN} für das Gerät fest, das Sie erstellen möchten:

    FCCID=f1
    SN=sn1
    
  2. Erstellen Sie die Gerätekonfiguration:

    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\"}}"
    

    Der Befehl gibt eine neu erstellte Gerätekonfiguration zurück.

  3. Speichern Sie den Gerätenamen als Variable:

    DEVICE_NAME=customers/.../devices/...
    

Aktuelle Geräte auflisten

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"

Geräte nach Name abrufen

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}"

Vorhandenes Gerät aktualisieren

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}" \

Identität und Zertifizierung als zertifizierter Installateur (CPI) bestätigen

  1. Generieren Sie den geheimen String:

    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 "{}"
    

    Die Ausgabe sieht in etwa so aus:

     {
      "secret": "<generated secret>"
     }
    
  2. Verwenden Sie das JSON Web Token-Format, um den geheimen String in ein JWT zu codieren.

  3. Legen Sie Folgendes fest:

    1. ${SECRET} an den geheimen String
    2. ${ENCODED_SECRET} in den JWT-String
    3. ${CPI_ID} mit der ID des Preisvergleichsportals
  4. Prüfen Sie die Identität und Zertifizierung des Preisvergleichsportals:

    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}\" }"
    

Jetzt kann der CPI ein CBRS-Gerät (Citizens Broadband Radio Service) installieren, das alle erforderlichen Parameter enthält.

Mehrstufige CBSD-Registrierung

Sie können eine mehrstufige CBSD-Registrierung mit Geräteparametern ausführen, die zuvor von einem CPI oder mit einem CPI-Konto signiert wurden.

Geräteparameter, die zuvor von einem Preisvergleichsportal signiert wurden

In diesem Beispiel wird gezeigt, wie eine inaktive Gerätekonfiguration mit CBSD-Installationsparametern erstellt wird, die zuvor von einem CPI codiert wurden. So können auch Nutzer ohne CPI die Konfiguration erstellen.

  1. Verwende den privaten Schlüssel des CPI, um die CBSD-Parameter zu codieren. Wir empfehlen, das JSON-Webtoken-Format zu verwenden.
  2. Lege für ${ENCODED_DEVICE} den JWT-String und für ${CPI_ID} die ID des Preisvergleichsportals fest.
  3. Erstellen Sie die Konfiguration für inaktive Geräte:

    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}\" }"
    

Die CBSD muss dann einen Registrierungsantrag an SAS senden, um die Registrierung abzuschließen.

CPI-Konto

Die Identität des Preisvergleichsportals muss vor der Bestätigung einer Gerätekonfiguration bestätigt werden. Anschließend erstellen Sie mit dem folgenden Befehl eine inaktive Gerätekonfiguration:

  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}"

Ersetzen Sie ${DEVICE} durch die JSON-Darstellung der CBSD-Registrierungsparameter. Weitere Informationen zum Format findest du unter REST-Ressource: customers.devices.

Die CBSD muss dann einen Registrierungsantrag an SAS senden, um die Registrierung abzuschließen.

Nächste Schritte