コンテンツにスキップ

GraphQL 型定義一覧

Query / Mutation のレスポンスに含まれる型の定義をまとめます。

スカラー型(String, Int, Boolean, Time, Int64, Uint, Float)は省略しています。

目次


顧客情報

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

関連型: BulkOperationErrorItem

BulkUpdateMobileStatus

type BulkUpdateMobileStatus {
  status: Uint!                       # 0: 処理中 / 1: 完了 / 2: エラー
  errorList: [BulkOperationErrorItem]
}

関連型: 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 | 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!      # 送信日時
}