GraphQL 型定義一覧
Query / Mutation のレスポンスに含まれる型の定義をまとめます。
スカラー型(
String,Int,Boolean,Time,Int64,Uint,Float)は省略しています。
目次
- 顧客情報
- ユーザーアカウント・一括操作
- 端末情報
- 地点・目印
- 動態履歴
- メッセージ・定型文
- 設定(アイコン・通知・利用規約)
- 音声サービス
- LINE連携・Mobustation
- ダッシュボード
- ChatAPI・タグ
- 運転日報
- その他
顧客情報
Customer
type Customer {
code: String!
globalCode: String!
voipCode: String # 音声サービスの顧客コード(未登録の場合は null)
name: String!
buttonSetting: String # ボタン設定(JSON文字列)
parseButtonSetting: [ButtonSetting]
autoCloseSetting: String
reportSetting: String # レポート設定(JSON文字列)
parseReportSetting: ReportSetting
optionSettings: String # オプション設定(JSON文字列)
parseOptionSettings: OptionSettings
secretKey: String!
maxConnection: Int
maxConnectionForMobile: Int
dataHojiKikan: Int # データ保持期間(日)
secureAccess: Boolean
isSuspended: Boolean
isOptout: Boolean!
licenseCount: Int
mobiles: [Mobile]
chatHistoryDisplayDays: Int
}
関連型:
ButtonSetting|ReportSetting|OptionSettings|Mobile
ButtonSetting
# Customer.parseButtonSetting の要素
type ButtonSetting {
id: Int
value: Int
name: String
}
ReportSetting
# Customer.parseReportSetting
type ReportSetting {
localRoadSpeed: Int # 一般道制限速度
highwaySpeed: Int # 高速道路制限速度
formatType: Int # 1: 標準 / 2: 配送日報
optionChart: String # オプションチャート設定
rangeStartTime: Int # レポート作成時間範囲(開始)※0時からの分数
rangeEndTime: Int # レポート作成時間範囲(終了)※0時からの分数
}
OptionSettings
# Customer.parseOptionSettings
type OptionSettings {
mobileStateSetting: MobileStateSetting
addressBookSetting: AddressBookSetting
}
type MobileStateSetting {
speedAlarm: OverSpeedSetting
emergencyAlarm: EmergencySetting
displayLimit: Int
}
type AddressBookSetting {
limit: Int!
shortcutLimit: Int!
}
type OverSpeedSetting {
judgement: Boolean!
alarm: Boolean!
limit: Int!
}
type EmergencySetting {
judgement: Boolean!
alarm: Boolean!
}
OptionFunc
type OptionFunc {
customerCode: String
optionFuncCode: Int
}
CustomerOptionLicense
type CustomerOptionLicense {
customerCode: String!
options: [OptionLicense!] # mloca-api から取得
basicFuncs: [basicFuncInfoDescription!] # mloca-api から取得
voipOptions: VoipOptions # voip-api から取得(未登録の場合は null)
}
関連型:
OptionLicense|VoipOptions
OptionLicense
type OptionLicense {
optionFuncCode: Int!
optionFuncName: String!
description: String
descriptionUrl: String
trialDays: Int
monthlyFee: Float
startDate: String
endDate: String
status: Int! # 0: 無効 / 1: 有効 / 2: 期限切れ
isContracted: Boolean!
isTrial: Boolean!
isCheckDescription: Boolean!
}
VoipOptions
type VoipOptions {
optionCodes: [Int!]
trialOptions: [VoipTrialOption!]
}
type VoipTrialOption {
funcCode: Int!
endDate: Time!
cancelDate: Time
}
ユーザーアカウント・一括操作
UserAccount
type UserAccount {
id: Int!
loginId: String!
password: String!
name: String!
isAdmin: Boolean!
functionRestriction: Int! # ビット定義: 0x01=目印表示 / 0x02=目印登録 / 0x04=ルート検索
# 0x08=動態履歴 / 0x10=メッセージ送信 / 0x20=行先指示 / 0x40=レポート
chatID: String!
useIndivFilter: Boolean!
indivs: [Int64!] # フィルタリング対象端末IDリスト
useVPTGrpFilter: Boolean!
vptGrps: [Int!] # フィルタリング対象音声グループコードリスト
useLandmarkCategoryFilter: Boolean!
landmarkCategories: [Int!]
userMaxConnection: Int
saveMfaData: Boolean
mfaData: MfaData
}
関連型:
MfaData
MfaData
type MfaData {
id: Int!
key: String!
type: Int!
divisionId: Int!
authTarget: String!
}
BulkOperationUserAccountResponse
type BulkOperationUserAccountResponse {
jobId: String!
}
BulkUpdateMobileResponse
type BulkUpdateMobileResponse {
jobId: String!
}
BulkOperationUserAccountStatus
type BulkOperationUserAccountStatus {
status: Uint! # 0: 処理中 / 1: 完了 / 2: エラー
errorList: [BulkOperationErrorItem]
}
BulkUpdateMobileStatus
type BulkUpdateMobileStatus {
status: Uint! # 0: 処理中 / 1: 完了 / 2: エラー
errorList: [BulkOperationErrorItem]
}
BulkOperationErrorItem
type BulkOperationErrorItem {
errorCode: String!
message: String!
}
端末情報
Mobile
type Mobile {
id: Int64!
customerCode: String!
num: String! # 局番
name: String!
communicationModuleID: Int64
productType: Uint!
productTypeName: String!
productOption: Uint!
productOptionName: [String!]
productVersion: String!
productSerial: String!
chatID: String
isSuspended: Boolean!
communicationModule: CommunicationModule
userAgent: UserAgent # 音声サービスのユーザーエージェント情報
tags: [TagSummaryInfo]
}
関連型:
CommunicationModule|UserAgent|TagSummaryInfo
CommunicationModule
type CommunicationModule {
id: Int64!
ipaddress: String!
ggwTerminalID: String!
did: String!
}
TagSummaryInfo
type TagSummaryInfo {
tagId: Int
tagName: String
}
MobilesByStatusResponse
type MobilesByStatusResponse {
stateId: String!
stateValues: [StateValue]
totalCount: Int!
}
関連型:
StateValue
StateValue
type StateValue {
stateValue: String!
count: Int!
mobileIds: [Int64]
}
地点・目印
PlaceList
type PlaceList {
places: [Place]
totalCount: Int64
}
関連型:
Place
Place
type Place {
id: Int64
name: String
yomi: String
short: String # 略称
org: String # 組織ID
icon: Int # アイコンID
latitude: Float
longitude: Float
address: String
remarks: String
isVisibleOnmap: Boolean
category: PlaceCategory
geofence: Geofence # geo-api のジオフェンス情報
landmarkGeofence: LandmarkGeofence # MGate のジオフェンス情報
creationTime: String
}
関連型:
PlaceCategory|Geofence|LandmarkGeofence
PlaceCategory
type PlaceCategory {
id: Int64!
name: String!
org: String!
}
Geofence
type Geofence {
id: String
areaEnter: String # 入場判定境界(円: 中心座標+半径 / ポリゴン: 頂点座標)
areaExit: String # 出場判定境界
areaEnterType: Int # 1: 円 / 2: ポリゴン
areaExitType: Int
targets: [String!] # 対象端末一覧(空の場合は全台)
}
LandmarkGeofence
type LandmarkGeofence {
placeId: Int64!
radius: Int! # 半径(m)
}
LandmarkShortcut
type LandmarkShortcut {
placeId: Int64!
userAccountId: Int!
zoom: Int
sortOrder: Int!
}
動態履歴
SearchHistoryResponse
type SearchHistoryResponse {
histories: [MobileStateHistory] # 詳細は schema.graphqls を参照
totalCount: Int
}
StateHistoryListByMobileResponse
# mobileStateHistoryByMobileList のレスポンス要素
type StateHistoryListByMobileResponse {
mobileId: Int64!
histories: [StateHistoryWithGeofence] # 詳細は schema.graphqls を参照
}
SearchLandmarkGeofenceHistoryResponse
type SearchLandmarkGeofenceHistoryResponse {
histories: [LandmarkGeofenceHistory] # 詳細は schema.graphqls を参照
totalCount: Int64!
}
LandmarkGeofenceHeaderResponse
type LandmarkGeofenceHeaderResponse {
landmarks: [Landmark] # 詳細は schema.graphqls を参照
totalCount: Int64!
}
MobileStateHistoryMileage
type MobileStateHistoryMileage {
mobileId: Int64!
dailyMileage: Int64
monthlyMileage: Int64!
}
DrivingAndVelocityHistoryResponse
type DrivingAndVelocityHistoryResponse {
mobileId: Int64!
histories: [DrivingAndVelocityHistory]
speedLimit: Int!
}
type DrivingAndVelocityHistory {
number: String! # 局番
gpsTime: Time!
acc: Uint!
time: Int64!
velocity: Float!
}
メッセージ・定型文
SearchMessageResponse
type SearchMessageResponse {
message: [Message]
totalCount: Int64
}
関連型:
Message
Message
type Message {
id: String!
customerCode: String!
subject: String!
body: String!
isScheduled: Boolean!
sendStatus: Uint!
sendID: Int!
sendToMobiles: [Int64]
sendToVPTGrps: [Int64]
creationUserAccountID: Int64!
creationUserAccountName: String!
delPart: Int!
creationTime: Time!
messageStatuses: [MessageStatus]
}
関連型:
MessageStatus
MessageStatus
type MessageStatus {
messageId: String!
customerCode: String!
mobileID: Int64!
sendStatus: Uint!
readStatus: Uint!
delPart: Int!
creationTime: Time
modifiedTime: Time
}
MessageFixedForm
type MessageFixedForm {
id: String!
subject: String!
body: String!
}
設定(アイコン・通知・利用規約)
CustomerStateIconSettings
type CustomerStateIconSettings {
code: String!
bizButtonCount: Int!
bizButtonCancelMode: Int!
iconSettings: [StateIconSetting]
groupIconSettings: [GrpIconSetting] # voip-api から取得した音声グループのアイコン設定
}
関連型:
StateIconSetting|GrpIconSetting
StateIconSetting
type StateIconSetting {
stateId: String!
stateValue: String!
stateName: String!
color1: String!
color2: String!
color3: String!
priority: Int!
isActive: Boolean!
other: Any
}
GrpIconSetting
type GrpIconSetting {
groupCode: Int! # 音声グループコード
groupName: String!
color1: String!
color2: String!
}
CustomerFileIconSettings
type CustomerFileIconSettings {
code: String
settingCount: Int
iconSettings: [FileIconSettingV2]
}
関連型:
FileIconSettingV2
FileIconSettingV2
type FileIconSettingV2 {
settingId: Int!
label: String!
icon: Int!
isActive: Boolean!
}
EventNotificationSetting
type EventNotificationSetting {
id: Int64!
name: String!
userAccountId: Int64!
serviceCode: Int!
selectEvent: SelectEvent!
useSelectMobile: Boolean!
excludedMobiles: [String]
webhookUrl: String
creationTime: Time
modifiedTime: Time
}
関連型:
SelectEvent
SelectEvent
type SelectEvent {
eventCode: [String!]
BizButtonEvent: [Int!]
GeofenceEvent: [Int!]
}
SysInformationResponse
type SysInformationResponse {
informations: [Information]
totalCount: Int64
}
関連型:
Information
Information
type Information {
id: String!
org: String
title: String!
body: String!
title_en: String
body_en: String
create: Time!
start: Time!
end: Time
isDelete: Boolean
}
Term
type Term {
id: Int!
url: String!
creationTime: Time
}
TermAgreement
type TermAgreement {
termId: Int!
customerCode: String!
userAccountId: Int!
requestJson: String
creationTime: Time
}
音声サービス
UserAgent
type UserAgent {
code: String!
ipaddress: String
ggwTerminalID: String
uid: String
network: String!
mainGroupNumber: String
groups: [String!]
}
UserAgentListResponse
type UserAgentListResponse {
userAgents: [UserAgent]
totalCount: Int
}
関連型:
UserAgent
VoipGroup
type VoipGroup {
code: String!
name: String!
}
VoipGroupListResponse
type VoipGroupListResponse {
groups: [VoipGroup]
totalCount: Int
}
関連型:
VoipGroup
VoipSession
type VoipSession {
sessionId: String!
tsuuwaKbn: Int! # 0: 指令局通話 / 1: 個別通話 / 2: 一斉通話 / 3: 配車伝票通話
# 4: 周辺通話 / 5: 全指令局通話 / 6: チャンネル通話 / 7: 050通話 / 9: モニタリング
invoker: String! # 発信者
members: String! # 通話対象局番
joinMembers: String! # 通話参加局番
groupCd: String!
startTime: Time!
endTime: Time!
totalTimes: Int64! # 通話時間(ミリ秒)
summary: String # 要約(要約機能無効の顧客は null)
isRecordingOptionEnabled: Boolean
recordingFileKey: String
}
VoipSessionListResponse
type VoipSessionListResponse {
sessions: [VoipSession]
totalCount: Int
}
関連型:
VoipSession
VoipSessionWavResponse
type VoipSessionWavResponse {
recordingFilePath: String
}
VoipTranscription
type VoipTranscription {
invoker: String! # 発話者
startTime: Time!
text: String! # 文字起こしデータ
}
VoipTranscriptionListResponse
type VoipTranscriptionListResponse {
transcriptions: [VoipTranscription]
totalCount: Int
}
関連型:
VoipTranscription
LINE連携・Mobustation
LineChannel
type LineChannel {
id: Int! # LINEBUS のチャンネル管理ID(DBで一意)
channelId: String!
channelSecret: String!
channelAccessToken: String!
liffId: String!
liffTitile: String
password: LineChannelPassword
customerSetting: LineCustomer
}
関連型:
LineChannelPassword|LineCustomer
LineChannelPassword
type LineChannelPassword {
password: String
modifiedTime: Time
}
LineCustomer
type LineCustomer {
customerCode: String!
gtfsFeedID: Int64
useReceptCode: Boolean
useApproachNotification: Boolean
}
LineDisplaySetting
type LineDisplaySetting {
disableTime: LineDisableTime
devices: [LineDisplayDevice]
}
関連型:
LineDisableTime|LineDisplayDevice
LineDisableTime
type LineDisableTime {
startTime: String!
endTime: String!
disable: Boolean!
}
LineDisplayDevice
type LineDisplayDevice {
deviceId: Int64!
deviceName: String
deviceNumber: String
deviceIconUrl: String
filter1: String
filter2: String
filter3: String
filter4: String
filter5: String
disableTime: LineDisableTime
}
関連型:
LineDisableTime
LineReceptCode
# LINE連携(物流edition):受付コード設定
type LineReceptCode {
receptCode: String!
deviceIds: [Int64!]!
}
LineBusLocaEnvResponse
type LineBusLocaEnvResponse {
gtfsFeedInfo: GtfsFeedInfo
token: String # mloca-api のトークン(GTFSフィードIDが存在する場合のみ)
}
関連型:
GtfsFeedInfo
GtfsFeedInfo
type GtfsFeedInfo {
gtfsFeedID: Int64!
versions: [GtfsFeedVersion]
useApproachNotification: Boolean
}
type GtfsFeedVersion {
id: Int!
version: String!
startTime: String!
endTime: String!
timezone: String!
calendars: [Calendar]
}
type Calendar {
serviceId: String!
serviceIdInFeed: String!
startTime: String!
endTime: String!
timezone: String!
}
LineOperationPlan
type LineOperationPlan {
gtfsFeedVersion: Int64!
plans: [RouteInfo]
}
type RouteInfo {
routeId: String!
routeIdInFeed: String!
longName: String!
shortName: String!
trips: [TripInfo]
}
type TripInfo {
tripId: String!
tripIdInFeed: String!
firstStopTime: StopInfo!
lastStopTime: StopInfo!
operationDevice: Int64
}
type StopInfo {
arrivalTime: String!
departureTime: String!
stopIdInFeed: String!
name: String!
}
CurrentTripListResponse
type CurrentTripListResponse {
trips: [CurrentTripInfo]
totalCount: Int
}
関連型:
CurrentTripInfo
CurrentTripInfo
type CurrentTripInfo {
tripIdInFeed: String!
firstStopTime: String! # 最初の停留所の発時間
routeIdInFeed: String!
longName: String! # 経路名
shortName: String! # 経路略称
deviceId: Int64! # 運行車両
stopTimeUpdate: StopTimeUpdate
finished: Boolean
}
type StopTimeUpdate {
type: Int! # 0: 着 / 1: 発 / 2: 発着判定なし
stopSequence: Int
}
ダッシュボード
DashboardSettingResponse
type DashboardSettingResponse {
id: String!
max: Int! # ダッシュボードの登録上限数
dashboards: [Dashboard]
externalApis: [ExternalApi]
widgetOptions: [String!]
}
関連型:
Dashboard|ExternalApi
Dashboard
type Dashboard {
id: String!
title: String!
number: Int! # 表示順
widgetCount: Int!
}
ExternalApi
type ExternalApi {
id: String!
name: String!
baseUrl: String!
authType: Int!
authInfo: String!
extJson: String!
}
Widget
type Widget {
id: String!
title: String!
type: String! # 表示種別
dataType: String! # 表示データ種別
x: Int! # 表示位置(X座標)
y: Int! # 表示位置(Y座標)
width: Int!
height: Int!
settings: [String!]
}
WidgetOption
type WidgetOption {
id: String!
name: String!
charge: Boolean! # 課金フラグ
remarks: String!
}
ChatAPI・タグ
ChatTeamResponse
type ChatTeamResponse {
id: String!
name: String!
}
ChatChannelsResponse
type ChatChannelsResponse {
channels: [ChatChannel!]
}
関連型:
ChatChannel
ChatChannel
type ChatChannel {
id: String!
name: String!
type: String! # D: ダイレクト / G: グループ
teamId: String!
searchKey: String!
}
LoadMessageResponse
type LoadMessageResponse {
messages: [PostInfo] # 詳細は schema.graphqls を参照
}
ChatFileDownloadInfo
type ChatFileDownloadInfo {
path: String # S3署名付きURL
expiration: Time # URLの有効期限
}
ChatWebSocketUrlResponse
type ChatWebSocketUrlResponse {
uri: String!
path: String!
}
ChatTokenInfo
type ChatTokenInfo {
token: String!
refreshToken: String!
}
Tag
type Tag {
customerCode: String!
tagInfo: [TagInfo!]!
}
関連型:
TagInfo
TagInfo
type TagInfo {
id: Int!
name: String!
mobiles: [String!]!
}
運転日報
DrivingReportsResponse
type DrivingReportsResponse {
processId: String # 処理を追跡するためのプロセスID
}
DrivingReportsStatus
type DrivingReportsStatus {
status: Uint! # 0: 処理中 / 1: 完了 / 2: エラー
file: DrivingReport
errorList: [DrivingReportErrorInfo]
}
DrivingReport
type DrivingReport {
path: String # S3署名付きURL
expiration: Time # URLの有効期限
}
DrivingReportErrorInfo
type DrivingReportErrorInfo {
driver: DriverInfo
errorCode: String!
message: String!
}
type DriverInfo {
mobileId: String!
employeeCode: String
employeeName: String
}
その他
SearchEscortHistoryResponse
type SearchEscortHistoryResponse {
histories: [EscortHistory]
totalCount: Int
}
関連型:
EscortHistory
EscortHistory
type EscortHistory {
id: String!
creationUserAccountID: Int64!
sendToMobile: Int64
lat: Float!
lon: Float!
name: String!
address: String!
message: String!
rule: Uint! # 0: 推奨 / 1: 距離優先 / 2: 幹線優先
charge: Uint! # 0: 通常 / 1: 回避
ferry: Uint! # 0: 通常 / 1: 優先 / 2: 回避
sendStatus: Uint! # 0: 未送信 / 1: 送信中 / 2: 送信済 / 3: 送信失敗
sendDate: Time!
}
DownloadHistory
type DownloadHistory {
id: String!
customerCode: String!
userAccountId: Int64!
status: Int!
statusReason: String
condition: String
dlFileName: String
startTime: Time
endTime: Time
}
InfosenceRollCallInfoResponse
type InfosenceRollCallInfoResponse {
rollCallInfo: [RollCallInfo]
totalCount: Int
}
関連型:
RollCallInfo
RollCallInfo
type RollCallInfo {
rollCallId: Int
rollCallStatus: String!
rollCallStatusView: String! # 表示用ステータス
driverName: String!
carManagementNumber: String!
beforeRollCallPlanTime: String! # 乗務前点呼予定時間
beforeAdministratorTime: String! # 乗務前点呼執行日時
beforeAlcoholValue: Float # 乗務前アルコール計測値
beforeInterviewStatus: String! # 確認事項回答判定結果
afterRollCallPlanTime: String! # 乗務後点呼予定時間
afterAdministratorTime: String! # 乗務後点呼執行日時
afterAlcoholValue: Float # 乗務後アルコール計測値
middleRollCallPlanTime: String! # 中間点呼予定時間
middleAdministratorTime: String! # 中間点呼執行日時
middleAlcoholValue: Float # 中間点呼アルコール計測値
middleInterviewStatus: String! # 中間点呼確認事項回答判定結果
}
MlocaWebApiPassword
type MlocaWebApiPassword {
id: String!
password: String! # 半角英数8文字
expiration: Time!
}
basicFuncPopupsResponse
type basicFuncPopupsResponse {
basicFuncs: [basicFuncPopupsInfo!]! # 詳細は schema.graphqls を参照
}
basicFuncInfoResponse
type basicFuncInfoResponse {
basicFuncInfoDescriptions: [basicFuncInfoDescription!]! # 詳細は schema.graphqls を参照
}
Mutation レスポンス共通型
UserToken
type UserToken {
accessToken: String
idToken: String
expiresIn: Int
refreshToken: String
}
UserTokenWithMfa
type UserTokenWithMfa {
accessToken: String
idToken: String
expiresIn: Int
refreshToken: String
mfa: Int # MFA 設定有無
authId: Int
userId: String
authMethod: Int
optionCodes: [Int]
}
MessageSendResponse
type MessageSendResponse {
messageId: String!
sendId: Int
Status: [MessageSendStatus]
}
関連型:
MessageSendStatus
MessageSendStatus
type MessageSendStatus {
type: Uint! # 1: 閉域 / 2: 広域
status: Uint! # 0: 未送信 / 1: 送信中 / 2: 送信済み / 3: 送信失敗
message: String!
}
DashboardUpsertResponse
type DashboardUpsertResponse {
id: String! # 登録または更新したID
}
DirectChannelCreatedPayload
type DirectChannelCreatedPayload {
channelId: String!
name: String!
memberIds: [String!]!
searchKey: String
}
AuditLogData
type AuditLogData {
id: Int!
operationTime: String!
customerCd: String!
operationUserId: String!
ipAddress: String!
operationTypeId: Int!
operationCategory: Int!
auditLogDataDetails: [AuditLogDataDetail]
}
関連型:
AuditLogDataDetail
AuditLogDataDetail
type AuditLogDataDetail {
id: Int!
operationTime: String!
auditLogDataId: Int!
tableNameId: Int!
recordId: String!
detailInfo: String
originalValues: String
updateValues: String
displayName: String
}
OperationTypeResponse
type OperationTypeResponse {
id: Int!
sys: String!
operationTypeName: String!
}
SendEscortResponse
type SendEscortResponse {
id: String! # 送信したエスコート配車指示ID
sendStatus: Uint! # 送信状態
sendDate: Time! # 送信日時
}