Skip to main content

DeviceShareModel

No description

type DeviceShareModel {
id: UUID!
organizationId: String!
projectId: UUID!
deviceId: UUID!
createdAt: DateTime!
expiredAt: DateTime!
allowedTagKeys: [String!]
allowedDeviceProperties: [String!]
isActive: Boolean!
shareUrl: String
device: DeviceModel
projectName: String
}

Fields​

DeviceShareModel.id ● UUID! non-null scalar​

DeviceShareModel.organizationId ● String! non-null scalar​

DeviceShareModel.projectId ● UUID! non-null scalar​

DeviceShareModel.deviceId ● UUID! non-null scalar​

DeviceShareModel.createdAt ● DateTime! non-null scalar​

DeviceShareModel.expiredAt ● DateTime! non-null scalar​

DeviceShareModel.allowedTagKeys ● [String!] list scalar​

DeviceShareModel.allowedDeviceProperties ● [String!] list scalar​

DeviceShareModel.isActive ● Boolean! non-null scalar​

DeviceShareModel.shareUrl ● String scalar​

このデバイス共有に受信者がアクセスするための共有 URL。 クエリごとに新たに署名したマジックリンクトークンを含む。 DeviceShare 以外の actor にのみ返される。

DeviceShareModel.device ● DeviceModel object​

DataLoader を使って関連するデバイスをロードする。 allowed_device_properties に基づいてデバイスのフィールドをフィルタする。 None は全拒否を意味する(allowed_tag_keys と同じ意味)。 フィルタ対象のキー: "name", "mac_addresses", "serial_number", "os", "version", "key_updated_at", "site"。 "did" と "created_at" は常に公開される(スキーマ上 non-nullable)。 対象の device が削除済みの場合は None を返す。share の一覧取得と この device フィールドの解決の間に device が削除されると一時的に 発生しうるため、一覧クエリの堅牢性を保つためこのフィールドは nullable にしている。

DeviceShareModel.projectName ● String scalar​

プロジェクト名をロードする。 DeviceShare actor にプロジェクトの機微なフィールドを晒さないよう、名前のみ返す。 DeviceShare actor の場合、"project_name" が allowed_device_properties に 含まれていなければ None を返す(None = 全拒否)。

Returned By​

createDeviceShare mutation ● deviceShare query ● deviceShares query