PROXIMITYBEACON

proximitybeacon.beaconinfo.getforobserved

enum_AdvertisedIdType := [ "TYPE_UNSPECIFIED", "EDDYSTONE", "IBEACON", "ALTBEACON", "EDDYSTONE_EID" ]

valid {
    input.Body.namespacedTypes[_] == STRING
    input.Body.observations[_].advertisedId.id == STRING
    input.Body.observations[_].advertisedId.type == enum_AdvertisedIdType[_]
    input.Body.observations[_].telemetry == STRING
    input.Body.observations[_].timestampMs == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.activate

valid {
    input.ReqMap.beaconName == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.attachments.batchDelete

valid {
    input.ReqMap.beaconName == STRING
    input.Qs.namespacedType == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.attachments.create

valid {
    input.Body.attachmentName == STRING
    input.Body.creationTimeMs == STRING
    input.Body.data == STRING
    input.Body.maxDistanceMeters == NUMBER
    input.Body.namespacedType == STRING
    input.ReqMap.beaconName == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.attachments.delete

valid {
    input.ReqMap.attachmentName == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.attachments.list

valid {
    input.ReqMap.beaconName == STRING
    input.Qs.namespacedType == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.deactivate

valid {
    input.ReqMap.beaconName == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.decommission

valid {
    input.ReqMap.beaconName == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.delete

valid {
    input.ReqMap.beaconName == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.diagnostics.list

enum_AlertFilterParameter := [ "ALERT_UNSPECIFIED", "WRONG_LOCATION", "LOW_BATTERY", "LOW_ACTIVITY" ]

valid {
    input.ReqMap.beaconName == STRING
    input.Qs.alertFilter == enum_AlertFilterParameter[_]
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.get

valid {
    input.ReqMap.beaconName == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.list

valid {
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.projectId == STRING
    input.Qs.q == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.register

enum_AdvertisedIdType := [ "TYPE_UNSPECIFIED", "EDDYSTONE", "IBEACON", "ALTBEACON", "EDDYSTONE_EID" ]
enum_BeaconExpectedStability := [ "STABILITY_UNSPECIFIED", "STABLE", "PORTABLE", "MOBILE", "ROVING" ]
enum_BeaconStatus := [ "STATUS_UNSPECIFIED", "ACTIVE", "DECOMMISSIONED", "INACTIVE" ]

valid {
    input.Body.advertisedId.id == STRING
    input.Body.advertisedId.type == enum_AdvertisedIdType[_]
    input.Body.beaconName == STRING
    input.Body.description == STRING
    input.Body.ephemeralIdRegistration.beaconEcdhPublicKey == STRING
    input.Body.ephemeralIdRegistration.beaconIdentityKey == STRING
    input.Body.ephemeralIdRegistration.initialClockValue == STRING
    input.Body.ephemeralIdRegistration.initialEid == STRING
    input.Body.ephemeralIdRegistration.rotationPeriodExponent == INTEGER
    input.Body.ephemeralIdRegistration.serviceEcdhPublicKey == STRING
    input.Body.expectedStability == enum_BeaconExpectedStability[_]
    input.Body.indoorLevel.name == STRING
    input.Body.latLng.latitude == NUMBER
    input.Body.latLng.longitude == NUMBER
    input.Body.placeId == STRING
    input.Body.properties.STRING == STRING
    input.Body.provisioningKey == STRING
    input.Body.status == enum_BeaconStatus[_]
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.beacons.update

enum_AdvertisedIdType := [ "TYPE_UNSPECIFIED", "EDDYSTONE", "IBEACON", "ALTBEACON", "EDDYSTONE_EID" ]
enum_BeaconExpectedStability := [ "STABILITY_UNSPECIFIED", "STABLE", "PORTABLE", "MOBILE", "ROVING" ]
enum_BeaconStatus := [ "STATUS_UNSPECIFIED", "ACTIVE", "DECOMMISSIONED", "INACTIVE" ]

valid {
    input.Body.advertisedId.id == STRING
    input.Body.advertisedId.type == enum_AdvertisedIdType[_]
    input.Body.beaconName == STRING
    input.Body.description == STRING
    input.Body.ephemeralIdRegistration.beaconEcdhPublicKey == STRING
    input.Body.ephemeralIdRegistration.beaconIdentityKey == STRING
    input.Body.ephemeralIdRegistration.initialClockValue == STRING
    input.Body.ephemeralIdRegistration.initialEid == STRING
    input.Body.ephemeralIdRegistration.rotationPeriodExponent == INTEGER
    input.Body.ephemeralIdRegistration.serviceEcdhPublicKey == STRING
    input.Body.expectedStability == enum_BeaconExpectedStability[_]
    input.Body.indoorLevel.name == STRING
    input.Body.latLng.latitude == NUMBER
    input.Body.latLng.longitude == NUMBER
    input.Body.placeId == STRING
    input.Body.properties.STRING == STRING
    input.Body.provisioningKey == STRING
    input.Body.status == enum_BeaconStatus[_]
    input.ReqMap.beaconName == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.getEidparams

valid {
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.namespaces.list

valid {
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}

proximitybeacon.namespaces.update

enum_NamespaceServingVisibility := [ "VISIBILITY_UNSPECIFIED", "UNLISTED", "PUBLIC" ]

valid {
    input.Body.namespaceName == STRING
    input.Body.servingVisibility == enum_NamespaceServingVisibility[_]
    input.ReqMap.namespaceName == STRING
    input.Qs.projectId == STRING
    input.ProviderMetadata.Region == STRING
}