Przykłady kodu interfejsu Connectors API

Informacje o funkcjach interfejsu API znajdziesz w artykule Connectors API.

Wszystkie żądania na tej stronie korzystają z tych zmiennych:

  • $TOKEN – token OAuth 2.0
  • $CUSTOMER – identyfikator klienta lub literał my_customer
  • $PAGE_TOKEN – token strony uzyskany z odpowiedzi poprzedniej strony
  • $CONNECTOR_CONFIG_ID – identyfikator konfiguracji oprogramowania sprzęgającego. Wygenerowane identyfikatory mają postać identyfikatorów UUID pisanych wielkimi literami (np. 550E8400-E29B-41D4-A716-446655440000).

Wyświetlanie listy konfiguracji oprogramowania sprzęgającego

Aby wyświetlić listę konfiguracji łączników dla domeny klienta, użyj metody list. Podczas dzielenia wyników na strony możesz opcjonalnie podać parametry zapytania page_size (lub pageSize) i page_token (lub pageToken):

  • page_size / pageSize: maksymalna liczba konfiguracji łączników do zwrócenia. Jeśli nie podasz rozmiaru strony, domyślnie będzie on wynosić 50, a maksymalnie 100.
  • page_token / pageToken: token strony otrzymany z poprzedniego wywołania list.

Żądanie

curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/connectorConfigs?page_size=50&page_token=$PAGE_TOKEN"

Odpowiedź

{
  "connectorConfigs": [
    {
      "name": "customers/my_customer/connectorConfigs/550E8400-E29B-41D4-A716-446655440000",
      "displayName": "Configuration 1",
      "type": "REPORTING",
      "details": {
        "googleSecOpsConfig": {
          "host": "example.googlesecops.com",
          "reportingSettings": {
            "enabledDefaultEvents": [
              "ALL_DEFAULT_EVENTS"
            ],
            "enabledOptInEvents": [
              "PASSWORD_BREACH_EVENT",
              "URL_NAVIGATION_EVENT"
            ],
            "enabledDeviceEvents": [
              "ALL_DEVICE_EVENTS"
            ]
          }
        }
      },
      "status": {
        "state": "ENABLED"
      }
    }
  ],
  "nextPageToken": "<next_page_token>"
}

Pobieranie konfiguracji oprogramowania sprzęgającego

Aby pobrać konkretną konfigurację oprogramowania sprzęgającego według identyfikatora, użyj metody get.

Żądanie

curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/connectorConfigs/$CONNECTOR_CONFIG_ID"

Odpowiedź

{
  "name": "customers/my_customer/connectorConfigs/550E8400-E29B-41D4-A716-446655440000",
  "displayName": "Configuration 1",
  "type": "REPORTING",
  "details": {
    "googleSecOpsConfig": {
      "host": "example.googlesecops.com",
      "reportingSettings": {
        "enabledDefaultEvents": [
          "ALL_DEFAULT_EVENTS"
        ],
        "enabledOptInEvents": [
          "PASSWORD_BREACH_EVENT",
          "URL_NAVIGATION_EVENT"
        ],
        "enabledDeviceEvents": [
          "ALL_DEVICE_EVENTS"
        ]
      }
    }
  },
  "status": {
    "state": "ENABLED"
  }
}

Tworzenie konfiguracji oprogramowania sprzęgającego

Aby utworzyć nową konfigurację oprogramowania sprzęgającego dla domeny klienta, użyj metody create. Opcjonalnie możesz podać niestandardowy identyfikator, ustawiając parametr zapytania connector_config_id (lub connectorConfigId). Jeśli nie podasz identyfikatora, serwer wygeneruje identyfikator UUID pisany wielkimi literami.

Żądanie

curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "displayName": "Configuration 1",
    "type": "REPORTING",
    "details": {
      "googleSecOpsConfig": {
        "apiKey": "api-key",
        "host": "example.googlesecops.com",
        "reportingSettings": {
          "enabledDefaultEvents": [
            "ALL_DEFAULT_EVENTS"
          ],
          "enabledOptInEvents": [
            "PASSWORD_BREACH_EVENT"
          ],
          "enabledDeviceEvents": [
            "ALL_DEVICE_EVENTS"
          ]
        }
      }
    }
  }' \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/connectorConfigs?connector_config_id=$CONNECTOR_CONFIG_ID"

Odpowiedź

{
  "name": "customers/my_customer/connectorConfigs/550E8400-E29B-41D4-A716-446655440000",
  "displayName": "Configuration 1",
  "type": "REPORTING",
  "details": {
    "googleSecOpsConfig": {
      "host": "example.googlesecops.com",
      "reportingSettings": {
        "enabledDefaultEvents": [
          "ALL_DEFAULT_EVENTS"
        ],
        "enabledOptInEvents": [
          "PASSWORD_BREACH_EVENT"
        ],
        "enabledDeviceEvents": [
          "ALL_DEVICE_EVENTS"
        ]
      }
    }
  },
  "status": {
    "state": "ENABLED"
  }
}

Aktualizowanie konfiguracji oprogramowania sprzęgającego

Konfigurację oprogramowania sprzęgającego można zaktualizować na jeden z tych sposobów:

  • Brak maski aktualizacji: jeśli nie podasz parametru zapytania updateMask, zaktualizowane zostaną wszystkie pola ustawione w żądaniu.
  • Z maską aktualizacji: jeśli podany jest parametr zapytania updateMask, zaktualizowane zostaną tylko pola wymienione w masce.
  • Z maską aktualizacji odpowiadającą wartości *: jeśli wartość updateMask jest ustawiona na *, aktualizacja jest traktowana jako pełna zamiana (odpowiednik tworzenia).

Przykład 1. Kierowanie tylko na maskę aktualizacji displayName

W tym przypadku podanie wartości updateMask=displayName gwarantuje, że zaktualizowane zostanie tylko pole displayName, nawet jeśli w treści podano dodatkowe pola.

Żądanie

curl -X PATCH \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "displayName": "Updated name"
  }' \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/connectorConfigs/$CONNECTOR_CONFIG_ID?updateMask=displayName"

Odpowiedź

{
  "name": "customers/my_customer/connectorConfigs/550E8400-E29B-41D4-A716-446655440000",
  "displayName": "Updated name",
  "type": "REPORTING",
  "details": {
    "googleSecOpsConfig": {
      "host": "example.googlesecops.com",
      "reportingSettings": {
        "enabledDefaultEvents": [
          "BROWSER_EXTENSION_INSTALL_EVENT"
        ],
        "enabledOptInEvents": [
          "PASSWORD_BREACH_EVENT"
        ],
        "enabledDeviceEvents": [
          "LOGIN_LOGOUT_EVENT"
        ]
      }
    }
  },
  "status": {
    "state": "ENABLED"
  }
}

Przykład 2. Brak maski aktualizacji (aktualizuje wszystkie pola w żądaniu)

Jeśli w ciągu zapytania żądania pominiesz parametr updateMask, zaktualizowane zostaną wszystkie pola podane w ładunku JSON.

Żądanie

curl -X PATCH \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "displayName": "Updated again",
    "details": {
      "googleSecOpsConfig": {
        "reportingSettings": {
          "enabledDefaultEvents": [
            "BROWSER_EXTENSION_INSTALL_EVENT",
            "CONTENT_TRANSFER_EVENT",
            "CONTENT_UNSCANNED_EVENT",
            "DATA_ACCESS_CONTROL_EVENT",
            "MALWARE_TRANSFER_EVENT"
          ]
        }
      }
    }
  }' \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/connectorConfigs/$CONNECTOR_CONFIG_ID"

Odpowiedź

{
  "name": "customers/my_customer/connectorConfigs/550E8400-E29B-41D4-A716-446655440000",
  "displayName": "Updated again",
  "type": "REPORTING",
  "details": {
    "googleSecOpsConfig": {
      "host": "example.googlesecops.com",
      "reportingSettings": {
        "enabledDefaultEvents": [
          "BROWSER_EXTENSION_INSTALL_EVENT",
          "CONTENT_TRANSFER_EVENT",
          "CONTENT_UNSCANNED_EVENT",
          "DATA_ACCESS_CONTROL_EVENT",
          "MALWARE_TRANSFER_EVENT"
        ],
        "enabledOptInEvents": [
          "PASSWORD_BREACH_EVENT"
        ],
        "enabledDeviceEvents": [
          "ALL_DEVICE_EVENTS"
        ]
      }
    }
  },
  "status": {
    "state": "ENABLED"
  }
}

Przykład 3. Maska aktualizacji * (pełna zamiana)

Ustawienie updateMask=* całkowicie zastępuje dotychczasową konfigurację treścią podaną w treści żądania.

Żądanie

curl -X PATCH \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "displayName": "New Updated Display Name",
    "type": "REPORTING",
    "details": {
      "googleSecOpsConfig": {
        "apiKey": "api-key",
        "host": "example.googlesecops.com",
        "reportingSettings": {
          "enabledOptInEvents": [
            "PASSWORD_BREACH_EVENT"
          ]
        }
      }
    }
  }' \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/connectorConfigs/$CONNECTOR_CONFIG_ID?updateMask=*"

Odpowiedź

{
  "name": "customers/my_customer/connectorConfigs/550E8400-E29B-41D4-A716-446655440000",
  "displayName": "New Updated Display Name",
  "type": "REPORTING",
  "details": {
    "googleSecOpsConfig": {
      "host": "example.googlesecops.com",
      "reportingSettings": {
        "enabledOptInEvents": [
          "PASSWORD_BREACH_EVENT"
        ]
      }
    }
  },
  "status": {
    "state": "ENABLED"
  }
}

Usuwanie konfiguracji oprogramowania sprzęgającego

Aby usunąć konfigurację złącza, użyj metody delete.

Żądanie

curl -X DELETE \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromemanagement.googleapis.com/v1/customers/$CUSTOMER/connectorConfigs/$CONNECTOR_CONFIG_ID"

Odpowiedź

{}