Mendato API

API Reference for Mendato API

Terms of Service

https://www.mendato.com/agb

API Endpoints
https://api.mendato.com/graphql
Version

1.3.0

Queries

absenceTypes

Response

Returns [AbsenceTypeDefinition!]!

Example

Query
query absenceTypes {
  absenceTypes {
    type
    label
    paid
    deductsFromVacationQuota
  }
}
Response
{
  "data": {
    "absenceTypes": [
      {
        "type": "VACATION",
        "label": "abc123",
        "paid": false,
        "deductsFromVacationQuota": true
      }
    ]
  }
}

company

Response

Returns a Company

Example

Query
query company {
  company {
    id
    companyName
    legalForm
    streetAddress
    zip
    city
    country
    language
    currency
    taxNumber
    vatId
    email
    phone
    fax
    website
    iban
    bic
    registerCourt
    companyRegistrationNumber
    managingDirectors {
      ...ManagingDirectorFragment
    }
    logoUrl
    createdAt
  }
}
Response
{
  "data": {
    "company": {
      "id": "4",
      "companyName": "abc123",
      "legalForm": "DE_EINZELUNTERNEHMER",
      "streetAddress": "xyz789",
      "zip": "xyz789",
      "city": "abc123",
      "country": "US",
      "language": LanguageTag,
      "currency": CurrencyCode,
      "taxNumber": "xyz789",
      "vatId": "xyz789",
      "email": "xyz789",
      "phone": "abc123",
      "fax": "abc123",
      "website": "xyz789",
      "iban": "xyz789",
      "bic": "xyz789",
      "registerCourt": "abc123",
      "companyRegistrationNumber": "abc123",
      "managingDirectors": [ManagingDirector],
      "logoUrl": "http://www.test.com/",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

creditNote

Response

Returns a CreditNote

Arguments
Name Description
id - ID!

Example

Query
query creditNote($id: ID!) {
  creditNote(id: $id) {
    id
    company {
      ...CompanyFragment
    }
    subcontractor {
      ...SubcontractorFragment
    }
    subcontractorContactPerson {
      ...SubcontractorContactPersonFragment
    }
    type
    status
    number
    numberPrefix
    numberSuffix
    items {
      ...CreditNoteItemFragment
    }
    totalAmount
    totalNetAmount
    dueDate
    dueDateFormat
    hideDueDateText
    creditNoteDate
    deliveryDate {
      ... on SingleDate {
        ...SingleDateFragment
      }
      ... on DateRange {
        ...DateRangeFragment
      }
    }
    hasKleinunternehmerregelung
    introductionText
    closingText
    isNegative
    creditNotePdf
    sentManually
    completedAt
    sentAt
    paidAt
    cancelledAt
    language
    currency
    createdAt
    payments {
      ...PaymentFragment
    }
    originalCreditNote {
      ...CreditNoteFragment
    }
    cancellationCreditNote {
      ...CreditNoteFragment
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "creditNote": {
      "id": 4,
      "company": Company,
      "subcontractor": Subcontractor,
      "subcontractorContactPerson": SubcontractorContactPerson,
      "type": "CREDIT_NOTE",
      "status": "DRAFT",
      "number": 123,
      "numberPrefix": "xyz789",
      "numberSuffix": "xyz789",
      "items": [CreditNoteItem],
      "totalAmount": 123,
      "totalNetAmount": 987,
      "dueDate": "2007-12-03",
      "dueDateFormat": "DAYS",
      "hideDueDateText": false,
      "creditNoteDate": "2007-12-03",
      "deliveryDate": SingleDate,
      "hasKleinunternehmerregelung": false,
      "introductionText": "xyz789",
      "closingText": "abc123",
      "isNegative": true,
      "creditNotePdf": "abc123",
      "sentManually": false,
      "completedAt": "2007-12-03T10:15:30Z",
      "sentAt": "2007-12-03T10:15:30Z",
      "paidAt": "2007-12-03",
      "cancelledAt": "2007-12-03",
      "language": LanguageTag,
      "currency": CurrencyCode,
      "createdAt": "2007-12-03T10:15:30Z",
      "payments": [Payment],
      "originalCreditNote": CreditNote,
      "cancellationCreditNote": CreditNote
    }
  }
}

creditNoteDraft

Response

Returns a CreditNoteDraft

Arguments
Name Description
creditNoteId - ID

Example

Query
query creditNoteDraft($creditNoteId: ID) {
  creditNoteDraft(creditNoteId: $creditNoteId) {
    subcontractor {
      ...SubcontractorFragment
    }
    subcontractorContactPerson {
      ...SubcontractorContactPersonFragment
    }
    status
    number
    dueDate
    dueDateFormat
    hideDueDateText
    creditNoteDate
    deliveryDate {
      ... on SingleDate {
        ...SingleDateFragment
      }
      ... on DateRange {
        ...DateRangeFragment
      }
    }
    items {
      ...CreditNoteDraftItemFragment
    }
    introductionText
    closingText
    language
    currency
  }
}
Variables
{"creditNoteId": 4}
Response
{
  "data": {
    "creditNoteDraft": {
      "subcontractor": Subcontractor,
      "subcontractorContactPerson": SubcontractorContactPerson,
      "status": "DRAFT",
      "number": 123,
      "dueDate": "2007-12-03",
      "dueDateFormat": "DAYS",
      "hideDueDateText": false,
      "creditNoteDate": "2007-12-03",
      "deliveryDate": SingleDate,
      "items": [CreditNoteDraftItem],
      "introductionText": "xyz789",
      "closingText": "xyz789",
      "language": LanguageTag,
      "currency": CurrencyCode
    }
  }
}

creditNoteItem

Response

Returns a CreditNoteItem

Arguments
Name Description
id - ID!

Example

Query
query creditNoteItem($id: ID!) {
  creditNoteItem(id: $id) {
    id
    position
    title
    description
    quantity
    unitPrice
    taxRate
    unit
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "creditNoteItem": {
      "id": "4",
      "position": 987,
      "title": "xyz789",
      "description": "abc123",
      "quantity": 123.45,
      "unitPrice": 123,
      "taxRate": 123.45,
      "unit": "xyz789",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

creditNotes

Response

Returns a CreditNoteConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query for numberPrefix and number, subcontractor name or item title
status - [CreditNoteStatus!] Only credit notes with one of the given statuses will be returned
creditNoteDateFrom - Date Only credit notes with credit note date at this date or later will be returned
creditNoteDateTo - Date Only credit notes with credit note date up to and including this date will be returned
dueDateFrom - Date
dueDateTo - Date
createdFrom - Date Only credit notes created at this date or later will be returned
createdTo - Date Only credit notes created up to and including this date will be returned
isCompleted - Boolean
isPaid - Boolean isPaid: false returns outstanding credit notes (not paid and not cancelled)
subcontractorId - ID
objectId - ID Only credit notes with at least one item assigned to this object
orderBy - CreditNoteOrder

Example

Query
query creditNotes(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $status: [CreditNoteStatus!],
  $creditNoteDateFrom: Date,
  $creditNoteDateTo: Date,
  $dueDateFrom: Date,
  $dueDateTo: Date,
  $createdFrom: Date,
  $createdTo: Date,
  $isCompleted: Boolean,
  $isPaid: Boolean,
  $subcontractorId: ID,
  $objectId: ID,
  $orderBy: CreditNoteOrder
) {
  creditNotes(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    status: $status,
    creditNoteDateFrom: $creditNoteDateFrom,
    creditNoteDateTo: $creditNoteDateTo,
    dueDateFrom: $dueDateFrom,
    dueDateTo: $dueDateTo,
    createdFrom: $createdFrom,
    createdTo: $createdTo,
    isCompleted: $isCompleted,
    isPaid: $isPaid,
    subcontractorId: $subcontractorId,
    objectId: $objectId,
    orderBy: $orderBy
  ) {
    edges {
      ...CreditNoteEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "abc123",
  "first": 987,
  "last": 987,
  "query": "xyz789",
  "status": ["DRAFT"],
  "creditNoteDateFrom": "2007-12-03",
  "creditNoteDateTo": "2007-12-03",
  "dueDateFrom": "2007-12-03",
  "dueDateTo": "2007-12-03",
  "createdFrom": "2007-12-03",
  "createdTo": "2007-12-03",
  "isCompleted": true,
  "isPaid": true,
  "subcontractorId": 4,
  "objectId": "4",
  "orderBy": CreditNoteOrder
}
Response
{
  "data": {
    "creditNotes": {
      "edges": [CreditNoteEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

customer

Response

Returns a Customer

Arguments
Name Description
id - ID!

Example

Query
query customer($id: ID!) {
  customer(id: $id) {
    id
    number
    type
    salutation
    firstName
    lastName
    companyName
    addressSupplement
    streetAddress
    zip
    city
    country
    emails {
      ...CustomerEmailFragment
    }
    phone
    fax
    website
    vatId
    datevAccount
    sellerIdentifier
    leitwegId
    invoiceSettings {
      ...CustomerInvoiceSettingsFragment
    }
    note
    tags
    createdAt
    invoices {
      ...InvoiceConnectionFragment
    }
    estimates {
      ...EstimateConnectionFragment
    }
    receipts {
      ...ReceiptConnectionFragment
    }
    objects {
      ...ObjectConnectionFragment
    }
    contactPersons {
      ...CustomerContactPersonConnectionFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "customer": {
      "id": "4",
      "number": 123,
      "type": "PERSON",
      "salutation": "abc123",
      "firstName": "xyz789",
      "lastName": "abc123",
      "companyName": "xyz789",
      "addressSupplement": "abc123",
      "streetAddress": "xyz789",
      "zip": "abc123",
      "city": "abc123",
      "country": "US",
      "emails": [CustomerEmail],
      "phone": "abc123",
      "fax": "abc123",
      "website": "abc123",
      "vatId": "abc123",
      "datevAccount": 987,
      "sellerIdentifier": "abc123",
      "leitwegId": "xyz789",
      "invoiceSettings": CustomerInvoiceSettings,
      "note": "abc123",
      "tags": ["abc123"],
      "createdAt": "2007-12-03T10:15:30Z",
      "invoices": InvoiceConnection,
      "estimates": EstimateConnection,
      "receipts": ReceiptConnection,
      "objects": ObjectConnection,
      "contactPersons": CustomerContactPersonConnection
    }
  }
}

customerContactPerson

Response

Returns a CustomerContactPerson

Arguments
Name Description
id - ID!

Example

Query
query customerContactPerson($id: ID!) {
  customerContactPerson(id: $id) {
    id
    isDefault
    salutation
    firstName
    lastName
    role
    email
    phone
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "customerContactPerson": {
      "id": 4,
      "isDefault": false,
      "salutation": "abc123",
      "firstName": "abc123",
      "lastName": "xyz789",
      "role": "xyz789",
      "email": "abc123",
      "phone": "abc123",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

customers

Response

Returns a CustomerConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query for number, name, addressSupplement, email or contact person name

Example

Query
query customers(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String
) {
  customers(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query
  ) {
    edges {
      ...CustomerEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "xyz789",
  "first": 987,
  "last": 123,
  "query": "xyz789"
}
Response
{
  "data": {
    "customers": {
      "edges": [CustomerEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

employee

Response

Returns an Employee

Arguments
Name Description
id - ID!

Example

Query
query employee($id: ID!) {
  employee(id: $id) {
    id
    salutation
    firstName
    lastName
    status
    cancelDate
    addressSupplement
    streetAddress
    zip
    city
    country
    state {
      ...StateFragment
    }
    email
    phone
    birthDate
    personnelNumberPrefix
    personnelNumber
    fullPersonnelNumber
    note
    hasDrivingLicenceClassB
    locationBasedTimeRecording
    createdAt
    profilePicture {
      ...EmployeeProfilePictureFragment
    }
    timeAccount {
      ...EmployeeTimeAccountFragment
    }
    activeWorkingTimeModel {
      ...EmployeeWorkingTimeModelFragment
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "employee": {
      "id": 4,
      "salutation": "abc123",
      "firstName": "xyz789",
      "lastName": "abc123",
      "status": "IDLE",
      "cancelDate": "2007-12-03",
      "addressSupplement": "xyz789",
      "streetAddress": "xyz789",
      "zip": "xyz789",
      "city": "xyz789",
      "country": "US",
      "state": State,
      "email": "abc123",
      "phone": "xyz789",
      "birthDate": "2007-12-03",
      "personnelNumberPrefix": "abc123",
      "personnelNumber": 987,
      "fullPersonnelNumber": "abc123",
      "note": "xyz789",
      "hasDrivingLicenceClassB": false,
      "locationBasedTimeRecording": true,
      "createdAt": "2007-12-03T10:15:30Z",
      "profilePicture": EmployeeProfilePicture,
      "timeAccount": EmployeeTimeAccount,
      "activeWorkingTimeModel": EmployeeWorkingTimeModel
    }
  }
}

employees

Response

Returns an EmployeeConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
ids - [ID!] Ids of employees to query for
query - String Query for name or personnel number
status - EmployeeStatus
statusCheckDate - Date Check the EmployeeStatus at this date
serviceId - ID
cityOrZip - String
hasDrivingLicenceClassB - Boolean
orderBy - EmployeeOrder

Example

Query
query employees(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $ids: [ID!],
  $query: String,
  $status: EmployeeStatus,
  $statusCheckDate: Date,
  $serviceId: ID,
  $cityOrZip: String,
  $hasDrivingLicenceClassB: Boolean,
  $orderBy: EmployeeOrder
) {
  employees(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    ids: $ids,
    query: $query,
    status: $status,
    statusCheckDate: $statusCheckDate,
    serviceId: $serviceId,
    cityOrZip: $cityOrZip,
    hasDrivingLicenceClassB: $hasDrivingLicenceClassB,
    orderBy: $orderBy
  ) {
    edges {
      ...EmployeeEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 987,
  "last": 987,
  "ids": [4],
  "query": "xyz789",
  "status": "IDLE",
  "statusCheckDate": "2007-12-03",
  "serviceId": "4",
  "cityOrZip": "abc123",
  "hasDrivingLicenceClassB": true,
  "orderBy": EmployeeOrder
}
Response
{
  "data": {
    "employees": {
      "edges": [EmployeeEdge],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

estimate

Response

Returns an Estimate

Arguments
Name Description
id - ID!

Example

Query
query estimate($id: ID!) {
  estimate(id: $id) {
    id
    company {
      ...CompanyFragment
    }
    customer {
      ...CustomerFragment
    }
    status
    number
    numberPrefix
    items {
      ...EstimateItemFragment
    }
    estimateDate
    validityDate
    hasKleinunternehmerregelung
    introductionText
    closingText
    estimatePdf
    webUrl
    webEnabled
    isAnsweredByCustomer
    declineReason
    declineNote
    sentManually
    completedAt
    sentAt
    acceptedAt
    declinedAt
    language
    currency
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "estimate": {
      "id": 4,
      "company": Company,
      "customer": Customer,
      "status": "DRAFT",
      "number": 987,
      "numberPrefix": "abc123",
      "items": [EstimateItem],
      "estimateDate": "2007-12-03",
      "validityDate": "2007-12-03",
      "hasKleinunternehmerregelung": true,
      "introductionText": "xyz789",
      "closingText": "abc123",
      "estimatePdf": "xyz789",
      "webUrl": "http://www.test.com/",
      "webEnabled": false,
      "isAnsweredByCustomer": false,
      "declineReason": "PRICE_TOO_HIGH",
      "declineNote": "xyz789",
      "sentManually": false,
      "completedAt": "2007-12-03T10:15:30Z",
      "sentAt": "2007-12-03T10:15:30Z",
      "acceptedAt": "2007-12-03T10:15:30Z",
      "declinedAt": "2007-12-03T10:15:30Z",
      "language": LanguageTag,
      "currency": CurrencyCode,
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

estimateDraft

Response

Returns an EstimateDraft

Arguments
Name Description
estimateId - ID

Example

Query
query estimateDraft($estimateId: ID) {
  estimateDraft(estimateId: $estimateId) {
    customer {
      ...CustomerFragment
    }
    status
    number
    estimateDate
    validityDate
    items {
      ...EstimateDraftItemFragment
    }
    introductionText
    closingText
    language
    currency
  }
}
Variables
{"estimateId": 4}
Response
{
  "data": {
    "estimateDraft": {
      "customer": Customer,
      "status": "DRAFT",
      "number": 123,
      "estimateDate": "2007-12-03",
      "validityDate": "2007-12-03",
      "items": [EstimateDraftItem],
      "introductionText": "abc123",
      "closingText": "xyz789",
      "language": LanguageTag,
      "currency": CurrencyCode
    }
  }
}

estimateItem

Response

Returns an EstimateItem

Arguments
Name Description
id - ID!

Example

Query
query estimateItem($id: ID!) {
  estimateItem(id: $id) {
    id
    position
    title
    description
    quantity
    unitPrice
    taxRate
    unit
    object {
      ...ObjectFragment
    }
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "estimateItem": {
      "id": 4,
      "position": 987,
      "title": "xyz789",
      "description": "xyz789",
      "quantity": 123.45,
      "unitPrice": 987,
      "taxRate": 987.65,
      "unit": "abc123",
      "object": Object,
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

estimates

Response

Returns an EstimateConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query for numberPrefix and number or customer name
status - [EstimateStatus!] Only estimates with one of the given statuses will be returned
estimateDateFrom - Date Only estimates with estimate date at this date or later will be returned
estimateDateTo - Date Only estimates with estimate date up to and including this date will be returned
validityDateFrom - Date Only estimates with validity date at this date or later will be returned
validityDateTo - Date Only estimates with validity date up to and including this date will be returned
customerId - ID
serviceId - ID Only estimates with at least one item assigned to this service
materialId - ID Only estimates with at least one item assigned to this material
objectId - ID Only estimates with at least one item assigned to this object
orderBy - EstimateOrder

Example

Query
query estimates(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $status: [EstimateStatus!],
  $estimateDateFrom: Date,
  $estimateDateTo: Date,
  $validityDateFrom: Date,
  $validityDateTo: Date,
  $customerId: ID,
  $serviceId: ID,
  $materialId: ID,
  $objectId: ID,
  $orderBy: EstimateOrder
) {
  estimates(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    status: $status,
    estimateDateFrom: $estimateDateFrom,
    estimateDateTo: $estimateDateTo,
    validityDateFrom: $validityDateFrom,
    validityDateTo: $validityDateTo,
    customerId: $customerId,
    serviceId: $serviceId,
    materialId: $materialId,
    objectId: $objectId,
    orderBy: $orderBy
  ) {
    edges {
      ...EstimateEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 987,
  "last": 123,
  "query": "abc123",
  "status": ["DRAFT"],
  "estimateDateFrom": "2007-12-03",
  "estimateDateTo": "2007-12-03",
  "validityDateFrom": "2007-12-03",
  "validityDateTo": "2007-12-03",
  "customerId": "4",
  "serviceId": 4,
  "materialId": "4",
  "objectId": "4",
  "orderBy": EstimateOrder
}
Response
{
  "data": {
    "estimates": {
      "edges": [EstimateEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

holiday

Response

Returns a Holiday

Arguments
Name Description
id - ID!

Example

Query
query holiday($id: ID!) {
  holiday(id: $id) {
    id
    date
    name
    country
    state
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "holiday": {
      "id": "4",
      "date": "2007-12-03",
      "name": "abc123",
      "country": "US",
      "state": StateCode
    }
  }
}

invoice

Response

Returns an Invoice

Arguments
Name Description
id - ID!

Example

Query
query invoice($id: ID!) {
  invoice(id: $id) {
    id
    company {
      ...CompanyFragment
    }
    customer {
      ...CustomerFragment
    }
    type
    status
    number
    numberPrefix
    numberSuffix
    items {
      ...InvoiceItemFragment
    }
    dueDate
    dueDateFormat
    hideDueDateText
    invoiceDate
    deliveryDate {
      ... on SingleDate {
        ...SingleDateFragment
      }
      ... on DateRange {
        ...DateRangeFragment
      }
    }
    totalAmount
    totalNetAmount
    outstandingAmount
    hasKleinunternehmerregelung
    introductionText
    closingText
    isNegative
    invoicePdf
    sentManually
    completedAt
    sentAt
    paidAt
    cancelledAt
    language
    currency
    createdAt
    payments {
      ...PaymentFragment
    }
    originalInvoice {
      ...InvoiceFragment
    }
    cancellationInvoice {
      ...InvoiceFragment
    }
    skontoEnabled
    skontoPercent
    skontoDays
    skontoDeadline
    skontoApplied
    skontoAmount
    skontoMessage
    serviceReceipts {
      ...ServiceReceiptFragment
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "invoice": {
      "id": 4,
      "company": Company,
      "customer": Customer,
      "type": "INVOICE",
      "status": "DRAFT",
      "number": 123,
      "numberPrefix": "abc123",
      "numberSuffix": "abc123",
      "items": [InvoiceItem],
      "dueDate": "2007-12-03",
      "dueDateFormat": "DAYS",
      "hideDueDateText": false,
      "invoiceDate": "2007-12-03",
      "deliveryDate": SingleDate,
      "totalAmount": 987,
      "totalNetAmount": 987,
      "outstandingAmount": 987,
      "hasKleinunternehmerregelung": true,
      "introductionText": "xyz789",
      "closingText": "abc123",
      "isNegative": false,
      "invoicePdf": "abc123",
      "sentManually": false,
      "completedAt": "2007-12-03T10:15:30Z",
      "sentAt": "2007-12-03T10:15:30Z",
      "paidAt": "2007-12-03",
      "cancelledAt": "2007-12-03",
      "language": LanguageTag,
      "currency": CurrencyCode,
      "createdAt": "2007-12-03T10:15:30Z",
      "payments": [Payment],
      "originalInvoice": Invoice,
      "cancellationInvoice": Invoice,
      "skontoEnabled": false,
      "skontoPercent": 987.65,
      "skontoDays": 123,
      "skontoDeadline": "2007-12-03",
      "skontoApplied": false,
      "skontoAmount": 987,
      "skontoMessage": "abc123",
      "serviceReceipts": [ServiceReceipt]
    }
  }
}

invoiceDraft

Response

Returns an InvoiceDraft

Arguments
Name Description
estimateId - ID
invoiceId - ID

Example

Query
query invoiceDraft(
  $estimateId: ID,
  $invoiceId: ID
) {
  invoiceDraft(
    estimateId: $estimateId,
    invoiceId: $invoiceId
  ) {
    customer {
      ...CustomerFragment
    }
    status
    number
    dueDate
    dueDateFormat
    hideDueDateText
    invoiceDate
    deliveryDate {
      ... on SingleDate {
        ...SingleDateFragment
      }
      ... on DateRange {
        ...DateRangeFragment
      }
    }
    items {
      ...InvoiceDraftItemFragment
    }
    introductionText
    closingText
    skontoEnabled
    skontoPercent
    skontoDays
    skontoDeadline
    skontoMessage
    language
    currency
  }
}
Variables
{"estimateId": 4, "invoiceId": 4}
Response
{
  "data": {
    "invoiceDraft": {
      "customer": Customer,
      "status": "DRAFT",
      "number": 123,
      "dueDate": "2007-12-03",
      "dueDateFormat": "DAYS",
      "hideDueDateText": false,
      "invoiceDate": "2007-12-03",
      "deliveryDate": SingleDate,
      "items": [InvoiceDraftItem],
      "introductionText": "xyz789",
      "closingText": "xyz789",
      "skontoEnabled": false,
      "skontoPercent": 987.65,
      "skontoDays": 987,
      "skontoDeadline": "2007-12-03",
      "skontoMessage": "abc123",
      "language": LanguageTag,
      "currency": CurrencyCode
    }
  }
}

invoiceItem

Response

Returns an InvoiceItem

Arguments
Name Description
id - ID!

Example

Query
query invoiceItem($id: ID!) {
  invoiceItem(id: $id) {
    id
    position
    title
    description
    quantity
    unitPrice
    taxRate
    unit
    createdAt
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "invoiceItem": {
      "id": "4",
      "position": 123,
      "title": "abc123",
      "description": "xyz789",
      "quantity": 123.45,
      "unitPrice": 987,
      "taxRate": 123.45,
      "unit": "abc123",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

invoices

Response

Returns an InvoiceConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query for numberPrefix and number, customer name or item title
status - [InvoiceStatus!] Only invoices with one of the given statuses will be returned
invoiceDateFrom - Date Only invoices with invoice date at this date or later will be returned
invoiceDateTo - Date Only invoices with invoice date up to and including this date will be returned
dueDateFrom - Date
dueDateTo - Date
createdFrom - Date Only invoices created at this date or later will be returned
createdTo - Date Only invoices created up to and including this date will be returned
isCompleted - Boolean
isPaid - Boolean isPaid: false returns outstanding invoices (not paid and not cancelled)
customerId - ID
orderId - ID
serviceId - ID Only invoices with at least one item assigned to this service
objectId - ID Only invoices with at least one item assigned to this object
orderBy - InvoiceOrder

Example

Query
query invoices(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $status: [InvoiceStatus!],
  $invoiceDateFrom: Date,
  $invoiceDateTo: Date,
  $dueDateFrom: Date,
  $dueDateTo: Date,
  $createdFrom: Date,
  $createdTo: Date,
  $isCompleted: Boolean,
  $isPaid: Boolean,
  $customerId: ID,
  $orderId: ID,
  $serviceId: ID,
  $objectId: ID,
  $orderBy: InvoiceOrder
) {
  invoices(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    status: $status,
    invoiceDateFrom: $invoiceDateFrom,
    invoiceDateTo: $invoiceDateTo,
    dueDateFrom: $dueDateFrom,
    dueDateTo: $dueDateTo,
    createdFrom: $createdFrom,
    createdTo: $createdTo,
    isCompleted: $isCompleted,
    isPaid: $isPaid,
    customerId: $customerId,
    orderId: $orderId,
    serviceId: $serviceId,
    objectId: $objectId,
    orderBy: $orderBy
  ) {
    edges {
      ...InvoiceEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "abc123",
  "first": 987,
  "last": 987,
  "query": "abc123",
  "status": ["DRAFT"],
  "invoiceDateFrom": "2007-12-03",
  "invoiceDateTo": "2007-12-03",
  "dueDateFrom": "2007-12-03",
  "dueDateTo": "2007-12-03",
  "createdFrom": "2007-12-03",
  "createdTo": "2007-12-03",
  "isCompleted": true,
  "isPaid": true,
  "customerId": 4,
  "orderId": "4",
  "serviceId": 4,
  "objectId": "4",
  "orderBy": InvoiceOrder
}
Response
{
  "data": {
    "invoices": {
      "edges": [InvoiceEdge],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

material

Response

Returns a Material

Arguments
Name Description
id - ID!

Example

Query
query material($id: ID!) {
  material(id: $id) {
    id
    number
    name
    description
    manufacturer
    consumptionUnit
    salesUnitPrice
    salesTaxRate
    salesUnit
    quantityPerSalesUnit
    stockUnit
    quantityPerStockUnit
    stockEanNumber
    revenueAccount
    group {
      ...MaterialGroupFragment
    }
    originalImageUrl
    smallImageUrl
    largeImageUrl
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "material": {
      "id": "4",
      "number": 123,
      "name": "xyz789",
      "description": "xyz789",
      "manufacturer": "abc123",
      "consumptionUnit": "xyz789",
      "salesUnitPrice": 123,
      "salesTaxRate": 123.45,
      "salesUnit": "xyz789",
      "quantityPerSalesUnit": 987.65,
      "stockUnit": "abc123",
      "quantityPerStockUnit": 123.45,
      "stockEanNumber": "xyz789",
      "revenueAccount": 987,
      "group": MaterialGroup,
      "originalImageUrl": "http://www.test.com/",
      "smallImageUrl": "http://www.test.com/",
      "largeImageUrl": "http://www.test.com/",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

materials

Response

Returns a MaterialConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String
manufacturer - String
orderBy - MaterialOrder

Example

Query
query materials(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $manufacturer: String,
  $orderBy: MaterialOrder
) {
  materials(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    manufacturer: $manufacturer,
    orderBy: $orderBy
  ) {
    edges {
      ...MaterialEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "xyz789",
  "first": 987,
  "last": 987,
  "query": "abc123",
  "manufacturer": "xyz789",
  "orderBy": MaterialOrder
}
Response
{
  "data": {
    "materials": {
      "edges": [MaterialEdge],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

nextEmployeePersonnelNumber

Response

Returns an Int!

Example

Query
query nextEmployeePersonnelNumber {
  nextEmployeePersonnelNumber
}
Response
{"data": {"nextEmployeePersonnelNumber": 123}}

object

Response

Returns an Object

Arguments
Name Description
id - ID!

Example

Query
query object($id: ID!) {
  object(id: $id) {
    id
    customer {
      ...CustomerFragment
    }
    customerContactPerson {
      ...CustomerContactPersonFragment
    }
    number
    name
    addressSupplement
    streetAddress
    zip
    city
    country
    state {
      ...StateFragment
    }
    location {
      ...LocationFragment
    }
    locationRadiusMeters
    email
    phone
    extraInvoiceAddressFieldLines
    costCenter
    invoiceAddress {
      ...ObjectInvoiceAddressFragment
    }
    invoiceSettings {
      ...ObjectInvoiceSettingsFragment
    }
    tags
    createdAt
    rooms {
      ...ObjectRoomConnectionFragment
    }
    invoices {
      ...InvoiceConnectionFragment
    }
    estimates {
      ...EstimateConnectionFragment
    }
    receipts {
      ...ReceiptConnectionFragment
    }
    serviceReceipts {
      ...ServiceReceiptConnectionFragment
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "object": {
      "id": 4,
      "customer": Customer,
      "customerContactPerson": CustomerContactPerson,
      "number": 123,
      "name": "xyz789",
      "addressSupplement": "xyz789",
      "streetAddress": "abc123",
      "zip": "abc123",
      "city": "abc123",
      "country": "US",
      "state": State,
      "location": Location,
      "locationRadiusMeters": 987,
      "email": "abc123",
      "phone": "xyz789",
      "extraInvoiceAddressFieldLines": "abc123",
      "costCenter": "xyz789",
      "invoiceAddress": ObjectInvoiceAddress,
      "invoiceSettings": ObjectInvoiceSettings,
      "tags": ["xyz789"],
      "createdAt": "2007-12-03T10:15:30Z",
      "rooms": ObjectRoomConnection,
      "invoices": InvoiceConnection,
      "estimates": EstimateConnection,
      "receipts": ReceiptConnection,
      "serviceReceipts": ServiceReceiptConnection
    }
  }
}

objects

Response

Returns an ObjectConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query by number, name, streetAddress, zip, city
orderBy - ObjectOrder

Example

Query
query objects(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $orderBy: ObjectOrder
) {
  objects(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    orderBy: $orderBy
  ) {
    edges {
      ...ObjectEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 123,
  "last": 123,
  "query": "abc123",
  "orderBy": ObjectOrder
}
Response
{
  "data": {
    "objects": {
      "edges": [ObjectEdge],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

operation

Response

Returns an Operation

Arguments
Name Description
id - ID!

Example

Query
query operation($id: ID!) {
  operation(id: $id) {
    id
    object {
      ...ObjectFragment
    }
    instructions
    services {
      ...OperationServiceFragment
    }
    requiredExecutors
    missingExecutors
    toDos
    executor {
      ...OperationExecutorFragment
    }
    executors {
      ...OperationExecutorConnectionFragment
    }
    isExecuted
    executionStartDate
    executionStartTime
    executionEndDate
    executionEndTime
    duration
    originalExecutionStartDate
    originalExecutionStartTime
    originalExecutionEndDate
    originalExecutionEndTime
    order {
      ...OrderFragment
    }
    orderShift {
      ...OrderShiftFragment
    }
    holiday {
      ...HolidayFragment
    }
    report {
      ...OperationReportFragment
    }
    serviceReceipts {
      ...ServiceReceiptConnectionFragment
    }
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "operation": {
      "id": 4,
      "object": Object,
      "instructions": "xyz789",
      "services": [OperationService],
      "requiredExecutors": 123,
      "missingExecutors": 987,
      "toDos": ["MISSING_QUANTITY"],
      "executor": OperationExecutor,
      "executors": OperationExecutorConnection,
      "isExecuted": false,
      "executionStartDate": "2007-12-03",
      "executionStartTime": "10:15:30Z",
      "executionEndDate": "2007-12-03",
      "executionEndTime": "10:15:30Z",
      "duration": 987,
      "originalExecutionStartDate": "2007-12-03",
      "originalExecutionStartTime": "10:15:30Z",
      "originalExecutionEndDate": "2007-12-03",
      "originalExecutionEndTime": "10:15:30Z",
      "order": Order,
      "orderShift": OrderShift,
      "holiday": Holiday,
      "report": OperationReport,
      "serviceReceipts": ServiceReceiptConnection,
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

operationExecutor

Response

Returns an OperationExecutor

Arguments
Name Description
id - ID!

Example

Query
query operationExecutor($id: ID!) {
  operationExecutor(id: $id) {
    id
    operation {
      ...OperationFragment
    }
    employee {
      ...EmployeeFragment
    }
    subcontractor {
      ...SubcontractorFragment
    }
    orderExecutor {
      ...OrderExecutorFragment
    }
    timeRecord {
      ...TimeRecordFragment
    }
    absence {
      ...AbsenceFragment
    }
    markedAsNoShowAt
    createdAt
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "operationExecutor": {
      "id": 4,
      "operation": Operation,
      "employee": Employee,
      "subcontractor": Subcontractor,
      "orderExecutor": OrderExecutor,
      "timeRecord": TimeRecord,
      "absence": Absence,
      "markedAsNoShowAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

operationExecutors

Response

Returns an OperationExecutorConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
executionFrom - Date Only operationExecutors with execution at this date or later will be counted.
executionTo - Date Only operationExecutors with execution before and up to and including this date will be counted.
hasEmployee - Boolean
hasTimeRecord - Boolean
hideAbsent - Boolean
orderBy - OperationExecutorOrder

Example

Query
query operationExecutors(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $executionFrom: Date,
  $executionTo: Date,
  $hasEmployee: Boolean,
  $hasTimeRecord: Boolean,
  $hideAbsent: Boolean,
  $orderBy: OperationExecutorOrder
) {
  operationExecutors(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    executionFrom: $executionFrom,
    executionTo: $executionTo,
    hasEmployee: $hasEmployee,
    hasTimeRecord: $hasTimeRecord,
    hideAbsent: $hideAbsent,
    orderBy: $orderBy
  ) {
    edges {
      ...OperationExecutorEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "xyz789",
  "first": 123,
  "last": 987,
  "executionFrom": "2007-12-03",
  "executionTo": "2007-12-03",
  "hasEmployee": false,
  "hasTimeRecord": true,
  "hideAbsent": false,
  "orderBy": OperationExecutorOrder
}
Response
{
  "data": {
    "operationExecutors": {
      "edges": [OperationExecutorEdge],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

operationExecutorsMissingCheckIn

Response

Returns an OperationExecutorConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
minutesToBeLate - Int

Example

Query
query operationExecutorsMissingCheckIn(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $minutesToBeLate: Int
) {
  operationExecutorsMissingCheckIn(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    minutesToBeLate: $minutesToBeLate
  ) {
    edges {
      ...OperationExecutorEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "xyz789",
  "first": 987,
  "last": 987,
  "minutesToBeLate": 123
}
Response
{
  "data": {
    "operationExecutorsMissingCheckIn": {
      "edges": [OperationExecutorEdge],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

operationReports

Response

Returns an OperationReportConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
operationId - ID
query - String Query by body content
orderBy - OperationReportOrder

Example

Query
query operationReports(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $operationId: ID,
  $query: String,
  $orderBy: OperationReportOrder
) {
  operationReports(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    operationId: $operationId,
    query: $query,
    orderBy: $orderBy
  ) {
    edges {
      ...OperationReportEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 123,
  "last": 123,
  "operationId": 4,
  "query": "abc123",
  "orderBy": OperationReportOrder
}
Response
{
  "data": {
    "operationReports": {
      "edges": [OperationReportEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

operationService

Response

Returns an OperationService

Arguments
Name Description
id - ID!

Example

Query
query operationService($id: ID!) {
  operationService(id: $id) {
    id
    operation {
      ...OperationFragment
    }
    service {
      ...ServiceFragment
    }
    orderService {
      ...OrderServiceFragment
    }
    position
    title
    updatedAt
    createdAt
    tasks {
      ...OperationServiceTaskConnectionFragment
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "operationService": {
      "id": 4,
      "operation": Operation,
      "service": Service,
      "orderService": OrderService,
      "position": 123,
      "title": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "tasks": OperationServiceTaskConnection
    }
  }
}

operationServiceTask

Response

Returns an OperationServiceTask

Arguments
Name Description
id - ID!

Example

Query
query operationServiceTask($id: ID!) {
  operationServiceTask(id: $id) {
    id
    operationService {
      ...OperationServiceFragment
    }
    serviceArea {
      ...ServiceAreaFragment
    }
    orderServiceTask {
      ...OrderServiceTaskFragment
    }
    position
    title
    completedAt
    createdAt
    rooms {
      ...OperationServiceTaskRoomConnectionFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "operationServiceTask": {
      "id": 4,
      "operationService": OperationService,
      "serviceArea": ServiceArea,
      "orderServiceTask": OrderServiceTask,
      "position": 987,
      "title": "xyz789",
      "completedAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "rooms": OperationServiceTaskRoomConnection
    }
  }
}

operations

Response

Returns an OperationConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
ids - [ID!] Ids of operations to query for
query - String Query for title
hasBillingItems - Boolean
hasMissingBillingItemQuantity - Boolean
executionFrom - Date Only operations with execution at this date or later will be counted.
executionTo - Date Only operations with execution before and up to and including this date will be counted.
orderExecutorIds - [ID!]
serviceIds - [ID!]
toDos - [OperationToDo!]
zips - [String!]
cities - [String!]
orderBy - OperationOrder

Example

Query
query operations(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $ids: [ID!],
  $query: String,
  $hasBillingItems: Boolean,
  $hasMissingBillingItemQuantity: Boolean,
  $executionFrom: Date,
  $executionTo: Date,
  $orderExecutorIds: [ID!],
  $serviceIds: [ID!],
  $toDos: [OperationToDo!],
  $zips: [String!],
  $cities: [String!],
  $orderBy: OperationOrder
) {
  operations(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    ids: $ids,
    query: $query,
    hasBillingItems: $hasBillingItems,
    hasMissingBillingItemQuantity: $hasMissingBillingItemQuantity,
    executionFrom: $executionFrom,
    executionTo: $executionTo,
    orderExecutorIds: $orderExecutorIds,
    serviceIds: $serviceIds,
    toDos: $toDos,
    zips: $zips,
    cities: $cities,
    orderBy: $orderBy
  ) {
    edges {
      ...OperationEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "xyz789",
  "first": 123,
  "last": 123,
  "ids": ["4"],
  "query": "abc123",
  "hasBillingItems": true,
  "hasMissingBillingItemQuantity": true,
  "executionFrom": "2007-12-03",
  "executionTo": "2007-12-03",
  "orderExecutorIds": [4],
  "serviceIds": [4],
  "toDos": ["MISSING_QUANTITY"],
  "zips": ["xyz789"],
  "cities": ["xyz789"],
  "orderBy": OperationOrder
}
Response
{
  "data": {
    "operations": {
      "edges": [OperationEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

order

Response

Returns an Order

Arguments
Name Description
id - ID!

Example

Query
query order($id: ID!) {
  order(id: $id) {
    id
    number
    object {
      ...ObjectFragment
    }
    instructions
    status
    requiredExecutors
    missingExecutors
    executionOnHolidays
    startDate
    endDate
    latestOperation {
      ...OperationFragment
    }
    services {
      ...OrderServiceFragment
    }
    shifts {
      ...OrderShiftConnectionFragment
    }
    executors {
      ...OrderExecutorConnectionFragment
    }
    operations {
      ...OperationConnectionFragment
    }
    tickets {
      ...TicketConnectionFragment
    }
    cancelledAt
    createdAt
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "order": {
      "id": 4,
      "number": 987,
      "object": Object,
      "instructions": "xyz789",
      "status": "ACTIVE",
      "requiredExecutors": 987,
      "missingExecutors": 987,
      "executionOnHolidays": false,
      "startDate": "2007-12-03",
      "endDate": "2007-12-03",
      "latestOperation": Operation,
      "services": [OrderService],
      "shifts": OrderShiftConnection,
      "executors": OrderExecutorConnection,
      "operations": OperationConnection,
      "tickets": TicketConnection,
      "cancelledAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

orderExecutor

Response

Returns an OrderExecutor

Arguments
Name Description
id - ID!

Example

Query
query orderExecutor($id: ID!) {
  orderExecutor(id: $id) {
    id
    order {
      ...OrderFragment
    }
    employee {
      ...EmployeeFragment
    }
    subcontractor {
      ...SubcontractorFragment
    }
    startDate
    cancelDate
    isAddedToOrderShift
    createdAt
    orderShifts {
      ...OrderShiftConnectionFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "orderExecutor": {
      "id": "4",
      "order": Order,
      "employee": Employee,
      "subcontractor": Subcontractor,
      "startDate": "2007-12-03",
      "cancelDate": "2007-12-03",
      "isAddedToOrderShift": true,
      "createdAt": "2007-12-03T10:15:30Z",
      "orderShifts": OrderShiftConnection
    }
  }
}

orderService

Response

Returns an OrderService

Arguments
Name Description
id - ID!

Example

Query
query orderService($id: ID!) {
  orderService(id: $id) {
    id
    order {
      ...OrderFragment
    }
    service {
      ...ServiceFragment
    }
    position
    title
    unit
    hasPersonHourUnit
    executionOnDemand
    demandRrule
    nextDemandDate
    lastExecutionDate
    updatedAt
    createdAt
    tasks {
      ...OrderServiceTaskConnectionFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "orderService": {
      "id": "4",
      "order": Order,
      "service": Service,
      "position": 123,
      "title": "abc123",
      "unit": "xyz789",
      "hasPersonHourUnit": false,
      "executionOnDemand": false,
      "demandRrule": "abc123",
      "nextDemandDate": "2007-12-03",
      "lastExecutionDate": "2007-12-03",
      "updatedAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "tasks": OrderServiceTaskConnection
    }
  }
}

orderServices

Response

Returns an OrderServiceConnection

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query by title
objectId - ID
orderId - ID
serviceIds - [ID!]
executionOnDemand - Boolean
nextDemandDateFrom - Date
nextDemandDateTo - Date
orderStatus - OrderStatus
orderBy - OrderServiceOrder

Example

Query
query orderServices(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $objectId: ID,
  $orderId: ID,
  $serviceIds: [ID!],
  $executionOnDemand: Boolean,
  $nextDemandDateFrom: Date,
  $nextDemandDateTo: Date,
  $orderStatus: OrderStatus,
  $orderBy: OrderServiceOrder
) {
  orderServices(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    objectId: $objectId,
    orderId: $orderId,
    serviceIds: $serviceIds,
    executionOnDemand: $executionOnDemand,
    nextDemandDateFrom: $nextDemandDateFrom,
    nextDemandDateTo: $nextDemandDateTo,
    orderStatus: $orderStatus,
    orderBy: $orderBy
  ) {
    edges {
      ...OrderServiceEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "abc123",
  "first": 123,
  "last": 987,
  "query": "xyz789",
  "objectId": 4,
  "orderId": "4",
  "serviceIds": ["4"],
  "executionOnDemand": false,
  "nextDemandDateFrom": "2007-12-03",
  "nextDemandDateTo": "2007-12-03",
  "orderStatus": "ACTIVE",
  "orderBy": OrderServiceOrder
}
Response
{
  "data": {
    "orderServices": {
      "edges": [OrderServiceEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

orderShift

Response

Returns an OrderShift

Arguments
Name Description
id - ID!

Example

Query
query orderShift($id: ID!) {
  orderShift(id: $id) {
    id
    order {
      ...OrderFragment
    }
    startDate
    endDate
    rrule
    timeFrom
    timeTo
    acrossMidnight
    duration
    requiredExecutors
    deviatingInstructions
    createServiceReceipt
    orderServices {
      ...OrderServiceFragment
    }
    executors {
      ...OrderShiftExecutorConnectionFragment
    }
    endedAt
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "orderShift": {
      "id": 4,
      "order": Order,
      "startDate": "2007-12-03",
      "endDate": "2007-12-03",
      "rrule": "abc123",
      "timeFrom": "10:15:30Z",
      "timeTo": "10:15:30Z",
      "acrossMidnight": true,
      "duration": 987,
      "requiredExecutors": 123,
      "deviatingInstructions": "abc123",
      "createServiceReceipt": true,
      "orderServices": [OrderService],
      "executors": OrderShiftExecutorConnection,
      "endedAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

orders

Response

Returns an OrderConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query for number, service title or billing item title
customerId - ID
objectId - ID
serviceIds - [ID!]
status - OrderStatus
isExecutorMissing - Boolean
hasNoOperations - Boolean
orderBy - OrderOrder

Example

Query
query orders(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $customerId: ID,
  $objectId: ID,
  $serviceIds: [ID!],
  $status: OrderStatus,
  $isExecutorMissing: Boolean,
  $hasNoOperations: Boolean,
  $orderBy: OrderOrder
) {
  orders(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    customerId: $customerId,
    objectId: $objectId,
    serviceIds: $serviceIds,
    status: $status,
    isExecutorMissing: $isExecutorMissing,
    hasNoOperations: $hasNoOperations,
    orderBy: $orderBy
  ) {
    edges {
      ...OrderEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "abc123",
  "first": 987,
  "last": 123,
  "query": "xyz789",
  "customerId": "4",
  "objectId": "4",
  "serviceIds": ["4"],
  "status": "ACTIVE",
  "isExecutorMissing": true,
  "hasNoOperations": false,
  "orderBy": OrderOrder
}
Response
{
  "data": {
    "orders": {
      "edges": [OrderEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

pendingInvoiceItem

Response

Returns a PendingInvoiceItem

Arguments
Name Description
id - ID!

Example

Query
query pendingInvoiceItem($id: ID!) {
  pendingInvoiceItem(id: $id) {
    id
    customer {
      ...CustomerFragment
    }
    object {
      ...ObjectFragment
    }
    status
    title
    description
    quantity
    unitPrice
    taxRate
    unit
    isCreatedManually
    isGroup
    executionStart
    executionEnd
    billingPeriodInterval
    service {
      ...ServiceFragment
    }
    material {
      ...MaterialFragment
    }
    order {
      ...OrderFragment
    }
    billedAt
    createdAt
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "pendingInvoiceItem": {
      "id": 4,
      "customer": Customer,
      "object": Object,
      "status": "PENDING",
      "title": "xyz789",
      "description": "abc123",
      "quantity": 123.45,
      "unitPrice": 123,
      "taxRate": 123.45,
      "unit": "abc123",
      "isCreatedManually": false,
      "isGroup": false,
      "executionStart": "2007-12-03",
      "executionEnd": "2007-12-03",
      "billingPeriodInterval": "MONTH",
      "service": Service,
      "material": Material,
      "order": Order,
      "billedAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

pendingInvoiceItems

Response

Returns a PendingInvoiceItemConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String
executionFrom - Date
executionTo - Date
customerId - ID
objectId - ID
orderId - ID
serviceId - ID
orderBy - PendingInvoiceItemOrder

Example

Query
query pendingInvoiceItems(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $executionFrom: Date,
  $executionTo: Date,
  $customerId: ID,
  $objectId: ID,
  $orderId: ID,
  $serviceId: ID,
  $orderBy: PendingInvoiceItemOrder
) {
  pendingInvoiceItems(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    executionFrom: $executionFrom,
    executionTo: $executionTo,
    customerId: $customerId,
    objectId: $objectId,
    orderId: $orderId,
    serviceId: $serviceId,
    orderBy: $orderBy
  ) {
    edges {
      ...PendingInvoiceItemEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 123,
  "last": 987,
  "query": "xyz789",
  "executionFrom": "2007-12-03",
  "executionTo": "2007-12-03",
  "customerId": "4",
  "objectId": 4,
  "orderId": 4,
  "serviceId": 4,
  "orderBy": PendingInvoiceItemOrder
}
Response
{
  "data": {
    "pendingInvoiceItems": {
      "edges": [PendingInvoiceItemEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

receipt

Response

Returns a Receipt

Arguments
Name Description
id - ID!

Example

Query
query receipt($id: ID!) {
  receipt(id: $id) {
    id
    company {
      ...CompanyFragment
    }
    customer {
      ...CustomerFragment
    }
    subcontractor {
      ...SubcontractorFragment
    }
    type
    status
    number
    elements {
      ...ReceiptElementFragment
    }
    totalAmount
    outstandingAmount
    dueDate
    receiptDate
    files {
      ...ReceiptFileFragment
    }
    paidAt
    currency
    createdAt
    payments {
      ...PaymentFragment
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "receipt": {
      "id": "4",
      "company": Company,
      "customer": Customer,
      "subcontractor": Subcontractor,
      "type": "EXPENSE",
      "status": "UNPAID",
      "number": "xyz789",
      "elements": [ReceiptElement],
      "totalAmount": 987,
      "outstandingAmount": 123,
      "dueDate": "2007-12-03",
      "receiptDate": "2007-12-03",
      "files": [ReceiptFile],
      "paidAt": "2007-12-03",
      "currency": CurrencyCode,
      "createdAt": "2007-12-03T10:15:30Z",
      "payments": [Payment]
    }
  }
}

receiptElement

Response

Returns a ReceiptElement

Arguments
Name Description
id - ID!

Example

Query
query receiptElement($id: ID!) {
  receiptElement(id: $id) {
    id
    netAmount
    taxAmount
    taxRate
    totalAmount
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "receiptElement": {
      "id": "4",
      "netAmount": 987,
      "taxAmount": 123,
      "taxRate": 987.65,
      "totalAmount": 987,
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

receipts

Response

Returns a ReceiptConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query for number
orderBy - ReceiptOrder

Example

Query
query receipts(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $orderBy: ReceiptOrder
) {
  receipts(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    orderBy: $orderBy
  ) {
    edges {
      ...ReceiptEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 987,
  "last": 987,
  "query": "xyz789",
  "orderBy": ReceiptOrder
}
Response
{
  "data": {
    "receipts": {
      "edges": [ReceiptEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

service

Response

Returns a Service

Arguments
Name Description
id - ID!

Example

Query
query service($id: ID!) {
  service(id: $id) {
    id
    title
    description
    unitPrice
    taxRate
    unit
    revenueAccount
    areas {
      ...ServiceAreaFragment
    }
    createdAt
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "service": {
      "id": 4,
      "title": "xyz789",
      "description": "abc123",
      "unitPrice": 123,
      "taxRate": 123.45,
      "unit": "abc123",
      "revenueAccount": 123,
      "areas": [ServiceArea],
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

serviceReceipt

Response

Returns a ServiceReceipt

Arguments
Name Description
id - ID!

Example

Query
query serviceReceipt($id: ID!) {
  serviceReceipt(id: $id) {
    id
    customer {
      ...CustomerFragment
    }
    customerContactPerson {
      ...CustomerContactPersonFragment
    }
    object {
      ...ObjectFragment
    }
    status
    number
    webUrl
    notes
    signatureCity
    signatureDate
    signatureImageUrl
    reviewStatus
    serviceReceiptPdf
    completedAt
    signedAt
    reviewedAt
    language
    currency
    createdAt
    items {
      ...ServiceReceiptItemConnectionFragment
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "serviceReceipt": {
      "id": 4,
      "customer": Customer,
      "customerContactPerson": CustomerContactPerson,
      "object": Object,
      "status": "DRAFT",
      "number": 987,
      "webUrl": "http://www.test.com/",
      "notes": "abc123",
      "signatureCity": "abc123",
      "signatureDate": "2007-12-03",
      "signatureImageUrl": "http://www.test.com/",
      "reviewStatus": "PENDING",
      "serviceReceiptPdf": "http://www.test.com/",
      "completedAt": "2007-12-03T10:15:30Z",
      "signedAt": "2007-12-03T10:15:30Z",
      "reviewedAt": "2007-12-03T10:15:30Z",
      "language": LanguageTag,
      "currency": CurrencyCode,
      "createdAt": "2007-12-03T10:15:30Z",
      "items": ServiceReceiptItemConnection
    }
  }
}

serviceReceipts

Response

Returns a ServiceReceiptConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query by number, status or customer name
status - ServiceReceiptStatus
orderBy - ServiceReceiptOrder

Example

Query
query serviceReceipts(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $status: ServiceReceiptStatus,
  $orderBy: ServiceReceiptOrder
) {
  serviceReceipts(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    status: $status,
    orderBy: $orderBy
  ) {
    edges {
      ...ServiceReceiptEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "abc123",
  "first": 123,
  "last": 123,
  "query": "xyz789",
  "status": "DRAFT",
  "orderBy": ServiceReceiptOrder
}
Response
{
  "data": {
    "serviceReceipts": {
      "edges": [ServiceReceiptEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

services

Response

Returns a ServiceConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query by title
hideEmployeeId - ID
excludeIds - [ID!]
orderBy - ServiceOrder

Example

Query
query services(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $hideEmployeeId: ID,
  $excludeIds: [ID!],
  $orderBy: ServiceOrder
) {
  services(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    hideEmployeeId: $hideEmployeeId,
    excludeIds: $excludeIds,
    orderBy: $orderBy
  ) {
    edges {
      ...ServiceEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "xyz789",
  "first": 987,
  "last": 123,
  "query": "abc123",
  "hideEmployeeId": 4,
  "excludeIds": ["4"],
  "orderBy": ServiceOrder
}
Response
{
  "data": {
    "services": {
      "edges": [ServiceEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

state

Response

Returns a State

Arguments
Name Description
id - ID!

Example

Query
query state($id: ID!) {
  state(id: $id) {
    id
    name
    countryCode
    stateCode
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "state": {
      "id": 4,
      "name": "xyz789",
      "countryCode": "US",
      "stateCode": StateCode
    }
  }
}

subcontractor

Response

Returns a Subcontractor

Arguments
Name Description
id - ID!

Example

Query
query subcontractor($id: ID!) {
  subcontractor(id: $id) {
    id
    company {
      ...CompanyFragment
    }
    number
    type
    salutation
    firstName
    lastName
    companyName
    addressSupplement
    streetAddress
    zip
    city
    country
    email
    phone
    fax
    website
    taxNumber
    vatId
    datevAccount
    note
    createdAt
    receipts {
      ...ReceiptConnectionFragment
    }
    contactPersons {
      ...SubcontractorContactPersonConnectionFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "subcontractor": {
      "id": 4,
      "company": Company,
      "number": 987,
      "type": "PERSON",
      "salutation": "xyz789",
      "firstName": "xyz789",
      "lastName": "xyz789",
      "companyName": "xyz789",
      "addressSupplement": "abc123",
      "streetAddress": "abc123",
      "zip": "abc123",
      "city": "xyz789",
      "country": "US",
      "email": "abc123",
      "phone": "xyz789",
      "fax": "abc123",
      "website": "xyz789",
      "taxNumber": "abc123",
      "vatId": "xyz789",
      "datevAccount": 987,
      "note": "xyz789",
      "createdAt": "2007-12-03T10:15:30Z",
      "receipts": ReceiptConnection,
      "contactPersons": SubcontractorContactPersonConnection
    }
  }
}

subcontractorContactPerson

Response

Returns a SubcontractorContactPerson

Arguments
Name Description
id - ID!

Example

Query
query subcontractorContactPerson($id: ID!) {
  subcontractorContactPerson(id: $id) {
    id
    isDefault
    salutation
    firstName
    lastName
    role
    email
    phone
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "subcontractorContactPerson": {
      "id": "4",
      "isDefault": false,
      "salutation": "xyz789",
      "firstName": "xyz789",
      "lastName": "abc123",
      "role": "abc123",
      "email": "xyz789",
      "phone": "xyz789",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

subcontractors

Response

Returns a SubcontractorConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query for number, name, addressSupplement, email or contact person name

Example

Query
query subcontractors(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String
) {
  subcontractors(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query
  ) {
    edges {
      ...SubcontractorEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "abc123",
  "first": 123,
  "last": 987,
  "query": "abc123"
}
Response
{
  "data": {
    "subcontractors": {
      "edges": [SubcontractorEdge],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

supplier

Response

Returns a Supplier

Arguments
Name Description
id - ID!

Example

Query
query supplier($id: ID!) {
  supplier(id: $id) {
    id
    number
    type
    salutation
    firstName
    lastName
    companyName
    addressSupplement
    streetAddress
    zip
    city
    country
    email
    phone
    fax
    website
    taxNumber
    vatId
    datevAccount
    tags
    note
    createdAt
    contactPersons {
      ...SupplierContactPersonConnectionFragment
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "supplier": {
      "id": "4",
      "number": 123,
      "type": "PERSON",
      "salutation": "abc123",
      "firstName": "abc123",
      "lastName": "abc123",
      "companyName": "xyz789",
      "addressSupplement": "xyz789",
      "streetAddress": "xyz789",
      "zip": "abc123",
      "city": "abc123",
      "country": "US",
      "email": "xyz789",
      "phone": "xyz789",
      "fax": "abc123",
      "website": "abc123",
      "taxNumber": "abc123",
      "vatId": "abc123",
      "datevAccount": 123,
      "tags": ["xyz789"],
      "note": "abc123",
      "createdAt": "2007-12-03T10:15:30Z",
      "contactPersons": SupplierContactPersonConnection
    }
  }
}

supplierContactPerson

Response

Returns a SupplierContactPerson

Arguments
Name Description
id - ID!

Example

Query
query supplierContactPerson($id: ID!) {
  supplierContactPerson(id: $id) {
    id
    isDefault
    salutation
    firstName
    lastName
    role
    email
    phone
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "supplierContactPerson": {
      "id": "4",
      "isDefault": false,
      "salutation": "abc123",
      "firstName": "abc123",
      "lastName": "abc123",
      "role": "abc123",
      "email": "xyz789",
      "phone": "abc123",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

suppliers

Response

Returns a SupplierConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
query - String Query for number, name, addressSupplement, email or contact person name
tags - [String!] Filter by tags (suppliers must have at least one of the specified tags)
orderBy - SupplierOrder

Example

Query
query suppliers(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $tags: [String!],
  $orderBy: SupplierOrder
) {
  suppliers(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    tags: $tags,
    orderBy: $orderBy
  ) {
    edges {
      ...SupplierEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "xyz789",
  "first": 123,
  "last": 987,
  "query": "xyz789",
  "tags": ["xyz789"],
  "orderBy": SupplierOrder
}
Response
{
  "data": {
    "suppliers": {
      "edges": [SupplierEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

ticket

Response

Returns a Ticket

Arguments
Name Description
id - ID!

Example

Query
query ticket($id: ID!) {
  ticket(id: $id) {
    id
    object {
      ...ObjectFragment
    }
    objectRoom {
      ...ObjectRoomFragment
    }
    order {
      ...OrderFragment
    }
    sourceOperation {
      ...OperationFragment
    }
    number
    type
    isPublic
    inputChannel
    location
    description
    status
    priority
    discoverDate
    dueDate
    rejectedAt
    completedAt
    files {
      ...TicketFileConnectionFragment
    }
    operations {
      ...OperationConnectionFragment
    }
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "ticket": {
      "id": 4,
      "object": Object,
      "objectRoom": ObjectRoom,
      "order": Order,
      "sourceOperation": Operation,
      "number": 123,
      "type": "COMPLAINT",
      "isPublic": false,
      "inputChannel": "PORTAL",
      "location": "abc123",
      "description": "abc123",
      "status": "OPEN",
      "priority": "LOW",
      "discoverDate": "2007-12-03",
      "dueDate": "2007-12-03",
      "rejectedAt": "2007-12-03T10:15:30Z",
      "completedAt": "2007-12-03T10:15:30Z",
      "files": TicketFileConnection,
      "operations": OperationConnection,
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

tickets

Response

Returns a TicketConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
customerId - ID
objectId - ID
orderId - ID
query - String Query by number
type - TicketType
isPublic - Boolean
status - TicketStatus
priority - TicketPriority
orderBy - TicketOrder

Example

Query
query tickets(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $customerId: ID,
  $objectId: ID,
  $orderId: ID,
  $query: String,
  $type: TicketType,
  $isPublic: Boolean,
  $status: TicketStatus,
  $priority: TicketPriority,
  $orderBy: TicketOrder
) {
  tickets(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    customerId: $customerId,
    objectId: $objectId,
    orderId: $orderId,
    query: $query,
    type: $type,
    isPublic: $isPublic,
    status: $status,
    priority: $priority,
    orderBy: $orderBy
  ) {
    edges {
      ...TicketEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 123,
  "last": 123,
  "customerId": 4,
  "objectId": "4",
  "orderId": 4,
  "query": "xyz789",
  "type": "COMPLAINT",
  "isPublic": true,
  "status": "OPEN",
  "priority": "LOW",
  "orderBy": TicketOrder
}
Response
{
  "data": {
    "tickets": {
      "edges": [TicketEdge],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

timeRecord

Response

Returns a TimeRecord

Arguments
Name Description
id - ID!

Example

Query
query timeRecord($id: ID!) {
  timeRecord(id: $id) {
    id
    employee {
      ...EmployeeFragment
    }
    object {
      ...ObjectFragment
    }
    operationExecutor {
      ...OperationExecutorFragment
    }
    date
    journeyStart
    start
    end
    planDuration
    actualDuration
    breakDuration
    hasTotalBreakInput
    breaks {
      ...TimeRecordBreakFragment
    }
    journeyDuration
    journeyStartLocation {
      ...LocationFragment
    }
    startLocation {
      ...LocationFragment
    }
    endLocation {
      ...LocationFragment
    }
    createdAutomatically
    confirmedAt
    createdAt
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "timeRecord": {
      "id": "4",
      "employee": Employee,
      "object": Object,
      "operationExecutor": OperationExecutor,
      "date": "2007-12-03",
      "journeyStart": "2007-12-03T10:15:30Z",
      "start": "2007-12-03T10:15:30Z",
      "end": "2007-12-03T10:15:30Z",
      "planDuration": 123,
      "actualDuration": 123,
      "breakDuration": 987,
      "hasTotalBreakInput": true,
      "breaks": [TimeRecordBreak],
      "journeyDuration": 987,
      "journeyStartLocation": Location,
      "startLocation": Location,
      "endLocation": Location,
      "createdAutomatically": false,
      "confirmedAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

timeRecordBreak

Response

Returns a TimeRecordBreak

Arguments
Name Description
id - ID!

Example

Query
query timeRecordBreak($id: ID!) {
  timeRecordBreak(id: $id) {
    id
    timeRecord {
      ...TimeRecordFragment
    }
    start
    end
    createdAt
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "timeRecordBreak": {
      "id": "4",
      "timeRecord": TimeRecord,
      "start": "2007-12-03T10:15:30Z",
      "end": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z"
    }
  }
}

timeRecords

Response

Returns a TimeRecordConnection!

Arguments
Name Description
after - String
before - String
first - Int
last - Int
dateFrom - Date Only TimeRecords with date at this date or later will be counted.
dateTo - Date Only TimeRecords with date before and up to and including this date will be counted.
isRunning - Boolean If set it returns ether TimeRecords which are running or not
isConfirmed - Boolean If set it returns ether TimeRecords which are confirmed or not
orderBy - TimeRecordOrder

Example

Query
query timeRecords(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $dateFrom: Date,
  $dateTo: Date,
  $isRunning: Boolean,
  $isConfirmed: Boolean,
  $orderBy: TimeRecordOrder
) {
  timeRecords(
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    dateFrom: $dateFrom,
    dateTo: $dateTo,
    isRunning: $isRunning,
    isConfirmed: $isConfirmed,
    orderBy: $orderBy
  ) {
    edges {
      ...TimeRecordEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 987,
  "last": 123,
  "dateFrom": "2007-12-03",
  "dateTo": "2007-12-03",
  "isRunning": false,
  "isConfirmed": true,
  "orderBy": TimeRecordOrder
}
Response
{
  "data": {
    "timeRecords": {
      "edges": [TimeRecordEdge],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

unassignedOperations

Description

Operations which are not assigned to executors (or less than in requiredExecutors)

Response

Returns an OperationConnection!

Arguments
Name Description
objectId - ID
after - String
before - String
first - Int
last - Int
query - String Query for title
hasBillingItems - Boolean
hasMissingBillingItemQuantity - Boolean
executionFrom - Date Only operations with execution at this date or later will be counted.
executionTo - Date Only operations with execution before and up to and including this date will be counted.
serviceIds - [ID!]
zips - [String!]
cities - [String!]
orderBy - OperationOrder

Example

Query
query unassignedOperations(
  $objectId: ID,
  $after: String,
  $before: String,
  $first: Int,
  $last: Int,
  $query: String,
  $hasBillingItems: Boolean,
  $hasMissingBillingItemQuantity: Boolean,
  $executionFrom: Date,
  $executionTo: Date,
  $serviceIds: [ID!],
  $zips: [String!],
  $cities: [String!],
  $orderBy: OperationOrder
) {
  unassignedOperations(
    objectId: $objectId,
    after: $after,
    before: $before,
    first: $first,
    last: $last,
    query: $query,
    hasBillingItems: $hasBillingItems,
    hasMissingBillingItemQuantity: $hasMissingBillingItemQuantity,
    executionFrom: $executionFrom,
    executionTo: $executionTo,
    serviceIds: $serviceIds,
    zips: $zips,
    cities: $cities,
    orderBy: $orderBy
  ) {
    edges {
      ...OperationEdgeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "objectId": 4,
  "after": "xyz789",
  "before": "xyz789",
  "first": 123,
  "last": 123,
  "query": "xyz789",
  "hasBillingItems": true,
  "hasMissingBillingItemQuantity": false,
  "executionFrom": "2007-12-03",
  "executionTo": "2007-12-03",
  "serviceIds": ["4"],
  "zips": ["abc123"],
  "cities": ["xyz789"],
  "orderBy": OperationOrder
}
Response
{
  "data": {
    "unassignedOperations": {
      "edges": [OperationEdge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

Mutations

acceptEstimate

Response

Returns an AcceptEstimatePayload

Arguments
Name Description
input - AcceptEstimateInput!

Example

Query
mutation acceptEstimate($input: AcceptEstimateInput!) {
  acceptEstimate(input: $input) {
    estimate {
      ...EstimateFragment
    }
  }
}
Variables
{"input": AcceptEstimateInput}
Response
{"data": {"acceptEstimate": {"estimate": Estimate}}}

approveAbsence

Response

Returns an ApproveAbsencePayload

Arguments
Name Description
input - ApproveAbsenceInput!

Example

Query
mutation approveAbsence($input: ApproveAbsenceInput!) {
  approveAbsence(input: $input) {
    absence {
      ...AbsenceFragment
    }
  }
}
Variables
{"input": ApproveAbsenceInput}
Response
{"data": {"approveAbsence": {"absence": Absence}}}

cancelEmployee

Response

Returns a CancelEmployeePayload

Arguments
Name Description
input - CancelEmployeeInput!

Example

Query
mutation cancelEmployee($input: CancelEmployeeInput!) {
  cancelEmployee(input: $input) {
    employee {
      ...EmployeeFragment
    }
  }
}
Variables
{"input": CancelEmployeeInput}
Response
{"data": {"cancelEmployee": {"employee": Employee}}}

completeCreditNote

Response

Returns a CompleteCreditNotePayload

Arguments
Name Description
input - CompleteCreditNoteInput!

Example

Query
mutation completeCreditNote($input: CompleteCreditNoteInput!) {
  completeCreditNote(input: $input) {
    creditNote {
      ...CreditNoteFragment
    }
  }
}
Variables
{"input": CompleteCreditNoteInput}
Response
{
  "data": {
    "completeCreditNote": {"creditNote": CreditNote}
  }
}

completeEstimate

Response

Returns a CompleteEstimatePayload

Arguments
Name Description
input - CompleteEstimateInput!

Example

Query
mutation completeEstimate($input: CompleteEstimateInput!) {
  completeEstimate(input: $input) {
    estimate {
      ...EstimateFragment
    }
  }
}
Variables
{"input": CompleteEstimateInput}
Response
{"data": {"completeEstimate": {"estimate": Estimate}}}

completeInvoice

Response

Returns a CompleteInvoicePayload

Arguments
Name Description
input - CompleteInvoiceInput!

Example

Query
mutation completeInvoice($input: CompleteInvoiceInput!) {
  completeInvoice(input: $input) {
    invoice {
      ...InvoiceFragment
    }
  }
}
Variables
{"input": CompleteInvoiceInput}
Response
{"data": {"completeInvoice": {"invoice": Invoice}}}

completeTicket

Response

Returns a CompleteTicketPayload

Arguments
Name Description
input - CompleteTicketInput!

Example

Query
mutation completeTicket($input: CompleteTicketInput!) {
  completeTicket(input: $input) {
    ticket {
      ...TicketFragment
    }
  }
}
Variables
{"input": CompleteTicketInput}
Response
{"data": {"completeTicket": {"ticket": Ticket}}}

confirmTimeRecord

Response

Returns a ConfirmTimeRecordPayload

Arguments
Name Description
input - ConfirmTimeRecordInput!

Example

Query
mutation confirmTimeRecord($input: ConfirmTimeRecordInput!) {
  confirmTimeRecord(input: $input) {
    timeRecord {
      ...TimeRecordFragment
    }
  }
}
Variables
{"input": ConfirmTimeRecordInput}
Response
{
  "data": {
    "confirmTimeRecord": {"timeRecord": TimeRecord}
  }
}

confirmTimeRecords

Response

Returns a ConfirmTimeRecordsPayload

Arguments
Name Description
input - ConfirmTimeRecordsInput!

Example

Query
mutation confirmTimeRecords($input: ConfirmTimeRecordsInput!) {
  confirmTimeRecords(input: $input) {
    results {
      ...ConfirmTimeRecordResultFragment
    }
  }
}
Variables
{"input": ConfirmTimeRecordsInput}
Response
{
  "data": {
    "confirmTimeRecords": {
      "results": [ConfirmTimeRecordResult]
    }
  }
}

createAbsence

Response

Returns a CreateAbsencePayload

Arguments
Name Description
input - CreateAbsenceInput!

Example

Query
mutation createAbsence($input: CreateAbsenceInput!) {
  createAbsence(input: $input) {
    absence {
      ...AbsenceFragment
    }
  }
}
Variables
{"input": CreateAbsenceInput}
Response
{"data": {"createAbsence": {"absence": Absence}}}

createCreditNote

Response

Returns a CreateCreditNotePayload

Arguments
Name Description
input - CreateCreditNoteInput!

Example

Query
mutation createCreditNote($input: CreateCreditNoteInput!) {
  createCreditNote(input: $input) {
    creditNote {
      ...CreditNoteFragment
    }
  }
}
Variables
{"input": CreateCreditNoteInput}
Response
{"data": {"createCreditNote": {"creditNote": CreditNote}}}

createCustomer

Response

Returns a CreateCustomerPayload

Arguments
Name Description
input - CreateCustomerInput!

Example

Query
mutation createCustomer($input: CreateCustomerInput!) {
  createCustomer(input: $input) {
    customer {
      ...CustomerFragment
    }
  }
}
Variables
{"input": CreateCustomerInput}
Response
{"data": {"createCustomer": {"customer": Customer}}}

createCustomerContactPerson

Arguments
Name Description
input - CreateCustomerContactPersonInput!

Example

Query
mutation createCustomerContactPerson($input: CreateCustomerContactPersonInput!) {
  createCustomerContactPerson(input: $input) {
    customerContactPerson {
      ...CustomerContactPersonFragment
    }
  }
}
Variables
{"input": CreateCustomerContactPersonInput}
Response
{
  "data": {
    "createCustomerContactPerson": {
      "customerContactPerson": CustomerContactPerson
    }
  }
}

createEmployee

Response

Returns a CreateEmployeePayload

Arguments
Name Description
input - CreateEmployeeInput!

Example

Query
mutation createEmployee($input: CreateEmployeeInput!) {
  createEmployee(input: $input) {
    employee {
      ...EmployeeFragment
    }
  }
}
Variables
{"input": CreateEmployeeInput}
Response
{"data": {"createEmployee": {"employee": Employee}}}

createEstimate

Response

Returns a CreateEstimatePayload

Arguments
Name Description
input - CreateEstimateInput!

Example

Query
mutation createEstimate($input: CreateEstimateInput!) {
  createEstimate(input: $input) {
    estimate {
      ...EstimateFragment
    }
  }
}
Variables
{"input": CreateEstimateInput}
Response
{"data": {"createEstimate": {"estimate": Estimate}}}

createInvoice

Response

Returns a CreateInvoicePayload

Arguments
Name Description
input - CreateInvoiceInput!

Example

Query
mutation createInvoice($input: CreateInvoiceInput!) {
  createInvoice(input: $input) {
    invoice {
      ...InvoiceFragment
    }
  }
}
Variables
{"input": CreateInvoiceInput}
Response
{"data": {"createInvoice": {"invoice": Invoice}}}

createInvoiceFromPendingInvoiceItems

Arguments
Name Description
input - CreateInvoiceFromPendingInvoiceItemsInput!

Example

Query
mutation createInvoiceFromPendingInvoiceItems($input: CreateInvoiceFromPendingInvoiceItemsInput!) {
  createInvoiceFromPendingInvoiceItems(input: $input) {
    invoice {
      ...InvoiceFragment
    }
  }
}
Variables
{"input": CreateInvoiceFromPendingInvoiceItemsInput}
Response
{
  "data": {
    "createInvoiceFromPendingInvoiceItems": {
      "invoice": Invoice
    }
  }
}

createObject

Response

Returns a CreateObjectPayload

Arguments
Name Description
input - CreateObjectInput!

Example

Query
mutation createObject($input: CreateObjectInput!) {
  createObject(input: $input) {
    object {
      ...ObjectFragment
    }
  }
}
Variables
{"input": CreateObjectInput}
Response
{"data": {"createObject": {"object": Object}}}

createOperationReport

Response

Returns a CreateOperationReportPayload

Arguments
Name Description
input - CreateOperationReportInput!

Example

Query
mutation createOperationReport($input: CreateOperationReportInput!) {
  createOperationReport(input: $input) {
    operationReport {
      ...OperationReportFragment
    }
  }
}
Variables
{"input": CreateOperationReportInput}
Response
{
  "data": {
    "createOperationReport": {
      "operationReport": OperationReport
    }
  }
}

createOperationReportFile

Arguments
Name Description
input - CreateOperationReportFileInput!

Example

Query
mutation createOperationReportFile($input: CreateOperationReportFileInput!) {
  createOperationReportFile(input: $input) {
    uploadUrl
    operationReportFile {
      ...OperationReportFileFragment
    }
  }
}
Variables
{"input": CreateOperationReportFileInput}
Response
{
  "data": {
    "createOperationReportFile": {
      "uploadUrl": "http://www.test.com/",
      "operationReportFile": OperationReportFile
    }
  }
}

createOperationReportFileFromComment

Arguments
Name Description
input - CreateOperationReportFileFromCommentInput!

Example

Query
mutation createOperationReportFileFromComment($input: CreateOperationReportFileFromCommentInput!) {
  createOperationReportFileFromComment(input: $input) {
    operationReportFiles {
      ...OperationReportFileFragment
    }
  }
}
Variables
{"input": CreateOperationReportFileFromCommentInput}
Response
{
  "data": {
    "createOperationReportFileFromComment": {
      "operationReportFiles": [OperationReportFile]
    }
  }
}

createPayment

Response

Returns a CreatePaymentPayload

Arguments
Name Description
input - CreatePaymentInput!

Example

Query
mutation createPayment($input: CreatePaymentInput!) {
  createPayment(input: $input) {
    payment {
      ...PaymentFragment
    }
    invoice {
      ...InvoiceFragment
    }
  }
}
Variables
{"input": CreatePaymentInput}
Response
{
  "data": {
    "createPayment": {
      "payment": Payment,
      "invoice": Invoice
    }
  }
}

createPendingInvoiceItem

Response

Returns a CreatePendingInvoiceItemPayload

Arguments
Name Description
input - CreatePendingInvoiceItemInput!

Example

Query
mutation createPendingInvoiceItem($input: CreatePendingInvoiceItemInput!) {
  createPendingInvoiceItem(input: $input) {
    pendingInvoiceItem {
      ...PendingInvoiceItemFragment
    }
  }
}
Variables
{"input": CreatePendingInvoiceItemInput}
Response
{
  "data": {
    "createPendingInvoiceItem": {
      "pendingInvoiceItem": PendingInvoiceItem
    }
  }
}

createSubcontractor

Response

Returns a CreateSubcontractorPayload

Arguments
Name Description
input - CreateSubcontractorInput!

Example

Query
mutation createSubcontractor($input: CreateSubcontractorInput!) {
  createSubcontractor(input: $input) {
    subcontractor {
      ...SubcontractorFragment
    }
  }
}
Variables
{"input": CreateSubcontractorInput}
Response
{
  "data": {
    "createSubcontractor": {
      "subcontractor": Subcontractor
    }
  }
}

createSubcontractorContactPerson

Arguments
Name Description
input - CreateSubcontractorContactPersonInput!

Example

Query
mutation createSubcontractorContactPerson($input: CreateSubcontractorContactPersonInput!) {
  createSubcontractorContactPerson(input: $input) {
    subcontractorContactPerson {
      ...SubcontractorContactPersonFragment
    }
  }
}
Variables
{"input": CreateSubcontractorContactPersonInput}
Response
{
  "data": {
    "createSubcontractorContactPerson": {
      "subcontractorContactPerson": SubcontractorContactPerson
    }
  }
}

createSupplier

Response

Returns a CreateSupplierPayload

Arguments
Name Description
input - CreateSupplierInput!

Example

Query
mutation createSupplier($input: CreateSupplierInput!) {
  createSupplier(input: $input) {
    supplier {
      ...SupplierFragment
    }
  }
}
Variables
{"input": CreateSupplierInput}
Response
{"data": {"createSupplier": {"supplier": Supplier}}}

createSupplierContactPerson

Arguments
Name Description
input - CreateSupplierContactPersonInput!

Example

Query
mutation createSupplierContactPerson($input: CreateSupplierContactPersonInput!) {
  createSupplierContactPerson(input: $input) {
    supplierContactPerson {
      ...SupplierContactPersonFragment
    }
  }
}
Variables
{"input": CreateSupplierContactPersonInput}
Response
{
  "data": {
    "createSupplierContactPerson": {
      "supplierContactPerson": SupplierContactPerson
    }
  }
}

createTicket

Response

Returns a CreateTicketPayload

Arguments
Name Description
input - CreateTicketInput!

Example

Query
mutation createTicket($input: CreateTicketInput!) {
  createTicket(input: $input) {
    ticket {
      ...TicketFragment
    }
  }
}
Variables
{"input": CreateTicketInput}
Response
{"data": {"createTicket": {"ticket": Ticket}}}

createTicketFile

Response

Returns a CreateTicketFilePayload

Arguments
Name Description
input - CreateTicketFileInput!

Example

Query
mutation createTicketFile($input: CreateTicketFileInput!) {
  createTicketFile(input: $input) {
    uploadUrl
    ticketFile {
      ...TicketFileFragment
    }
  }
}
Variables
{"input": CreateTicketFileInput}
Response
{
  "data": {
    "createTicketFile": {
      "uploadUrl": "http://www.test.com/",
      "ticketFile": TicketFile
    }
  }
}

createTimeRecordBreak

Response

Returns a CreateTimeRecordBreakPayload

Arguments
Name Description
input - CreateTimeRecordBreakInput!

Example

Query
mutation createTimeRecordBreak($input: CreateTimeRecordBreakInput!) {
  createTimeRecordBreak(input: $input) {
    timeRecordBreak {
      ...TimeRecordBreakFragment
    }
  }
}
Variables
{"input": CreateTimeRecordBreakInput}
Response
{
  "data": {
    "createTimeRecordBreak": {
      "timeRecordBreak": TimeRecordBreak
    }
  }
}

createTimeRecords

Response

Returns a CreateTimeRecordsPayload

Arguments
Name Description
input - CreateTimeRecordsInput!

Example

Query
mutation createTimeRecords($input: CreateTimeRecordsInput!) {
  createTimeRecords(input: $input) {
    results {
      ...CreateTimeRecordResultFragment
    }
  }
}
Variables
{"input": CreateTimeRecordsInput}
Response
{
  "data": {
    "createTimeRecords": {
      "results": [CreateTimeRecordResult]
    }
  }
}

declineAbsence

Response

Returns a DeclineAbsencePayload

Arguments
Name Description
input - DeclineAbsenceInput!

Example

Query
mutation declineAbsence($input: DeclineAbsenceInput!) {
  declineAbsence(input: $input) {
    absence {
      ...AbsenceFragment
    }
  }
}
Variables
{"input": DeclineAbsenceInput}
Response
{"data": {"declineAbsence": {"absence": Absence}}}

declineEstimate

Response

Returns a DeclineEstimatePayload

Arguments
Name Description
input - DeclineEstimateInput!

Example

Query
mutation declineEstimate($input: DeclineEstimateInput!) {
  declineEstimate(input: $input) {
    estimate {
      ...EstimateFragment
    }
  }
}
Variables
{"input": DeclineEstimateInput}
Response
{"data": {"declineEstimate": {"estimate": Estimate}}}

deleteCustomer

Response

Returns a DeleteCustomerPayload

Arguments
Name Description
input - DeleteCustomerInput!

Example

Query
mutation deleteCustomer($input: DeleteCustomerInput!) {
  deleteCustomer(input: $input) {
    deletedCustomerId
  }
}
Variables
{"input": DeleteCustomerInput}
Response
{
  "data": {
    "deleteCustomer": {
      "deletedCustomerId": "4"
    }
  }
}

deleteCustomerContactPerson

Arguments
Name Description
input - DeleteCustomerContactPersonInput!

Example

Query
mutation deleteCustomerContactPerson($input: DeleteCustomerContactPersonInput!) {
  deleteCustomerContactPerson(input: $input) {
    deletedCustomerContactPersonId
  }
}
Variables
{"input": DeleteCustomerContactPersonInput}
Response
{"data": {"deleteCustomerContactPerson": {"deletedCustomerContactPersonId": 4}}}

deleteEmployee

Response

Returns a DeleteEmployeePayload

Arguments
Name Description
input - DeleteEmployeeInput!

Example

Query
mutation deleteEmployee($input: DeleteEmployeeInput!) {
  deleteEmployee(input: $input) {
    deletedEmployeeId
  }
}
Variables
{"input": DeleteEmployeeInput}
Response
{
  "data": {
    "deleteEmployee": {
      "deletedEmployeeId": "4"
    }
  }
}

deleteEstimate

Response

Returns a DeleteEstimatePayload

Arguments
Name Description
input - DeleteEstimateInput!

Example

Query
mutation deleteEstimate($input: DeleteEstimateInput!) {
  deleteEstimate(input: $input) {
    deletedEstimateId
  }
}
Variables
{"input": DeleteEstimateInput}
Response
{
  "data": {
    "deleteEstimate": {
      "deletedEstimateId": "4"
    }
  }
}

deleteObject

Response

Returns a DeleteObjectPayload

Arguments
Name Description
input - DeleteObjectInput!

Example

Query
mutation deleteObject($input: DeleteObjectInput!) {
  deleteObject(input: $input) {
    deletedObjectId
  }
}
Variables
{"input": DeleteObjectInput}
Response
{
  "data": {
    "deleteObject": {"deletedObjectId": "4"}
  }
}

deleteOperationReport

Response

Returns a DeleteOperationReportPayload

Arguments
Name Description
input - DeleteOperationReportInput!

Example

Query
mutation deleteOperationReport($input: DeleteOperationReportInput!) {
  deleteOperationReport(input: $input) {
    deletedOperationReportId
  }
}
Variables
{"input": DeleteOperationReportInput}
Response
{
  "data": {
    "deleteOperationReport": {
      "deletedOperationReportId": "4"
    }
  }
}

deleteOperationReportFile

Arguments
Name Description
input - DeleteOperationReportFileInput!

Example

Query
mutation deleteOperationReportFile($input: DeleteOperationReportFileInput!) {
  deleteOperationReportFile(input: $input) {
    deletedOperationReportFileId
  }
}
Variables
{"input": DeleteOperationReportFileInput}
Response
{
  "data": {
    "deleteOperationReportFile": {
      "deletedOperationReportFileId": "4"
    }
  }
}

deletePendingInvoiceItems

Arguments
Name Description
input - DeletePendingInvoiceItemsInput!

Example

Query
mutation deletePendingInvoiceItems($input: DeletePendingInvoiceItemsInput!) {
  deletePendingInvoiceItems(input: $input) {
    deletedPendingInvoiceItemIds
  }
}
Variables
{"input": DeletePendingInvoiceItemsInput}
Response
{"data": {"deletePendingInvoiceItems": {"deletedPendingInvoiceItemIds": [4]}}}

deleteSubcontractor

Response

Returns a DeleteSubcontractorPayload

Arguments
Name Description
input - DeleteSubcontractorInput!

Example

Query
mutation deleteSubcontractor($input: DeleteSubcontractorInput!) {
  deleteSubcontractor(input: $input) {
    deletedSubcontractorId
  }
}
Variables
{"input": DeleteSubcontractorInput}
Response
{
  "data": {
    "deleteSubcontractor": {
      "deletedSubcontractorId": "4"
    }
  }
}

deleteSubcontractorContactPerson

Arguments
Name Description
input - DeleteSubcontractorContactPersonInput!

Example

Query
mutation deleteSubcontractorContactPerson($input: DeleteSubcontractorContactPersonInput!) {
  deleteSubcontractorContactPerson(input: $input) {
    deletedSubcontractorContactPersonId
  }
}
Variables
{"input": DeleteSubcontractorContactPersonInput}
Response
{
  "data": {
    "deleteSubcontractorContactPerson": {
      "deletedSubcontractorContactPersonId": "4"
    }
  }
}

deleteSupplier

Response

Returns a DeleteSupplierPayload

Arguments
Name Description
input - DeleteSupplierInput!

Example

Query
mutation deleteSupplier($input: DeleteSupplierInput!) {
  deleteSupplier(input: $input) {
    deletedSupplierId
  }
}
Variables
{"input": DeleteSupplierInput}
Response
{"data": {"deleteSupplier": {"deletedSupplierId": 4}}}

deleteSupplierContactPerson

Arguments
Name Description
input - DeleteSupplierContactPersonInput!

Example

Query
mutation deleteSupplierContactPerson($input: DeleteSupplierContactPersonInput!) {
  deleteSupplierContactPerson(input: $input) {
    deletedSupplierContactPersonId
  }
}
Variables
{"input": DeleteSupplierContactPersonInput}
Response
{"data": {"deleteSupplierContactPerson": {"deletedSupplierContactPersonId": 4}}}

deleteTicket

Response

Returns a DeleteTicketPayload

Arguments
Name Description
input - DeleteTicketInput!

Example

Query
mutation deleteTicket($input: DeleteTicketInput!) {
  deleteTicket(input: $input) {
    deletedTicketId
  }
}
Variables
{"input": DeleteTicketInput}
Response
{"data": {"deleteTicket": {"deletedTicketId": 4}}}

deleteTicketFile

Response

Returns a DeleteTicketFilePayload

Arguments
Name Description
input - DeleteTicketFileInput!

Example

Query
mutation deleteTicketFile($input: DeleteTicketFileInput!) {
  deleteTicketFile(input: $input) {
    deletedTicketFileId
  }
}
Variables
{"input": DeleteTicketFileInput}
Response
{
  "data": {
    "deleteTicketFile": {
      "deletedTicketFileId": "4"
    }
  }
}

deleteTimeRecord

Response

Returns a DeleteTimeRecordPayload

Arguments
Name Description
input - DeleteTimeRecordInput!

Example

Query
mutation deleteTimeRecord($input: DeleteTimeRecordInput!) {
  deleteTimeRecord(input: $input) {
    deletedTimeRecordId
  }
}
Variables
{"input": DeleteTimeRecordInput}
Response
{
  "data": {
    "deleteTimeRecord": {
      "deletedTimeRecordId": "4"
    }
  }
}

deleteTimeRecordBreak

Response

Returns a DeleteTimeRecordBreakPayload

Arguments
Name Description
input - DeleteTimeRecordBreakInput!

Example

Query
mutation deleteTimeRecordBreak($input: DeleteTimeRecordBreakInput!) {
  deleteTimeRecordBreak(input: $input) {
    deletedTimeRecordBreakId
  }
}
Variables
{"input": DeleteTimeRecordBreakInput}
Response
{
  "data": {
    "deleteTimeRecordBreak": {
      "deletedTimeRecordBreakId": "4"
    }
  }
}

deleteTimeRecords

Response

Returns a DeleteTimeRecordsPayload

Arguments
Name Description
input - DeleteTimeRecordsInput!

Example

Query
mutation deleteTimeRecords($input: DeleteTimeRecordsInput!) {
  deleteTimeRecords(input: $input) {
    results {
      ...DeleteTimeRecordResultFragment
    }
  }
}
Variables
{"input": DeleteTimeRecordsInput}
Response
{
  "data": {
    "deleteTimeRecords": {
      "results": [DeleteTimeRecordResult]
    }
  }
}

rejectTicket

Response

Returns a RejectTicketPayload

Arguments
Name Description
input - RejectTicketInput!

Example

Query
mutation rejectTicket($input: RejectTicketInput!) {
  rejectTicket(input: $input) {
    ticket {
      ...TicketFragment
    }
  }
}
Variables
{"input": RejectTicketInput}
Response
{"data": {"rejectTicket": {"ticket": Ticket}}}

updateAbsence

Response

Returns an UpdateAbsencePayload

Arguments
Name Description
input - UpdateAbsenceInput!

Example

Query
mutation updateAbsence($input: UpdateAbsenceInput!) {
  updateAbsence(input: $input) {
    absence {
      ...AbsenceFragment
    }
  }
}
Variables
{"input": UpdateAbsenceInput}
Response
{"data": {"updateAbsence": {"absence": Absence}}}

updateCreditNote

Response

Returns an UpdateCreditNotePayload

Arguments
Name Description
input - UpdateCreditNoteInput!

Example

Query
mutation updateCreditNote($input: UpdateCreditNoteInput!) {
  updateCreditNote(input: $input) {
    creditNote {
      ...CreditNoteFragment
    }
  }
}
Variables
{"input": UpdateCreditNoteInput}
Response
{"data": {"updateCreditNote": {"creditNote": CreditNote}}}

updateCustomer

Response

Returns an UpdateCustomerPayload

Arguments
Name Description
input - UpdateCustomerInput!

Example

Query
mutation updateCustomer($input: UpdateCustomerInput!) {
  updateCustomer(input: $input) {
    customer {
      ...CustomerFragment
    }
  }
}
Variables
{"input": UpdateCustomerInput}
Response
{"data": {"updateCustomer": {"customer": Customer}}}

updateCustomerContactPerson

Arguments
Name Description
input - UpdateCustomerContactPersonInput!

Example

Query
mutation updateCustomerContactPerson($input: UpdateCustomerContactPersonInput!) {
  updateCustomerContactPerson(input: $input) {
    customerContactPerson {
      ...CustomerContactPersonFragment
    }
  }
}
Variables
{"input": UpdateCustomerContactPersonInput}
Response
{
  "data": {
    "updateCustomerContactPerson": {
      "customerContactPerson": CustomerContactPerson
    }
  }
}

updateEmployee

Response

Returns an UpdateEmployeePayload

Arguments
Name Description
input - UpdateEmployeeInput!

Example

Query
mutation updateEmployee($input: UpdateEmployeeInput!) {
  updateEmployee(input: $input) {
    employee {
      ...EmployeeFragment
    }
  }
}
Variables
{"input": UpdateEmployeeInput}
Response
{"data": {"updateEmployee": {"employee": Employee}}}

updateEstimate

Response

Returns an UpdateEstimatePayload

Arguments
Name Description
input - UpdateEstimateInput!

Example

Query
mutation updateEstimate($input: UpdateEstimateInput!) {
  updateEstimate(input: $input) {
    estimate {
      ...EstimateFragment
    }
  }
}
Variables
{"input": UpdateEstimateInput}
Response
{"data": {"updateEstimate": {"estimate": Estimate}}}

updateEstimateWebEnabled

Response

Returns an UpdateEstimateWebEnabledPayload

Arguments
Name Description
input - UpdateEstimateWebEnabledInput!

Example

Query
mutation updateEstimateWebEnabled($input: UpdateEstimateWebEnabledInput!) {
  updateEstimateWebEnabled(input: $input) {
    estimate {
      ...EstimateFragment
    }
  }
}
Variables
{"input": UpdateEstimateWebEnabledInput}
Response
{
  "data": {
    "updateEstimateWebEnabled": {"estimate": Estimate}
  }
}

updateInvoice

Response

Returns an UpdateInvoicePayload

Arguments
Name Description
input - UpdateInvoiceInput!

Example

Query
mutation updateInvoice($input: UpdateInvoiceInput!) {
  updateInvoice(input: $input) {
    invoice {
      ...InvoiceFragment
    }
  }
}
Variables
{"input": UpdateInvoiceInput}
Response
{"data": {"updateInvoice": {"invoice": Invoice}}}

updateObject

Response

Returns an UpdateObjectPayload

Arguments
Name Description
input - UpdateObjectInput!

Example

Query
mutation updateObject($input: UpdateObjectInput!) {
  updateObject(input: $input) {
    object {
      ...ObjectFragment
    }
  }
}
Variables
{"input": UpdateObjectInput}
Response
{"data": {"updateObject": {"object": Object}}}

updateOperationReport

Response

Returns an UpdateOperationReportPayload

Arguments
Name Description
input - UpdateOperationReportInput!

Example

Query
mutation updateOperationReport($input: UpdateOperationReportInput!) {
  updateOperationReport(input: $input) {
    operationReport {
      ...OperationReportFragment
    }
  }
}
Variables
{"input": UpdateOperationReportInput}
Response
{
  "data": {
    "updateOperationReport": {
      "operationReport": OperationReport
    }
  }
}

updatePendingInvoiceItem

Response

Returns an UpdatePendingInvoiceItemPayload

Arguments
Name Description
input - UpdatePendingInvoiceItemInput!

Example

Query
mutation updatePendingInvoiceItem($input: UpdatePendingInvoiceItemInput!) {
  updatePendingInvoiceItem(input: $input) {
    pendingInvoiceItem {
      ...PendingInvoiceItemFragment
    }
  }
}
Variables
{"input": UpdatePendingInvoiceItemInput}
Response
{
  "data": {
    "updatePendingInvoiceItem": {
      "pendingInvoiceItem": PendingInvoiceItem
    }
  }
}

updateSubcontractor

Response

Returns an UpdateSubcontractorPayload

Arguments
Name Description
input - UpdateSubcontractorInput!

Example

Query
mutation updateSubcontractor($input: UpdateSubcontractorInput!) {
  updateSubcontractor(input: $input) {
    subcontractor {
      ...SubcontractorFragment
    }
  }
}
Variables
{"input": UpdateSubcontractorInput}
Response
{
  "data": {
    "updateSubcontractor": {
      "subcontractor": Subcontractor
    }
  }
}

updateSubcontractorContactPerson

Arguments
Name Description
input - UpdateSubcontractorContactPersonInput!

Example

Query
mutation updateSubcontractorContactPerson($input: UpdateSubcontractorContactPersonInput!) {
  updateSubcontractorContactPerson(input: $input) {
    subcontractorContactPerson {
      ...SubcontractorContactPersonFragment
    }
  }
}
Variables
{"input": UpdateSubcontractorContactPersonInput}
Response
{
  "data": {
    "updateSubcontractorContactPerson": {
      "subcontractorContactPerson": SubcontractorContactPerson
    }
  }
}

updateSupplier

Response

Returns an UpdateSupplierPayload

Arguments
Name Description
input - UpdateSupplierInput!

Example

Query
mutation updateSupplier($input: UpdateSupplierInput!) {
  updateSupplier(input: $input) {
    supplier {
      ...SupplierFragment
    }
  }
}
Variables
{"input": UpdateSupplierInput}
Response
{"data": {"updateSupplier": {"supplier": Supplier}}}

updateSupplierContactPerson

Arguments
Name Description
input - UpdateSupplierContactPersonInput!

Example

Query
mutation updateSupplierContactPerson($input: UpdateSupplierContactPersonInput!) {
  updateSupplierContactPerson(input: $input) {
    supplierContactPerson {
      ...SupplierContactPersonFragment
    }
  }
}
Variables
{"input": UpdateSupplierContactPersonInput}
Response
{
  "data": {
    "updateSupplierContactPerson": {
      "supplierContactPerson": SupplierContactPerson
    }
  }
}

updateTicket

Response

Returns an UpdateTicketPayload

Arguments
Name Description
input - UpdateTicketInput!

Example

Query
mutation updateTicket($input: UpdateTicketInput!) {
  updateTicket(input: $input) {
    ticket {
      ...TicketFragment
    }
  }
}
Variables
{"input": UpdateTicketInput}
Response
{"data": {"updateTicket": {"ticket": Ticket}}}

updateTimeRecord

Response

Returns an UpdateTimeRecordPayload

Arguments
Name Description
input - UpdateTimeRecordInput!

Example

Query
mutation updateTimeRecord($input: UpdateTimeRecordInput!) {
  updateTimeRecord(input: $input) {
    timeRecord {
      ...TimeRecordFragment
    }
  }
}
Variables
{"input": UpdateTimeRecordInput}
Response
{"data": {"updateTimeRecord": {"timeRecord": TimeRecord}}}

updateTimeRecordBreak

Response

Returns an UpdateTimeRecordBreakPayload

Arguments
Name Description
input - UpdateTimeRecordBreakInput!

Example

Query
mutation updateTimeRecordBreak($input: UpdateTimeRecordBreakInput!) {
  updateTimeRecordBreak(input: $input) {
    timeRecordBreak {
      ...TimeRecordBreakFragment
    }
  }
}
Variables
{"input": UpdateTimeRecordBreakInput}
Response
{
  "data": {
    "updateTimeRecordBreak": {
      "timeRecordBreak": TimeRecordBreak
    }
  }
}

Types

Absence

Fields
Field Name Description
id - ID!
employee - Employee!
type - AbsenceType!
status - AbsenceStatus!
start - DateTime!
end - DateTime!
startDayFraction - Float!
endDayFraction - Float!
daysCount - Float
hoursCount - Float
countSetManually - Boolean!
note - String
operationExecutors - OperationExecutorConnection!
Arguments
after - String
before - String
first - Int
last - Int
hasTimeRecord - Boolean
hideAbsent - Boolean
approvedAt - DateTime Set if Absence is approved
declinedAt - DateTime Set if Absence is declined
createdAt - DateTime!
Example
{
  "id": 4,
  "employee": Employee,
  "type": "VACATION",
  "status": "PENDING",
  "start": "2007-12-03T10:15:30Z",
  "end": "2007-12-03T10:15:30Z",
  "startDayFraction": 987.65,
  "endDayFraction": 987.65,
  "daysCount": 123.45,
  "hoursCount": 123.45,
  "countSetManually": true,
  "note": "xyz789",
  "operationExecutors": OperationExecutorConnection,
  "approvedAt": "2007-12-03T10:15:30Z",
  "declinedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z"
}

AbsenceStatus

Values
Enum Value Description

PENDING

APPROVED

DECLINED

Example
"PENDING"

AbsenceType

Values
Enum Value Description

VACATION

SICK

CHILD_SICK

SPECIAL_LEAVE

UNPAID_LEAVE

COMP_TIME_OFF

PARENTAL_LEAVE

MATERNITY_PROTECTION

EDUCATIONAL_LEAVE

Example
"VACATION"

AbsenceTypeDefinition

Fields
Field Name Description
type - AbsenceType!
label - String!
paid - Boolean!
deductsFromVacationQuota - Boolean!
Example
{
  "type": "VACATION",
  "label": "xyz789",
  "paid": true,
  "deductsFromVacationQuota": true
}

AcceptEstimateInput

Fields
Input Field Description
estimateId - ID!
Example
{"estimateId": "4"}

AcceptEstimatePayload

Fields
Field Name Description
estimate - Estimate
Example
{"estimate": Estimate}

ApproveAbsenceInput

Fields
Input Field Description
absenceId - ID!
Example
{"absenceId": 4}

ApproveAbsencePayload

Fields
Field Name Description
absence - Absence
Example
{"absence": Absence}

BillingPeriodInterval

Values
Enum Value Description

MONTH

QUARTER

Example
"MONTH"

Boolean

Description

The Boolean scalar type represents true or false.

Example
true

CancelEmployeeInput

Fields
Input Field Description
employeeId - ID!
cancelDate - Date!
updateAbsences - Boolean Must be true if there are approved absences after cancelDate that should be adjusted/removed.
Example
{
  "employeeId": 4,
  "cancelDate": "2007-12-03",
  "updateAbsences": false
}

CancelEmployeePayload

Fields
Field Name Description
employee - Employee
Example
{"employee": Employee}

Company

Fields
Field Name Description
id - ID!
companyName - String
legalForm - LegalForm
streetAddress - String
zip - String
city - String
country - CountryCode
language - LanguageTag!
currency - CurrencyCode!
taxNumber - String
vatId - String
email - String
phone - String
fax - String
website - String
iban - String
bic - String
registerCourt - String
companyRegistrationNumber - String
managingDirectors - [ManagingDirector]
logoUrl - URL
createdAt - DateTime
Example
{
  "id": 4,
  "companyName": "abc123",
  "legalForm": "DE_EINZELUNTERNEHMER",
  "streetAddress": "abc123",
  "zip": "abc123",
  "city": "xyz789",
  "country": "US",
  "language": LanguageTag,
  "currency": CurrencyCode,
  "taxNumber": "xyz789",
  "vatId": "xyz789",
  "email": "xyz789",
  "phone": "abc123",
  "fax": "abc123",
  "website": "abc123",
  "iban": "xyz789",
  "bic": "xyz789",
  "registerCourt": "abc123",
  "companyRegistrationNumber": "abc123",
  "managingDirectors": [ManagingDirector],
  "logoUrl": "http://www.test.com/",
  "createdAt": "2007-12-03T10:15:30Z"
}

CompleteCreditNoteInput

Fields
Input Field Description
creditNoteId - ID!
Example
{"creditNoteId": 4}

CompleteCreditNotePayload

Fields
Field Name Description
creditNote - CreditNote
Example
{"creditNote": CreditNote}

CompleteEstimateInput

Fields
Input Field Description
estimateId - ID!
Example
{"estimateId": "4"}

CompleteEstimatePayload

Fields
Field Name Description
estimate - Estimate
Example
{"estimate": Estimate}

CompleteInvoiceInput

Fields
Input Field Description
invoiceId - ID!
Example
{"invoiceId": "4"}

CompleteInvoicePayload

Fields
Field Name Description
invoice - Invoice
Example
{"invoice": Invoice}

CompleteTicketInput

Fields
Input Field Description
ticketId - ID!
Example
{"ticketId": "4"}

CompleteTicketPayload

Fields
Field Name Description
ticket - Ticket
Example
{"ticket": Ticket}

ConfirmTimeRecordInput

Fields
Input Field Description
timeRecordId - ID!
Example
{"timeRecordId": "4"}

ConfirmTimeRecordPayload

Fields
Field Name Description
timeRecord - TimeRecord
Example
{"timeRecord": TimeRecord}

ConfirmTimeRecordResult

Fields
Field Name Description
id - ID! The time record hash id from the input
timeRecord - TimeRecord The confirmed time record (null if failed)
error - String Error message (null if succeeded)
Example
{
  "id": "4",
  "timeRecord": TimeRecord,
  "error": "abc123"
}

ConfirmTimeRecordsInput

Fields
Input Field Description
timeRecordIds - [ID!]!
Example
{"timeRecordIds": ["4"]}

ConfirmTimeRecordsPayload

Fields
Field Name Description
results - [ConfirmTimeRecordResult!]!
Example
{"results": [ConfirmTimeRecordResult]}

CountryCode

Description

ISO 3166-1 alpha-2 country codes

Example
"US"

CreateAbsenceInput

Fields
Input Field Description
employeeId - ID!
type - AbsenceType!
start - DateTime!
end - DateTime!
note - String
startDayFraction - Float
endDayFraction - Float
Example
{
  "employeeId": "4",
  "type": "VACATION",
  "start": "2007-12-03T10:15:30Z",
  "end": "2007-12-03T10:15:30Z",
  "note": "xyz789",
  "startDayFraction": 123.45,
  "endDayFraction": 123.45
}

CreateAbsencePayload

Fields
Field Name Description
absence - Absence
Example
{"absence": Absence}

CreateCreditNoteDeliveryDateInput

Description

Either date or start and end can be set. Date will be set to current date if date, start and end is empty.

Fields
Input Field Description
date - Date
start - Date
end - Date
Example
{
  "date": "2007-12-03",
  "start": "2007-12-03",
  "end": "2007-12-03"
}

CreateCreditNoteInput

Fields
Input Field Description
subcontractorId - ID!
subcontractorContactPersonId - ID
number - Int Will be set to the next credit note number if empty
dueDate - Date Will be set to current date if empty
dueDateFormat - CreditNoteDueDateFormat
hideDueDateText - Boolean This will hide the due date text on the credit note pdf
creditNoteDate - Date Will be set to current date if empty
deliveryDate - CreateCreditNoteDeliveryDateInput!
items - [CreateCreditNoteItemInput]
introductionText - String
closingText - String
status - CreateCreditNoteStatus Status of created credit note. Set to DRAFT if empty.
sendAfterCreation - Boolean Sends credit note to subcontractor after creation, if set to true. Does not work with credit notes in status DRAFT.
Example
{
  "subcontractorId": 4,
  "subcontractorContactPersonId": 4,
  "number": 123,
  "dueDate": "2007-12-03",
  "dueDateFormat": "DAYS",
  "hideDueDateText": false,
  "creditNoteDate": "2007-12-03",
  "deliveryDate": CreateCreditNoteDeliveryDateInput,
  "items": [CreateCreditNoteItemInput],
  "introductionText": "xyz789",
  "closingText": "xyz789",
  "status": "DRAFT",
  "sendAfterCreation": true
}

CreateCreditNoteItemInput

Fields
Input Field Description
title - String!
description - String
quantity - Float!
unitPrice - Int!
taxRate - Float!
unit - String
serviceId - ID
materialId - ID
Example
{
  "title": "xyz789",
  "description": "abc123",
  "quantity": 123.45,
  "unitPrice": 987,
  "taxRate": 987.65,
  "unit": "xyz789",
  "serviceId": "4",
  "materialId": 4
}

CreateCreditNotePayload

Fields
Field Name Description
creditNote - CreditNote
Example
{"creditNote": CreditNote}

CreateCreditNoteStatus

Values
Enum Value Description

DRAFT

COMPLETED

PAID

Example
"DRAFT"

CreateCustomerContactPersonInput

Fields
Input Field Description
customerId - ID!
isDefault - Boolean
salutation - String!
firstName - String
lastName - String!
role - String
email - String
phone - String
Example
{
  "customerId": "4",
  "isDefault": false,
  "salutation": "xyz789",
  "firstName": "abc123",
  "lastName": "abc123",
  "role": "xyz789",
  "email": "abc123",
  "phone": "xyz789"
}

CreateCustomerContactPersonPayload

Fields
Field Name Description
customerContactPerson - CustomerContactPerson
Example
{"customerContactPerson": CustomerContactPerson}

CreateCustomerEmailInput

Fields
Input Field Description
type - CustomerEmailType!
email - String!
Example
{"type": "GENERAL", "email": "xyz789"}

CreateCustomerInput

Fields
Input Field Description
type - CustomerType!
salutation - String
firstName - String
lastName - String
companyName - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
emails - [CreateCustomerEmailInput!]
phone - String
fax - String
website - String
vatId - String
Example
{
  "type": "PERSON",
  "salutation": "xyz789",
  "firstName": "abc123",
  "lastName": "xyz789",
  "companyName": "abc123",
  "addressSupplement": "xyz789",
  "streetAddress": "xyz789",
  "zip": "xyz789",
  "city": "abc123",
  "country": "US",
  "emails": [CreateCustomerEmailInput],
  "phone": "abc123",
  "fax": "xyz789",
  "website": "abc123",
  "vatId": "abc123"
}

CreateCustomerPayload

Fields
Field Name Description
customer - Customer
Example
{"customer": Customer}

CreateEmployeeInput

Fields
Input Field Description
salutation - String!
firstName - String
lastName - String!
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
state - StateCode
email - String
phone - String
birthDate - Date
personnelNumberPrefix - String
personnelNumber - Int!
hasDrivingLicenceClassB - Boolean
automaticTimeRecording - Boolean
tags - [String!]
Example
{
  "salutation": "xyz789",
  "firstName": "xyz789",
  "lastName": "abc123",
  "addressSupplement": "xyz789",
  "streetAddress": "abc123",
  "zip": "abc123",
  "city": "xyz789",
  "country": "US",
  "state": StateCode,
  "email": "abc123",
  "phone": "xyz789",
  "birthDate": "2007-12-03",
  "personnelNumberPrefix": "abc123",
  "personnelNumber": 987,
  "hasDrivingLicenceClassB": false,
  "automaticTimeRecording": false,
  "tags": ["xyz789"]
}

CreateEmployeePayload

Fields
Field Name Description
employee - Employee
Example
{"employee": Employee}

CreateEstimateInput

Fields
Input Field Description
customerId - ID!
number - Int Will be set to the next estimate number if empty
estimateDate - Date Will be set to current date if empty
validityDate - Date Will be set to one month if empty
items - [CreateEstimateItemInput]
introductionText - String
closingText - String
Example
{
  "customerId": "4",
  "number": 123,
  "estimateDate": "2007-12-03",
  "validityDate": "2007-12-03",
  "items": [CreateEstimateItemInput],
  "introductionText": "xyz789",
  "closingText": "xyz789"
}

CreateEstimateItemInput

Fields
Input Field Description
position - Int Position of this item within the estimate. Defaults to the item's index if omitted.
title - String!
description - String
quantity - Float!
unitPrice - Int!
taxRate - Float!
unit - String
serviceId - ID The service this item is based on.
materialId - ID
objectId - ID The object (Objekt / service location) this item is assigned to. Its customer must match the estimate's customer.
Example
{
  "position": 123,
  "title": "xyz789",
  "description": "xyz789",
  "quantity": 987.65,
  "unitPrice": 123,
  "taxRate": 987.65,
  "unit": "abc123",
  "serviceId": "4",
  "materialId": "4",
  "objectId": "4"
}

CreateEstimatePayload

Fields
Field Name Description
estimate - Estimate
Example
{"estimate": Estimate}

CreateInvoiceDeliveryDateInput

Description

Either date or start and end can be set. Date will be set to current date if date, start and end is empty.

Fields
Input Field Description
date - Date
start - Date
end - Date
Example
{
  "date": "2007-12-03",
  "start": "2007-12-03",
  "end": "2007-12-03"
}

CreateInvoiceFromPendingInvoiceItemsInput

Fields
Input Field Description
pendingInvoiceItemIds - [ID!]!
invoiceDate - Date
eInvoiceType - EInvoiceType
number - Int
customerContactPersonId - ID
dueDate - Date
dueDateFormat - InvoiceDueDateFormat
billingPeriodDueDateType - DueDateType
billingPeriodsAreDueAtEnd - Boolean
hideDueDateText - Boolean
introductionText - String
closingText - String
skontoEnabled - Boolean
skontoPercent - Float
skontoDays - Int
Example
{
  "pendingInvoiceItemIds": [4],
  "invoiceDate": "2007-12-03",
  "eInvoiceType": "NONE",
  "number": 123,
  "customerContactPersonId": 4,
  "dueDate": "2007-12-03",
  "dueDateFormat": "DAYS",
  "billingPeriodDueDateType": "IMMEDIATELY",
  "billingPeriodsAreDueAtEnd": true,
  "hideDueDateText": false,
  "introductionText": "abc123",
  "closingText": "xyz789",
  "skontoEnabled": false,
  "skontoPercent": 123.45,
  "skontoDays": 123
}

CreateInvoiceFromPendingInvoiceItemsPayload

Fields
Field Name Description
invoice - Invoice
Example
{"invoice": Invoice}

CreateInvoiceInput

Fields
Input Field Description
customerId - ID!
number - Int Will be set to the next invoice number if empty
dueDate - Date Will be set to current date if empty
dueDateFormat - InvoiceDueDateFormat
hideDueDateText - Boolean This will hide the due date text on the invoice pdf
invoiceDate - Date Will be set to current date if empty
deliveryDate - CreateInvoiceDeliveryDateInput
items - [CreateInvoiceItemInput]
introductionText - String
closingText - String
status - CreateInvoiceStatus Status of created invoice. Set to DRAFT if empty.
sendAfterCreation - Boolean Sends invoice to customer after creation, if set to true. Does not work with invoices in status DRAFT.
Example
{
  "customerId": 4,
  "number": 987,
  "dueDate": "2007-12-03",
  "dueDateFormat": "DAYS",
  "hideDueDateText": true,
  "invoiceDate": "2007-12-03",
  "deliveryDate": CreateInvoiceDeliveryDateInput,
  "items": [CreateInvoiceItemInput],
  "introductionText": "abc123",
  "closingText": "abc123",
  "status": "DRAFT",
  "sendAfterCreation": false
}

CreateInvoiceItemInput

Fields
Input Field Description
title - String!
description - String
quantity - Float!
unitPrice - Int!
taxRate - Float!
unit - String
serviceId - ID The service this item is based on.
materialId - ID
Example
{
  "title": "abc123",
  "description": "xyz789",
  "quantity": 987.65,
  "unitPrice": 987,
  "taxRate": 987.65,
  "unit": "xyz789",
  "serviceId": 4,
  "materialId": 4
}

CreateInvoicePayload

Fields
Field Name Description
invoice - Invoice
Example
{"invoice": Invoice}

CreateInvoiceStatus

Values
Enum Value Description

DRAFT

COMPLETED

PAID

Example
"DRAFT"

CreateObjectInput

Description

Either name, streetAddress or city has to be set

Fields
Input Field Description
customerId - ID!
customerContactPersonId - ID
name - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
state - StateCode
locationRadiusMeters - Int
email - String
phone - String
extraInvoiceAddressFieldLines - String
costCenter - String
invoiceAddress - CreateObjectInvoiceAddressInput
invoiceSettings - CreateObjectInvoiceSettingsInput
tags - [String!]
Example
{
  "customerId": "4",
  "customerContactPersonId": 4,
  "name": "abc123",
  "addressSupplement": "xyz789",
  "streetAddress": "abc123",
  "zip": "abc123",
  "city": "abc123",
  "country": "US",
  "state": StateCode,
  "locationRadiusMeters": 987,
  "email": "xyz789",
  "phone": "xyz789",
  "extraInvoiceAddressFieldLines": "abc123",
  "costCenter": "abc123",
  "invoiceAddress": CreateObjectInvoiceAddressInput,
  "invoiceSettings": CreateObjectInvoiceSettingsInput,
  "tags": ["abc123"]
}

CreateObjectInvoiceAddressInput

Fields
Input Field Description
type - ObjectInvoiceAddressType!
salutation - String Has to be set on type PERSON
firstName - String
lastName - String Has to be set on type PERSON
companyName - String Has to be set on type COMPANY
addressSupplement - String
streetAddress - String!
zip - String!
city - String!
country - CountryCode
Example
{
  "type": "PERSON",
  "salutation": "xyz789",
  "firstName": "xyz789",
  "lastName": "abc123",
  "companyName": "xyz789",
  "addressSupplement": "xyz789",
  "streetAddress": "abc123",
  "zip": "abc123",
  "city": "xyz789",
  "country": "US"
}

CreateObjectInvoiceSettingsInput

Fields
Input Field Description
eInvoiceType - EInvoiceType
dueDateType - DueDateType
hideDueDateText - Boolean This will hide the due date text on the invoice pdf
introductionText - String
closingText - String
Example
{
  "eInvoiceType": "NONE",
  "dueDateType": "IMMEDIATELY",
  "hideDueDateText": true,
  "introductionText": "xyz789",
  "closingText": "abc123"
}

CreateObjectPayload

Fields
Field Name Description
object - Object
Example
{"object": Object}

CreateOperationReportFileFromCommentInput

Fields
Input Field Description
operationCommentFileIds - [ID!]! IDs of the OperationCommentFiles to copy from
operationReportId - ID Optional: ID of an existing OperationReport to link the files to
Example
{
  "operationCommentFileIds": ["4"],
  "operationReportId": 4
}

CreateOperationReportFileFromCommentPayload

Fields
Field Name Description
operationReportFiles - [OperationReportFile!]!
Example
{"operationReportFiles": [OperationReportFile]}

CreateOperationReportFileInput

Fields
Input Field Description
operationReportId - ID Either operationReportId or operationId must be provided
operationId - ID
fileName - String! Name of the file with extension
mimeType - String! MIME type of the file
Example
{
  "operationReportId": "4",
  "operationId": "4",
  "fileName": "xyz789",
  "mimeType": "xyz789"
}

CreateOperationReportFilePayload

Fields
Field Name Description
uploadUrl - URL
operationReportFile - OperationReportFile
Example
{
  "uploadUrl": "http://www.test.com/",
  "operationReportFile": OperationReportFile
}

CreateOperationReportInput

Fields
Input Field Description
operationId - ID!
description - String
operationReportFileIds - [ID!] Optional: IDs of previously created OperationReportFiles to link
Example
{
  "operationId": 4,
  "description": "xyz789",
  "operationReportFileIds": [4]
}

CreateOperationReportPayload

Fields
Field Name Description
operationReport - OperationReport!
Example
{"operationReport": OperationReport}

CreatePaymentInput

Fields
Input Field Description
invoiceId - ID
receiptId - ID
amount - Int!
paymentDate - Date!
Example
{
  "invoiceId": "4",
  "receiptId": "4",
  "amount": 123,
  "paymentDate": "2007-12-03"
}

CreatePaymentPayload

Fields
Field Name Description
payment - Payment
invoice - Invoice
Example
{
  "payment": Payment,
  "invoice": Invoice
}

CreatePendingInvoiceItemInput

Fields
Input Field Description
customerId - ID!
objectId - ID
serviceId - ID
materialId - ID
title - String!
description - String
quantity - Float
unitPrice - Int!
taxRate - Float!
unit - String
executionStart - Date!
executionEnd - Date!
billingPeriodInterval - BillingPeriodInterval
Example
{
  "customerId": "4",
  "objectId": "4",
  "serviceId": "4",
  "materialId": 4,
  "title": "xyz789",
  "description": "xyz789",
  "quantity": 123.45,
  "unitPrice": 123,
  "taxRate": 123.45,
  "unit": "abc123",
  "executionStart": "2007-12-03",
  "executionEnd": "2007-12-03",
  "billingPeriodInterval": "MONTH"
}

CreatePendingInvoiceItemPayload

Fields
Field Name Description
pendingInvoiceItem - PendingInvoiceItem
Example
{"pendingInvoiceItem": PendingInvoiceItem}

CreateSubcontractorContactPersonInput

Fields
Input Field Description
subcontractorId - ID!
isDefault - Boolean
salutation - String!
firstName - String
lastName - String!
role - String
email - String
phone - String
Example
{
  "subcontractorId": "4",
  "isDefault": false,
  "salutation": "abc123",
  "firstName": "abc123",
  "lastName": "abc123",
  "role": "abc123",
  "email": "abc123",
  "phone": "xyz789"
}

CreateSubcontractorContactPersonPayload

Fields
Field Name Description
subcontractorContactPerson - SubcontractorContactPerson
Example
{"subcontractorContactPerson": SubcontractorContactPerson}

CreateSubcontractorInput

Fields
Input Field Description
type - SubcontractorType!
salutation - String
firstName - String
lastName - String
companyName - String
streetAddress - String
zip - String
city - String
country - CountryCode
email - String
phone - String
fax - String
website - String
taxNumber - String
vatId - String
Example
{
  "type": "PERSON",
  "salutation": "abc123",
  "firstName": "abc123",
  "lastName": "xyz789",
  "companyName": "abc123",
  "streetAddress": "abc123",
  "zip": "abc123",
  "city": "xyz789",
  "country": "US",
  "email": "xyz789",
  "phone": "abc123",
  "fax": "xyz789",
  "website": "abc123",
  "taxNumber": "xyz789",
  "vatId": "xyz789"
}

CreateSubcontractorPayload

Fields
Field Name Description
subcontractor - Subcontractor
Example
{"subcontractor": Subcontractor}

CreateSupplierContactPersonInput

Fields
Input Field Description
supplierId - ID!
isDefault - Boolean
salutation - String!
firstName - String
lastName - String!
role - String
email - String
phone - String
Example
{
  "supplierId": 4,
  "isDefault": true,
  "salutation": "xyz789",
  "firstName": "xyz789",
  "lastName": "abc123",
  "role": "xyz789",
  "email": "abc123",
  "phone": "abc123"
}

CreateSupplierContactPersonPayload

Fields
Field Name Description
supplierContactPerson - SupplierContactPerson
Example
{"supplierContactPerson": SupplierContactPerson}

CreateSupplierInput

Fields
Input Field Description
type - SupplierType!
salutation - String
firstName - String
lastName - String
companyName - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
email - String
phone - String
fax - String
website - String
taxNumber - String
vatId - String
tags - [String!]
Example
{
  "type": "PERSON",
  "salutation": "abc123",
  "firstName": "xyz789",
  "lastName": "xyz789",
  "companyName": "abc123",
  "addressSupplement": "xyz789",
  "streetAddress": "xyz789",
  "zip": "xyz789",
  "city": "xyz789",
  "country": "US",
  "email": "abc123",
  "phone": "abc123",
  "fax": "xyz789",
  "website": "abc123",
  "taxNumber": "abc123",
  "vatId": "abc123",
  "tags": ["xyz789"]
}

CreateSupplierPayload

Fields
Field Name Description
supplier - Supplier
Example
{"supplier": Supplier}

CreateTicketFileInput

Fields
Input Field Description
ticketId - ID!
fileName - String! Name of the file with extension
mimeType - String! MIME type of the file
Example
{
  "ticketId": "4",
  "fileName": "xyz789",
  "mimeType": "xyz789"
}

CreateTicketFilePayload

Fields
Field Name Description
uploadUrl - URL
ticketFile - TicketFile
Example
{
  "uploadUrl": "http://www.test.com/",
  "ticketFile": TicketFile
}

CreateTicketInput

Fields
Input Field Description
objectId - ID!
objectRoomId - ID
orderId - ID
sourceOperationId - ID
type - TicketType
isPublic - Boolean
inputChannel - TicketInputChannel
location - String
description - String!
priority - TicketPriority!
discoverDate - Date
dueDate - Date
Example
{
  "objectId": "4",
  "objectRoomId": "4",
  "orderId": 4,
  "sourceOperationId": 4,
  "type": "COMPLAINT",
  "isPublic": true,
  "inputChannel": "PORTAL",
  "location": "xyz789",
  "description": "abc123",
  "priority": "LOW",
  "discoverDate": "2007-12-03",
  "dueDate": "2007-12-03"
}

CreateTicketPayload

Fields
Field Name Description
ticket - Ticket
Example
{"ticket": Ticket}

CreateTimeRecordBreakInput

Fields
Input Field Description
timeRecordId - ID!
start - DateTime! Break start in UTC (must be within the time record)
end - DateTime! Break end in UTC (after start, within the time record)
Example
{
  "timeRecordId": 4,
  "start": "2007-12-03T10:15:30Z",
  "end": "2007-12-03T10:15:30Z"
}

CreateTimeRecordBreakPayload

Fields
Field Name Description
timeRecordBreak - TimeRecordBreak
Example
{"timeRecordBreak": TimeRecordBreak}

CreateTimeRecordInput

Fields
Input Field Description
employeeId - ID Employee hash ID. Provide either this or personnelNumber.
personnelNumber - Int Personnel number. Provide either this or employeeId.
start - DateTime! Start of time record in UTC
end - DateTime! End of time record in UTC
journeyStart - DateTime Start of journey in UTC (must be before start)
breakDuration - Int Total break duration in seconds
objectId - ID Object hash ID. Provide either this or objectNumber.
objectNumber - Int Object number. Provide either this or objectId.
Example
{
  "employeeId": "4",
  "personnelNumber": 987,
  "start": "2007-12-03T10:15:30Z",
  "end": "2007-12-03T10:15:30Z",
  "journeyStart": "2007-12-03T10:15:30Z",
  "breakDuration": 123,
  "objectId": "4",
  "objectNumber": 123
}

CreateTimeRecordResult

Fields
Field Name Description
index - Int! 0-based index in the input array
timeRecord - TimeRecord The created time record (null if failed)
error - String Error message (null if succeeded)
Example
{
  "index": 987,
  "timeRecord": TimeRecord,
  "error": "xyz789"
}

CreateTimeRecordsInput

Fields
Input Field Description
records - [CreateTimeRecordInput!]!
Example
{"records": [CreateTimeRecordInput]}

CreateTimeRecordsPayload

Fields
Field Name Description
results - [CreateTimeRecordResult!]!
Example
{"results": [CreateTimeRecordResult]}

CreditNote

Fields
Field Name Description
id - ID!
company - Company Company of that credit note. If credit note is completed, it provides data at the time the credit note was completed.
subcontractor - Subcontractor!
subcontractorContactPerson - SubcontractorContactPerson
type - CreditNoteType!
status - CreditNoteStatus!
number - Int!
numberPrefix - String
numberSuffix - String
items - [CreditNoteItem!]!
totalAmount - Int!
totalNetAmount - Int!
dueDate - Date
dueDateFormat - CreditNoteDueDateFormat
hideDueDateText - Boolean! This will hide the due date text on the credit note pdf
creditNoteDate - Date!
deliveryDate - CreditNoteDeliveryDate!
hasKleinunternehmerregelung - Boolean!
introductionText - String
closingText - String
isNegative - Boolean!
creditNotePdf - String
sentManually - Boolean
completedAt - DateTime
sentAt - DateTime
paidAt - Date
cancelledAt - Date
language - LanguageTag!
currency - CurrencyCode!
createdAt - DateTime!
payments - [Payment]
originalCreditNote - CreditNote Original credit note if credit note is a cancellation (type is CANCELLATION)
cancellationCreditNote - CreditNote Cancellation credit note if credit note is cancelled (status is CANCELLED)
Example
{
  "id": 4,
  "company": Company,
  "subcontractor": Subcontractor,
  "subcontractorContactPerson": SubcontractorContactPerson,
  "type": "CREDIT_NOTE",
  "status": "DRAFT",
  "number": 987,
  "numberPrefix": "abc123",
  "numberSuffix": "xyz789",
  "items": [CreditNoteItem],
  "totalAmount": 987,
  "totalNetAmount": 123,
  "dueDate": "2007-12-03",
  "dueDateFormat": "DAYS",
  "hideDueDateText": false,
  "creditNoteDate": "2007-12-03",
  "deliveryDate": SingleDate,
  "hasKleinunternehmerregelung": false,
  "introductionText": "abc123",
  "closingText": "xyz789",
  "isNegative": true,
  "creditNotePdf": "abc123",
  "sentManually": true,
  "completedAt": "2007-12-03T10:15:30Z",
  "sentAt": "2007-12-03T10:15:30Z",
  "paidAt": "2007-12-03",
  "cancelledAt": "2007-12-03",
  "language": LanguageTag,
  "currency": CurrencyCode,
  "createdAt": "2007-12-03T10:15:30Z",
  "payments": [Payment],
  "originalCreditNote": CreditNote,
  "cancellationCreditNote": CreditNote
}

CreditNoteConnection

Fields
Field Name Description
edges - [CreditNoteEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [CreditNoteEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

CreditNoteDeliveryDate

Types
Union Types

SingleDate

DateRange

Example
SingleDate

CreditNoteDraft

Fields
Field Name Description
subcontractor - Subcontractor
subcontractorContactPerson - SubcontractorContactPerson
status - CreditNoteStatus!
number - Int!
dueDate - Date
dueDateFormat - CreditNoteDueDateFormat
hideDueDateText - Boolean! This will hide the due date text on the credit note pdf
creditNoteDate - Date
deliveryDate - CreditNoteDeliveryDate
items - [CreditNoteDraftItem]
introductionText - String
closingText - String
language - LanguageTag!
currency - CurrencyCode!
Example
{
  "subcontractor": Subcontractor,
  "subcontractorContactPerson": SubcontractorContactPerson,
  "status": "DRAFT",
  "number": 123,
  "dueDate": "2007-12-03",
  "dueDateFormat": "DAYS",
  "hideDueDateText": false,
  "creditNoteDate": "2007-12-03",
  "deliveryDate": SingleDate,
  "items": [CreditNoteDraftItem],
  "introductionText": "abc123",
  "closingText": "abc123",
  "language": LanguageTag,
  "currency": CurrencyCode
}

CreditNoteDraftItem

Fields
Field Name Description
position - Int
title - String
description - String
quantity - Float
unitPrice - Int
taxRate - Float
unit - String
Example
{
  "position": 987,
  "title": "xyz789",
  "description": "abc123",
  "quantity": 987.65,
  "unitPrice": 123,
  "taxRate": 987.65,
  "unit": "xyz789"
}

CreditNoteDueDateFormat

Values
Enum Value Description

DAYS

DATE

Example
"DAYS"

CreditNoteEdge

Fields
Field Name Description
cursor - String!
node - CreditNote!
Example
{
  "cursor": "abc123",
  "node": CreditNote
}

CreditNoteItem

Fields
Field Name Description
id - ID!
position - Int!
title - String!
description - String
quantity - Float!
unitPrice - Int!
taxRate - Float!
unit - String
createdAt - DateTime
Example
{
  "id": "4",
  "position": 123,
  "title": "abc123",
  "description": "xyz789",
  "quantity": 987.65,
  "unitPrice": 123,
  "taxRate": 987.65,
  "unit": "xyz789",
  "createdAt": "2007-12-03T10:15:30Z"
}

CreditNoteOrder

Fields
Input Field Description
field - CreditNoteOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

CreditNoteOrderField

Values
Enum Value Description

CREATED_AT

CREDIT_NOTE_DATE

DUE_DATE

Example
"CREATED_AT"

CreditNoteStatus

Values
Enum Value Description

DRAFT

COMPLETED

SENT

PAID

CANCELLED

Example
"DRAFT"

CreditNoteType

Values
Enum Value Description

CREDIT_NOTE

CANCELLATION

Example
"CREDIT_NOTE"

CurrencyCode

Description

ISO 4217 currency code

Example
CurrencyCode

Customer

Fields
Field Name Description
id - ID!
number - Int!
type - CustomerType!
salutation - String
firstName - String
lastName - String
companyName - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
emails - [CustomerEmail!]
phone - String
fax - String
website - String
vatId - String
datevAccount - Int!
sellerIdentifier - String
leitwegId - String
invoiceSettings - CustomerInvoiceSettings
note - String
tags - [String!]!
createdAt - DateTime
invoices - InvoiceConnection!
Arguments
after - String
before - String
first - Int
last - Int
estimates - EstimateConnection!
Arguments
after - String
before - String
first - Int
last - Int
receipts - ReceiptConnection!
Arguments
after - String
before - String
first - Int
last - Int
objects - ObjectConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query by number, name, streetAddress, zip, city

orderBy - ObjectOrder
contactPersons - CustomerContactPersonConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for firstName, lastName and email

Example
{
  "id": 4,
  "number": 123,
  "type": "PERSON",
  "salutation": "abc123",
  "firstName": "abc123",
  "lastName": "abc123",
  "companyName": "abc123",
  "addressSupplement": "xyz789",
  "streetAddress": "abc123",
  "zip": "xyz789",
  "city": "xyz789",
  "country": "US",
  "emails": [CustomerEmail],
  "phone": "abc123",
  "fax": "xyz789",
  "website": "xyz789",
  "vatId": "abc123",
  "datevAccount": 123,
  "sellerIdentifier": "xyz789",
  "leitwegId": "abc123",
  "invoiceSettings": CustomerInvoiceSettings,
  "note": "xyz789",
  "tags": ["xyz789"],
  "createdAt": "2007-12-03T10:15:30Z",
  "invoices": InvoiceConnection,
  "estimates": EstimateConnection,
  "receipts": ReceiptConnection,
  "objects": ObjectConnection,
  "contactPersons": CustomerContactPersonConnection
}

CustomerConnection

Fields
Field Name Description
edges - [CustomerEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [CustomerEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

CustomerContactPerson

Fields
Field Name Description
id - ID!
isDefault - Boolean!
salutation - String!
firstName - String
lastName - String!
role - String
email - String
phone - String
createdAt - DateTime!
Example
{
  "id": 4,
  "isDefault": false,
  "salutation": "xyz789",
  "firstName": "xyz789",
  "lastName": "abc123",
  "role": "abc123",
  "email": "abc123",
  "phone": "abc123",
  "createdAt": "2007-12-03T10:15:30Z"
}

CustomerContactPersonConnection

Fields
Field Name Description
edges - [CustomerContactPersonEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [CustomerContactPersonEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

CustomerContactPersonEdge

Fields
Field Name Description
cursor - String!
node - CustomerContactPerson!
Example
{
  "cursor": "abc123",
  "node": CustomerContactPerson
}

CustomerEdge

Fields
Field Name Description
cursor - String!
node - Customer!
Example
{
  "cursor": "xyz789",
  "node": Customer
}

CustomerEmail

Fields
Field Name Description
id - ID!
type - CustomerEmailType!
email - String!
createdAt - DateTime!
Example
{
  "id": "4",
  "type": "GENERAL",
  "email": "abc123",
  "createdAt": "2007-12-03T10:15:30Z"
}

CustomerEmailType

Values
Enum Value Description

GENERAL

INVOICE

Example
"GENERAL"

CustomerInvoiceSettings

Fields
Field Name Description
eInvoiceType - EInvoiceType
dueDateType - DueDateType
hideDueDateText - Boolean This will hide the due date text on the invoice pdf
introductionText - String
closingText - String
skontoEnabled - Boolean
skontoPercent - Float
skontoDays - Int
attachServiceReceiptPdfs - Boolean
Example
{
  "eInvoiceType": "NONE",
  "dueDateType": "IMMEDIATELY",
  "hideDueDateText": true,
  "introductionText": "xyz789",
  "closingText": "xyz789",
  "skontoEnabled": false,
  "skontoPercent": 123.45,
  "skontoDays": 123,
  "attachServiceReceiptPdfs": false
}

CustomerType

Values
Enum Value Description

PERSON

COMPANY

Example
"PERSON"

Date

Example
"2007-12-03"

DateRange

Fields
Field Name Description
start - Date!
end - Date!
Example
{
  "start": "2007-12-03",
  "end": "2007-12-03"
}

DateTime

Example
"2007-12-03T10:15:30Z"

DeclineAbsenceInput

Fields
Input Field Description
absenceId - ID!
Example
{"absenceId": "4"}

DeclineAbsencePayload

Fields
Field Name Description
absence - Absence
Example
{"absence": Absence}

DeclineEstimateInput

Fields
Input Field Description
estimateId - ID!
Example
{"estimateId": 4}

DeclineEstimatePayload

Fields
Field Name Description
estimate - Estimate
Example
{"estimate": Estimate}

DeleteCustomerContactPersonInput

Fields
Input Field Description
customerContactPersonId - ID!
Example
{"customerContactPersonId": "4"}

DeleteCustomerContactPersonPayload

Fields
Field Name Description
deletedCustomerContactPersonId - ID
Example
{"deletedCustomerContactPersonId": "4"}

DeleteCustomerInput

Fields
Input Field Description
customerId - ID!
Example
{"customerId": 4}

DeleteCustomerPayload

Fields
Field Name Description
deletedCustomerId - ID
Example
{"deletedCustomerId": 4}

DeleteEmployeeInput

Fields
Input Field Description
employeeId - ID!
Example
{"employeeId": 4}

DeleteEmployeePayload

Fields
Field Name Description
deletedEmployeeId - ID
Example
{"deletedEmployeeId": "4"}

DeleteEstimateInput

Fields
Input Field Description
estimateId - ID!
Example
{"estimateId": "4"}

DeleteEstimatePayload

Fields
Field Name Description
deletedEstimateId - ID
Example
{"deletedEstimateId": "4"}

DeleteObjectInput

Fields
Input Field Description
objectId - ID!
Example
{"objectId": "4"}

DeleteObjectPayload

Fields
Field Name Description
deletedObjectId - ID
Example
{"deletedObjectId": "4"}

DeleteOperationReportFileInput

Fields
Input Field Description
operationReportFileId - ID!
Example
{"operationReportFileId": "4"}

DeleteOperationReportFilePayload

Fields
Field Name Description
deletedOperationReportFileId - ID!
Example
{"deletedOperationReportFileId": "4"}

DeleteOperationReportInput

Fields
Input Field Description
operationReportId - ID!
Example
{"operationReportId": 4}

DeleteOperationReportPayload

Fields
Field Name Description
deletedOperationReportId - ID!
Example
{"deletedOperationReportId": "4"}

DeletePendingInvoiceItemsInput

Fields
Input Field Description
pendingInvoiceItemIds - [ID!]!
Example
{"pendingInvoiceItemIds": ["4"]}

DeletePendingInvoiceItemsPayload

Fields
Field Name Description
deletedPendingInvoiceItemIds - [ID]
Example
{"deletedPendingInvoiceItemIds": ["4"]}

DeleteSubcontractorContactPersonInput

Fields
Input Field Description
subcontractorContactPersonId - ID!
Example
{"subcontractorContactPersonId": "4"}

DeleteSubcontractorContactPersonPayload

Fields
Field Name Description
deletedSubcontractorContactPersonId - ID
Example
{"deletedSubcontractorContactPersonId": 4}

DeleteSubcontractorInput

Fields
Input Field Description
subcontractorId - ID!
Example
{"subcontractorId": "4"}

DeleteSubcontractorPayload

Fields
Field Name Description
deletedSubcontractorId - ID
Example
{"deletedSubcontractorId": 4}

DeleteSupplierContactPersonInput

Fields
Input Field Description
supplierContactPersonId - ID!
Example
{"supplierContactPersonId": "4"}

DeleteSupplierContactPersonPayload

Fields
Field Name Description
deletedSupplierContactPersonId - ID
Example
{"deletedSupplierContactPersonId": 4}

DeleteSupplierInput

Fields
Input Field Description
supplierId - ID!
Example
{"supplierId": 4}

DeleteSupplierPayload

Fields
Field Name Description
deletedSupplierId - ID
Example
{"deletedSupplierId": 4}

DeleteTicketFileInput

Fields
Input Field Description
ticketFileId - ID!
Example
{"ticketFileId": 4}

DeleteTicketFilePayload

Fields
Field Name Description
deletedTicketFileId - ID
Example
{"deletedTicketFileId": 4}

DeleteTicketInput

Fields
Input Field Description
ticketId - ID!
Example
{"ticketId": 4}

DeleteTicketPayload

Fields
Field Name Description
deletedTicketId - ID
Example
{"deletedTicketId": 4}

DeleteTimeRecordBreakInput

Fields
Input Field Description
timeRecordBreakId - ID!
Example
{"timeRecordBreakId": 4}

DeleteTimeRecordBreakPayload

Fields
Field Name Description
deletedTimeRecordBreakId - ID
Example
{"deletedTimeRecordBreakId": "4"}

DeleteTimeRecordInput

Fields
Input Field Description
timeRecordId - ID!
Example
{"timeRecordId": 4}

DeleteTimeRecordPayload

Fields
Field Name Description
deletedTimeRecordId - ID
Example
{"deletedTimeRecordId": 4}

DeleteTimeRecordResult

Fields
Field Name Description
id - ID!
deletedTimeRecordId - ID
error - String
Example
{
  "id": 4,
  "deletedTimeRecordId": "4",
  "error": "abc123"
}

DeleteTimeRecordsInput

Fields
Input Field Description
timeRecordIds - [ID!]!
Example
{"timeRecordIds": ["4"]}

DeleteTimeRecordsPayload

Fields
Field Name Description
results - [DeleteTimeRecordResult!]!
Example
{"results": [DeleteTimeRecordResult]}

DueDateType

Values
Enum Value Description

IMMEDIATELY

DAYS_7

DAYS_10

DAYS_14

DAYS_20

DAYS_30

END_OF_MONTH

Example
"IMMEDIATELY"

EInvoiceType

Values
Enum Value Description

NONE

ZUGFERD

XRECHNUNG

Example
"NONE"

Employee

Fields
Field Name Description
id - ID!
salutation - String
firstName - String
lastName - String!
status - EmployeeStatus!
Arguments
date - Date
cancelDate - Date
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
state - State
email - String
phone - String
birthDate - Date
personnelNumberPrefix - String
personnelNumber - Int!
fullPersonnelNumber - String!
note - String
hasDrivingLicenceClassB - Boolean
locationBasedTimeRecording - Boolean!
createdAt - DateTime!
profilePicture - EmployeeProfilePicture
timeAccount - EmployeeTimeAccount
activeWorkingTimeModel - EmployeeWorkingTimeModel
Arguments
date - Date
Example
{
  "id": 4,
  "salutation": "abc123",
  "firstName": "abc123",
  "lastName": "abc123",
  "status": "IDLE",
  "cancelDate": "2007-12-03",
  "addressSupplement": "xyz789",
  "streetAddress": "xyz789",
  "zip": "xyz789",
  "city": "abc123",
  "country": "US",
  "state": State,
  "email": "xyz789",
  "phone": "abc123",
  "birthDate": "2007-12-03",
  "personnelNumberPrefix": "abc123",
  "personnelNumber": 987,
  "fullPersonnelNumber": "xyz789",
  "note": "abc123",
  "hasDrivingLicenceClassB": false,
  "locationBasedTimeRecording": false,
  "createdAt": "2007-12-03T10:15:30Z",
  "profilePicture": EmployeeProfilePicture,
  "timeAccount": EmployeeTimeAccount,
  "activeWorkingTimeModel": EmployeeWorkingTimeModel
}

EmployeeConnection

Fields
Field Name Description
edges - [EmployeeEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [EmployeeEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

EmployeeEdge

Fields
Field Name Description
cursor - String!
node - Employee!
Example
{
  "cursor": "xyz789",
  "node": Employee
}

EmployeeOrder

Fields
Input Field Description
field - EmployeeOrderField!
direction - OrderDirection!
Example
{"field": "NAME", "direction": "ASC"}

EmployeeOrderField

Values
Enum Value Description

NAME

PERSONNEL_NUMBER

CREATED_AT

Example
"NAME"

EmployeeProfilePicture

Fields
Field Name Description
id - ID!
originalImageUrl - URL!
smallImageUrl - URL!
largeImageUrl - URL!
createdAt - DateTime!
Example
{
  "id": "4",
  "originalImageUrl": "http://www.test.com/",
  "smallImageUrl": "http://www.test.com/",
  "largeImageUrl": "http://www.test.com/",
  "createdAt": "2007-12-03T10:15:30Z"
}

EmployeeStatus

Values
Enum Value Description

IDLE

ACTIVE

CANCELLED

Example
"IDLE"

EmployeeTimeAccount

Fields
Field Name Description
id - ID!
balance - Int!
updatedAt - DateTime!
createdAt - DateTime!
Example
{
  "id": "4",
  "balance": 123,
  "updatedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z"
}

EmployeeWorkingTimeModel

Fields
Field Name Description
id - ID!
employee - Employee!
startDate - Date!
endDate - Date
weeklyHours - Float!
mondayHours - Float
tuesdayHours - Float
wednesdayHours - Float
thursdayHours - Float
fridayHours - Float
saturdayHours - Float
sundayHours - Float
grossHourlyWage - Int
paidInterimCalculation - WorkingTimeModelPaidInterimCalculation!
isFirstJourneyPaid - Boolean!
salaryCalculation - WorkingTimeModelSalaryCalculation!
absenceDurationCalculation - WorkingTimeModelAbsenceDurationCalculation!
timeAccountEnabled - Boolean!
createdAt - DateTime!
Example
{
  "id": "4",
  "employee": Employee,
  "startDate": "2007-12-03",
  "endDate": "2007-12-03",
  "weeklyHours": 987.65,
  "mondayHours": 123.45,
  "tuesdayHours": 987.65,
  "wednesdayHours": 987.65,
  "thursdayHours": 123.45,
  "fridayHours": 987.65,
  "saturdayHours": 123.45,
  "sundayHours": 123.45,
  "grossHourlyWage": 123,
  "paidInterimCalculation": "FULL_INTERIM",
  "isFirstJourneyPaid": false,
  "salaryCalculation": "ACTUAL_HOURS",
  "absenceDurationCalculation": "PLAN_HOURS",
  "timeAccountEnabled": false,
  "createdAt": "2007-12-03T10:15:30Z"
}

Estimate

Fields
Field Name Description
id - ID!
company - Company! Company of that estimate. If estimate is completed, it provides data at the time the estimate was completed.
customer - Customer!
status - EstimateStatus!
number - Int!
numberPrefix - String
items - [EstimateItem!]!
estimateDate - Date!
validityDate - Date
hasKleinunternehmerregelung - Boolean!
introductionText - String
closingText - String
estimatePdf - String
webUrl - URL!
webEnabled - Boolean!
isAnsweredByCustomer - Boolean True if estimate is answered by customer, false if answered by company and null if not answered yet.
declineReason - EstimateDeclineReason
declineNote - String
sentManually - Boolean
completedAt - DateTime
sentAt - DateTime
acceptedAt - DateTime
declinedAt - DateTime
language - LanguageTag!
currency - CurrencyCode!
createdAt - DateTime!
Example
{
  "id": "4",
  "company": Company,
  "customer": Customer,
  "status": "DRAFT",
  "number": 123,
  "numberPrefix": "xyz789",
  "items": [EstimateItem],
  "estimateDate": "2007-12-03",
  "validityDate": "2007-12-03",
  "hasKleinunternehmerregelung": true,
  "introductionText": "xyz789",
  "closingText": "abc123",
  "estimatePdf": "abc123",
  "webUrl": "http://www.test.com/",
  "webEnabled": true,
  "isAnsweredByCustomer": true,
  "declineReason": "PRICE_TOO_HIGH",
  "declineNote": "xyz789",
  "sentManually": true,
  "completedAt": "2007-12-03T10:15:30Z",
  "sentAt": "2007-12-03T10:15:30Z",
  "acceptedAt": "2007-12-03T10:15:30Z",
  "declinedAt": "2007-12-03T10:15:30Z",
  "language": LanguageTag,
  "currency": CurrencyCode,
  "createdAt": "2007-12-03T10:15:30Z"
}

EstimateConnection

Fields
Field Name Description
edges - [EstimateEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [EstimateEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

EstimateDeclineReason

Values
Enum Value Description

PRICE_TOO_HIGH

QUALITY_TOO_LOW

FOUND_OTHER_SUPPLIER

NO_MORE_DEMAND

OTHER_REASON

Example
"PRICE_TOO_HIGH"

EstimateDraft

Fields
Field Name Description
customer - Customer
status - EstimateStatus!
number - Int!
estimateDate - Date
validityDate - Date
items - [EstimateDraftItem]
introductionText - String
closingText - String
language - LanguageTag!
currency - CurrencyCode!
Example
{
  "customer": Customer,
  "status": "DRAFT",
  "number": 987,
  "estimateDate": "2007-12-03",
  "validityDate": "2007-12-03",
  "items": [EstimateDraftItem],
  "introductionText": "abc123",
  "closingText": "xyz789",
  "language": LanguageTag,
  "currency": CurrencyCode
}

EstimateDraftItem

Fields
Field Name Description
title - String
description - String
quantity - Float
unitPrice - Int
taxRate - Float
unit - String
Example
{
  "title": "abc123",
  "description": "xyz789",
  "quantity": 987.65,
  "unitPrice": 123,
  "taxRate": 123.45,
  "unit": "abc123"
}

EstimateEdge

Fields
Field Name Description
cursor - String!
node - Estimate!
Example
{
  "cursor": "xyz789",
  "node": Estimate
}

EstimateItem

Fields
Field Name Description
id - ID!
position - Int!
title - String!
description - String
quantity - Float!
unitPrice - Int!
taxRate - Float!
unit - String
object - Object The object (Objekt / service location) this item is assigned to.
createdAt - DateTime
Example
{
  "id": 4,
  "position": 123,
  "title": "abc123",
  "description": "xyz789",
  "quantity": 987.65,
  "unitPrice": 123,
  "taxRate": 987.65,
  "unit": "xyz789",
  "object": Object,
  "createdAt": "2007-12-03T10:15:30Z"
}

EstimateOrder

Fields
Input Field Description
field - EstimateOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

EstimateOrderField

Values
Enum Value Description

CREATED_AT

ESTIMATE_DATE

VALIDITY_DATE

Example
"CREATED_AT"

EstimateStatus

Values
Enum Value Description

DRAFT

COMPLETED

SENT

ACCEPTED

DECLINED

Example
"DRAFT"

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
123.45

Holiday

Fields
Field Name Description
id - ID!
date - Date!
name - String!
country - CountryCode!
state - StateCode!
Example
{
  "id": 4,
  "date": "2007-12-03",
  "name": "xyz789",
  "country": "US",
  "state": StateCode
}

ID

Description

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

Example
4

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
987

Invoice

Fields
Field Name Description
id - ID!
company - Company Company of that invoice. If invoice is completed, it provides data at the time the invoice was completed.
customer - Customer
type - InvoiceType!
status - InvoiceStatus!
number - Int!
numberPrefix - String
numberSuffix - String
items - [InvoiceItem!]!
dueDate - Date
dueDateFormat - InvoiceDueDateFormat
hideDueDateText - Boolean! This will hide the due date text on the invoice pdf
invoiceDate - Date!
deliveryDate - InvoiceDeliveryDate!
totalAmount - Int!
totalNetAmount - Int!
outstandingAmount - Int!
hasKleinunternehmerregelung - Boolean!
introductionText - String
closingText - String
isNegative - Boolean!
invoicePdf - String
sentManually - Boolean
completedAt - DateTime
sentAt - DateTime
paidAt - Date
cancelledAt - Date
language - LanguageTag!
currency - CurrencyCode!
createdAt - DateTime!
payments - [Payment]
originalInvoice - Invoice Original invoice if invoice is a cancellation (type is CANCELLATION)
cancellationInvoice - Invoice Cancellation invoice if invoice is cancelled (status is CANCELLED)
skontoEnabled - Boolean!
skontoPercent - Float
skontoDays - Int
skontoDeadline - Date
skontoApplied - Boolean!
skontoAmount - Int
skontoMessage - String
serviceReceipts - [ServiceReceipt!]
Example
{
  "id": "4",
  "company": Company,
  "customer": Customer,
  "type": "INVOICE",
  "status": "DRAFT",
  "number": 123,
  "numberPrefix": "xyz789",
  "numberSuffix": "xyz789",
  "items": [InvoiceItem],
  "dueDate": "2007-12-03",
  "dueDateFormat": "DAYS",
  "hideDueDateText": false,
  "invoiceDate": "2007-12-03",
  "deliveryDate": SingleDate,
  "totalAmount": 123,
  "totalNetAmount": 123,
  "outstandingAmount": 123,
  "hasKleinunternehmerregelung": true,
  "introductionText": "xyz789",
  "closingText": "abc123",
  "isNegative": true,
  "invoicePdf": "abc123",
  "sentManually": true,
  "completedAt": "2007-12-03T10:15:30Z",
  "sentAt": "2007-12-03T10:15:30Z",
  "paidAt": "2007-12-03",
  "cancelledAt": "2007-12-03",
  "language": LanguageTag,
  "currency": CurrencyCode,
  "createdAt": "2007-12-03T10:15:30Z",
  "payments": [Payment],
  "originalInvoice": Invoice,
  "cancellationInvoice": Invoice,
  "skontoEnabled": false,
  "skontoPercent": 987.65,
  "skontoDays": 123,
  "skontoDeadline": "2007-12-03",
  "skontoApplied": true,
  "skontoAmount": 123,
  "skontoMessage": "xyz789",
  "serviceReceipts": [ServiceReceipt]
}

InvoiceConnection

Fields
Field Name Description
edges - [InvoiceEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [InvoiceEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

InvoiceDeliveryDate

Types
Union Types

SingleDate

DateRange

Example
SingleDate

InvoiceDraft

Fields
Field Name Description
customer - Customer
status - InvoiceStatus!
number - Int!
dueDate - Date
dueDateFormat - InvoiceDueDateFormat
hideDueDateText - Boolean! This will hide the due date text on the invoice pdf
invoiceDate - Date
deliveryDate - InvoiceDeliveryDate
items - [InvoiceDraftItem]
introductionText - String
closingText - String
skontoEnabled - Boolean!
skontoPercent - Float
skontoDays - Int
skontoDeadline - Date
skontoMessage - String
language - LanguageTag!
currency - CurrencyCode!
Example
{
  "customer": Customer,
  "status": "DRAFT",
  "number": 987,
  "dueDate": "2007-12-03",
  "dueDateFormat": "DAYS",
  "hideDueDateText": true,
  "invoiceDate": "2007-12-03",
  "deliveryDate": SingleDate,
  "items": [InvoiceDraftItem],
  "introductionText": "xyz789",
  "closingText": "abc123",
  "skontoEnabled": false,
  "skontoPercent": 987.65,
  "skontoDays": 123,
  "skontoDeadline": "2007-12-03",
  "skontoMessage": "xyz789",
  "language": LanguageTag,
  "currency": CurrencyCode
}

InvoiceDraftItem

Fields
Field Name Description
position - Int
title - String
description - String
quantity - Float
unitPrice - Int
taxRate - Float
unit - String
Example
{
  "position": 987,
  "title": "abc123",
  "description": "abc123",
  "quantity": 123.45,
  "unitPrice": 123,
  "taxRate": 987.65,
  "unit": "xyz789"
}

InvoiceDueDateFormat

Values
Enum Value Description

DAYS

DATE

Example
"DAYS"

InvoiceEdge

Fields
Field Name Description
cursor - String!
node - Invoice!
Example
{
  "cursor": "xyz789",
  "node": Invoice
}

InvoiceItem

Fields
Field Name Description
id - ID!
position - Int!
title - String!
description - String
quantity - Float!
unitPrice - Int!
taxRate - Float!
unit - String
createdAt - DateTime
Example
{
  "id": "4",
  "position": 123,
  "title": "xyz789",
  "description": "xyz789",
  "quantity": 123.45,
  "unitPrice": 123,
  "taxRate": 123.45,
  "unit": "abc123",
  "createdAt": "2007-12-03T10:15:30Z"
}

InvoiceOrder

Fields
Input Field Description
field - InvoiceOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

InvoiceOrderField

Values
Enum Value Description

CREATED_AT

INVOICE_DATE

DUE_DATE

Example
"CREATED_AT"

InvoiceStatus

Values
Enum Value Description

DRAFT

COMPLETED

SENT

PAID

REMINDED

IN_COLLECTION

CANCELLED

Example
"DRAFT"

InvoiceType

Values
Enum Value Description

INVOICE

CANCELLATION

Example
"INVOICE"

LanguageTag

Description

BCP-47 language tag

Example
LanguageTag

LegalForm

Values
Enum Value Description

DE_EINZELUNTERNEHMER

DE_EINGETRAGENER_KAUFMANN

DE_GBR

DE_GMBH

DE_UG

Example
"DE_EINZELUNTERNEHMER"

Location

Fields
Field Name Description
latitude - Float!
longitude - Float!
Example
{"latitude": 987.65, "longitude": 123.45}

ManagingDirector

Fields
Field Name Description
id - ID!
name - String!
Example
{"id": 4, "name": "abc123"}

Material

Fields
Field Name Description
id - ID!
number - Int!
name - String!
description - String
manufacturer - String
consumptionUnit - String
salesUnitPrice - Int
salesTaxRate - Float
salesUnit - String
quantityPerSalesUnit - Float
stockUnit - String
quantityPerStockUnit - Float
stockEanNumber - String
revenueAccount - Int
group - MaterialGroup
originalImageUrl - URL
smallImageUrl - URL
largeImageUrl - URL
createdAt - DateTime!
Example
{
  "id": 4,
  "number": 123,
  "name": "xyz789",
  "description": "xyz789",
  "manufacturer": "xyz789",
  "consumptionUnit": "xyz789",
  "salesUnitPrice": 123,
  "salesTaxRate": 123.45,
  "salesUnit": "abc123",
  "quantityPerSalesUnit": 987.65,
  "stockUnit": "xyz789",
  "quantityPerStockUnit": 987.65,
  "stockEanNumber": "abc123",
  "revenueAccount": 987,
  "group": MaterialGroup,
  "originalImageUrl": "http://www.test.com/",
  "smallImageUrl": "http://www.test.com/",
  "largeImageUrl": "http://www.test.com/",
  "createdAt": "2007-12-03T10:15:30Z"
}

MaterialConnection

Fields
Field Name Description
edges - [MaterialEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [MaterialEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

MaterialEdge

Fields
Field Name Description
cursor - String!
node - Material!
Example
{
  "cursor": "xyz789",
  "node": Material
}

MaterialGroup

Fields
Field Name Description
id - ID!
name - String!
createdAt - DateTime!
Example
{
  "id": 4,
  "name": "xyz789",
  "createdAt": "2007-12-03T10:15:30Z"
}

MaterialOrder

Fields
Input Field Description
field - MaterialOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

MaterialOrderField

Values
Enum Value Description

CREATED_AT

NUMBER

NAME

Example
"CREATED_AT"

Object

Fields
Field Name Description
id - ID!
customer - Customer!
customerContactPerson - CustomerContactPerson
number - Int!
name - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
state - State
location - Location
locationRadiusMeters - Int!
email - String
phone - String
extraInvoiceAddressFieldLines - String
costCenter - String
invoiceAddress - ObjectInvoiceAddress
invoiceSettings - ObjectInvoiceSettings
tags - [String!]!
createdAt - DateTime!
rooms - ObjectRoomConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for name or building

building - String
floor - String
orderBy - ObjectRoomOrder
invoices - InvoiceConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for numberPrefix and number

orderBy - InvoiceOrder
estimates - EstimateConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for numberPrefix and number

receipts - ReceiptConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for number

orderBy - ReceiptOrder
serviceReceipts - ServiceReceiptConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for number and status

Example
{
  "id": "4",
  "customer": Customer,
  "customerContactPerson": CustomerContactPerson,
  "number": 987,
  "name": "xyz789",
  "addressSupplement": "xyz789",
  "streetAddress": "abc123",
  "zip": "xyz789",
  "city": "xyz789",
  "country": "US",
  "state": State,
  "location": Location,
  "locationRadiusMeters": 987,
  "email": "abc123",
  "phone": "xyz789",
  "extraInvoiceAddressFieldLines": "abc123",
  "costCenter": "abc123",
  "invoiceAddress": ObjectInvoiceAddress,
  "invoiceSettings": ObjectInvoiceSettings,
  "tags": ["xyz789"],
  "createdAt": "2007-12-03T10:15:30Z",
  "rooms": ObjectRoomConnection,
  "invoices": InvoiceConnection,
  "estimates": EstimateConnection,
  "receipts": ReceiptConnection,
  "serviceReceipts": ServiceReceiptConnection
}

ObjectConnection

Fields
Field Name Description
edges - [ObjectEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [ObjectEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

ObjectEdge

Fields
Field Name Description
cursor - String!
node - Object!
Example
{
  "cursor": "abc123",
  "node": Object
}

ObjectInvoiceAddress

Fields
Field Name Description
id - ID!
type - ObjectInvoiceAddressType!
salutation - String
firstName - String
lastName - String
companyName - String
addressSupplement - String
streetAddress - String!
zip - String!
city - String!
country - CountryCode
Example
{
  "id": 4,
  "type": "PERSON",
  "salutation": "abc123",
  "firstName": "xyz789",
  "lastName": "abc123",
  "companyName": "abc123",
  "addressSupplement": "abc123",
  "streetAddress": "abc123",
  "zip": "xyz789",
  "city": "xyz789",
  "country": "US"
}

ObjectInvoiceAddressType

Values
Enum Value Description

PERSON

COMPANY

Example
"PERSON"

ObjectInvoiceSettings

Fields
Field Name Description
eInvoiceType - EInvoiceType
dueDateType - DueDateType
hideDueDateText - Boolean This will hide the due date text on the invoice pdf
introductionText - String
closingText - String
Example
{
  "eInvoiceType": "NONE",
  "dueDateType": "IMMEDIATELY",
  "hideDueDateText": true,
  "introductionText": "xyz789",
  "closingText": "xyz789"
}

ObjectOrder

Fields
Input Field Description
field - ObjectOrderField!
direction - OrderDirection!
Example
{"field": "NUMBER", "direction": "ASC"}

ObjectOrderField

Values
Enum Value Description

NUMBER

ZIP

CITY

CREATED_AT

Example
"NUMBER"

ObjectRoom

Fields
Field Name Description
id - ID!
name - String!
floor - String
building - String
sizeInSquareMeters - Int
note - String
createdAt - DateTime!
Example
{
  "id": "4",
  "name": "abc123",
  "floor": "abc123",
  "building": "abc123",
  "sizeInSquareMeters": 123,
  "note": "xyz789",
  "createdAt": "2007-12-03T10:15:30Z"
}

ObjectRoomConnection

Fields
Field Name Description
edges - [ObjectRoomEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [ObjectRoomEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

ObjectRoomEdge

Fields
Field Name Description
cursor - String!
node - ObjectRoom!
Example
{
  "cursor": "xyz789",
  "node": ObjectRoom
}

ObjectRoomOrder

Fields
Input Field Description
field - ObjectRoomOrderField!
direction - OrderDirection!
Example
{"field": "NAME", "direction": "ASC"}

ObjectRoomOrderField

Values
Enum Value Description

NAME

SIZE

CREATED_AT

Example
"NAME"

Operation

Fields
Field Name Description
id - ID!
object - Object!
instructions - String
services - [OperationService!]!
requiredExecutors - Int! Minimum number of executors required per operation
missingExecutors - Int!
toDos - [OperationToDo!]!
executor - OperationExecutor
Arguments
employeeId - ID

Ether employeeId or subcontractorId has to be set

subcontractorId - ID

Ether employeeId or subcontractorId has to be set

executors - OperationExecutorConnection
Arguments
after - String
before - String
first - Int
last - Int
hideAbsent - Boolean
isExecuted - Boolean!
executionStartDate - Date!
executionStartTime - Time
executionEndDate - Date!
executionEndTime - Time
duration - Int
originalExecutionStartDate - Date Is set if the initial executionStartDate was changed
originalExecutionStartTime - Time Is set if the initial executionStartTime was changed
originalExecutionEndDate - Date Is set if the initial executionEndDate was changed
originalExecutionEndTime - Time Is set if the initial executionEndTime was changed
order - Order
orderShift - OrderShift
holiday - Holiday
report - OperationReport
serviceReceipts - ServiceReceiptConnection!
Arguments
after - String
before - String
first - Int
last - Int
createdAt - DateTime!
Example
{
  "id": 4,
  "object": Object,
  "instructions": "xyz789",
  "services": [OperationService],
  "requiredExecutors": 123,
  "missingExecutors": 123,
  "toDos": ["MISSING_QUANTITY"],
  "executor": OperationExecutor,
  "executors": OperationExecutorConnection,
  "isExecuted": true,
  "executionStartDate": "2007-12-03",
  "executionStartTime": "10:15:30Z",
  "executionEndDate": "2007-12-03",
  "executionEndTime": "10:15:30Z",
  "duration": 123,
  "originalExecutionStartDate": "2007-12-03",
  "originalExecutionStartTime": "10:15:30Z",
  "originalExecutionEndDate": "2007-12-03",
  "originalExecutionEndTime": "10:15:30Z",
  "order": Order,
  "orderShift": OrderShift,
  "holiday": Holiday,
  "report": OperationReport,
  "serviceReceipts": ServiceReceiptConnection,
  "createdAt": "2007-12-03T10:15:30Z"
}

OperationConnection

Fields
Field Name Description
edges - [OperationEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OperationEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

OperationEdge

Fields
Field Name Description
cursor - String!
node - Operation!
Example
{
  "cursor": "xyz789",
  "node": Operation
}

OperationExecutor

Fields
Field Name Description
id - ID!
operation - Operation!
employee - Employee
subcontractor - Subcontractor
orderExecutor - OrderExecutor
timeRecord - TimeRecord
absence - Absence
markedAsNoShowAt - DateTime
createdAt - DateTime!
Example
{
  "id": 4,
  "operation": Operation,
  "employee": Employee,
  "subcontractor": Subcontractor,
  "orderExecutor": OrderExecutor,
  "timeRecord": TimeRecord,
  "absence": Absence,
  "markedAsNoShowAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z"
}

OperationExecutorConnection

Fields
Field Name Description
edges - [OperationExecutorEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OperationExecutorEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

OperationExecutorEdge

Fields
Field Name Description
cursor - String!
node - OperationExecutor!
Example
{
  "cursor": "xyz789",
  "node": OperationExecutor
}

OperationExecutorOrder

Fields
Input Field Description
field - OperationExecutorOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OperationExecutorOrderField

Values
Enum Value Description

CREATED_AT

EXECUTION_START

Example
"CREATED_AT"

OperationOrder

Fields
Input Field Description
field - OperationOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OperationOrderField

Values
Enum Value Description

CREATED_AT

TITLE

STATUS

UNIT_PRICE

EXECUTION_START

EXECUTION_END

Example
"CREATED_AT"

OperationReport

Fields
Field Name Description
id - ID!
operation - Operation!
description - String
files - [OperationReportFile]
createdAt - DateTime!
Example
{
  "id": 4,
  "operation": Operation,
  "description": "xyz789",
  "files": [OperationReportFile],
  "createdAt": "2007-12-03T10:15:30Z"
}

OperationReportConnection

Fields
Field Name Description
edges - [OperationReportEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OperationReportEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

OperationReportEdge

Fields
Field Name Description
cursor - String!
node - OperationReport!
Example
{
  "cursor": "abc123",
  "node": OperationReport
}

OperationReportFile

Fields
Field Name Description
id - ID!
fileName - String!
mimeType - String!
size - Int
url - URL!
thumbnailUrl - URL
createdAt - DateTime!
Example
{
  "id": 4,
  "fileName": "abc123",
  "mimeType": "abc123",
  "size": 987,
  "url": "http://www.test.com/",
  "thumbnailUrl": "http://www.test.com/",
  "createdAt": "2007-12-03T10:15:30Z"
}

OperationReportOrder

Fields
Input Field Description
field - OperationReportOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OperationReportOrderField

Values
Enum Value Description

CREATED_AT

Example
"CREATED_AT"

OperationService

Fields
Field Name Description
id - ID!
operation - Operation!
service - Service!
orderService - OrderService
position - Int!
title - String!
updatedAt - DateTime!
createdAt - DateTime!
tasks - OperationServiceTaskConnection
Arguments
after - String
before - String
first - Int
last - Int
serviceAreaId - ID
query - String
Example
{
  "id": 4,
  "operation": Operation,
  "service": Service,
  "orderService": OrderService,
  "position": 987,
  "title": "abc123",
  "updatedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z",
  "tasks": OperationServiceTaskConnection
}

OperationServiceTask

Fields
Field Name Description
id - ID!
operationService - OperationService!
serviceArea - ServiceArea
orderServiceTask - OrderServiceTask
position - Int!
title - String!
completedAt - DateTime
createdAt - DateTime!
rooms - OperationServiceTaskRoomConnection
Arguments
after - String
before - String
first - Int
last - Int
Example
{
  "id": 4,
  "operationService": OperationService,
  "serviceArea": ServiceArea,
  "orderServiceTask": OrderServiceTask,
  "position": 987,
  "title": "xyz789",
  "completedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z",
  "rooms": OperationServiceTaskRoomConnection
}

OperationServiceTaskConnection

Fields
Field Name Description
edges - [OperationServiceTaskEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OperationServiceTaskEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

OperationServiceTaskEdge

Fields
Field Name Description
cursor - String!
node - OperationServiceTask!
Example
{
  "cursor": "xyz789",
  "node": OperationServiceTask
}

OperationServiceTaskOrder

Fields
Input Field Description
field - OperationServiceTaskOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OperationServiceTaskOrderField

Values
Enum Value Description

CREATED_AT

POSITION

TITLE

Example
"CREATED_AT"

OperationServiceTaskRoom

Fields
Field Name Description
id - ID!
operationServiceTask - OperationServiceTask!
objectRoom - ObjectRoom!
completedAt - DateTime
createdAt - DateTime!
Example
{
  "id": 4,
  "operationServiceTask": OperationServiceTask,
  "objectRoom": ObjectRoom,
  "completedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z"
}

OperationServiceTaskRoomConnection

Fields
Field Name Description
edges - [OperationServiceTaskRoomEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OperationServiceTaskRoomEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

OperationServiceTaskRoomEdge

Fields
Field Name Description
cursor - String!
node - OperationServiceTaskRoom!
Example
{
  "cursor": "xyz789",
  "node": OperationServiceTaskRoom
}

OperationServiceTaskRoomOrder

Fields
Input Field Description
field - OperationServiceTaskRoomOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OperationServiceTaskRoomOrderField

Values
Enum Value Description

CREATED_AT

COMPLETED_AT

Example
"CREATED_AT"

OperationToDo

Values
Enum Value Description

MISSING_QUANTITY

MISSING_TIME_RECORD

UNCONFIRMED_TIME_RECORD

Example
"MISSING_QUANTITY"

Order

Fields
Field Name Description
id - ID!
number - Int!
object - Object!
instructions - String
status - OrderStatus!
requiredExecutors - Int! Minimum number of executors required per operation
missingExecutors - Int!
executionOnHolidays - Boolean! Should operations on holidays be executed?
startDate - Date
endDate - Date
latestOperation - Operation Operation of this Order with latest executionStart date
services - [OrderService!]!
shifts - OrderShiftConnection
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for interval

isEnded - Boolean
orderBy - OrderShiftOrder
executors - OrderExecutorConnection
Arguments
after - String
before - String
first - Int
last - Int
isActive - Boolean

Executor is not cancelled

operations - OperationConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for title

hasBillingItems - Boolean
hasMissingBillingItemQuantity - Boolean
executionFrom - Date

Only operations with execution at this date or later will be counted.

executionTo - Date

Only operations with execution before and up to and including this date will be counted.

orderExecutorIds - [ID!]
serviceIds - [ID!]
hasNoExecutor - Boolean
orderBy - OperationOrder
tickets - TicketConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query by number

type - TicketType
isPublic - Boolean
status - TicketStatus
priority - TicketPriority
orderBy - TicketOrder
cancelledAt - DateTime
createdAt - DateTime!
Example
{
  "id": 4,
  "number": 123,
  "object": Object,
  "instructions": "abc123",
  "status": "ACTIVE",
  "requiredExecutors": 987,
  "missingExecutors": 123,
  "executionOnHolidays": false,
  "startDate": "2007-12-03",
  "endDate": "2007-12-03",
  "latestOperation": Operation,
  "services": [OrderService],
  "shifts": OrderShiftConnection,
  "executors": OrderExecutorConnection,
  "operations": OperationConnection,
  "tickets": TicketConnection,
  "cancelledAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z"
}

OrderConnection

Fields
Field Name Description
edges - [OrderEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OrderEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

OrderDirection

Values
Enum Value Description

ASC

Specifies an ascending order

DESC

Specifies a descending order
Example
"ASC"

OrderEdge

Fields
Field Name Description
cursor - String!
node - Order!
Example
{
  "cursor": "abc123",
  "node": Order
}

OrderExecutor

Fields
Field Name Description
id - ID!
order - Order!
employee - Employee
subcontractor - Subcontractor
startDate - Date!
cancelDate - Date
isAddedToOrderShift - Boolean!
Arguments
orderShiftId - ID
createdAt - DateTime!
orderShifts - OrderShiftConnection
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for interval

isEnded - Boolean
orderBy - OrderShiftOrder
Example
{
  "id": "4",
  "order": Order,
  "employee": Employee,
  "subcontractor": Subcontractor,
  "startDate": "2007-12-03",
  "cancelDate": "2007-12-03",
  "isAddedToOrderShift": false,
  "createdAt": "2007-12-03T10:15:30Z",
  "orderShifts": OrderShiftConnection
}

OrderExecutorConnection

Fields
Field Name Description
edges - [OrderExecutorEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OrderExecutorEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

OrderExecutorEdge

Fields
Field Name Description
cursor - String!
node - OrderExecutor!
Example
{
  "cursor": "xyz789",
  "node": OrderExecutor
}

OrderOrder

Fields
Input Field Description
field - OrderOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OrderOrderField

Values
Enum Value Description

CREATED_AT

NUMBER

START_DATE

Example
"CREATED_AT"

OrderService

Fields
Field Name Description
id - ID!
order - Order!
service - Service!
position - Int!
title - String!
unit - String
hasPersonHourUnit - Boolean!
executionOnDemand - Boolean!
demandRrule - String
nextDemandDate - Date
lastExecutionDate - Date
updatedAt - DateTime!
createdAt - DateTime!
tasks - OrderServiceTaskConnection
Arguments
after - String
before - String
first - Int
last - Int
serviceAreaId - ID
query - String
Example
{
  "id": 4,
  "order": Order,
  "service": Service,
  "position": 987,
  "title": "abc123",
  "unit": "abc123",
  "hasPersonHourUnit": false,
  "executionOnDemand": false,
  "demandRrule": "abc123",
  "nextDemandDate": "2007-12-03",
  "lastExecutionDate": "2007-12-03",
  "updatedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z",
  "tasks": OrderServiceTaskConnection
}

OrderServiceConnection

Fields
Field Name Description
edges - [OrderServiceEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OrderServiceEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

OrderServiceEdge

Fields
Field Name Description
cursor - String!
node - OrderService!
Example
{
  "cursor": "xyz789",
  "node": OrderService
}

OrderServiceOrder

Fields
Input Field Description
field - OrderServiceOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OrderServiceOrderField

Values
Enum Value Description

CREATED_AT

POSITION

ORDER_NUMBER

ORDER_START_DATE

NEXT_DEMAND_DATE

Example
"CREATED_AT"

OrderServiceTask

Fields
Field Name Description
id - ID!
orderService - OrderService!
serviceArea - ServiceArea
position - Int!
title - String!
createdAt - DateTime!
rooms - OrderServiceTaskRoomConnection
Arguments
after - String
before - String
first - Int
last - Int
Example
{
  "id": "4",
  "orderService": OrderService,
  "serviceArea": ServiceArea,
  "position": 123,
  "title": "abc123",
  "createdAt": "2007-12-03T10:15:30Z",
  "rooms": OrderServiceTaskRoomConnection
}

OrderServiceTaskConnection

Fields
Field Name Description
edges - [OrderServiceTaskEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OrderServiceTaskEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

OrderServiceTaskEdge

Fields
Field Name Description
cursor - String!
node - OrderServiceTask!
Example
{
  "cursor": "xyz789",
  "node": OrderServiceTask
}

OrderServiceTaskOrder

Fields
Input Field Description
field - OrderServiceTaskOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OrderServiceTaskOrderField

Values
Enum Value Description

CREATED_AT

POSITION

TITLE

Example
"CREATED_AT"

OrderServiceTaskRoom

Fields
Field Name Description
id - ID!
orderServiceTask - OrderServiceTask!
objectRoom - ObjectRoom!
createdAt - DateTime!
Example
{
  "id": "4",
  "orderServiceTask": OrderServiceTask,
  "objectRoom": ObjectRoom,
  "createdAt": "2007-12-03T10:15:30Z"
}

OrderServiceTaskRoomConnection

Fields
Field Name Description
edges - [OrderServiceTaskRoomEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OrderServiceTaskRoomEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

OrderServiceTaskRoomEdge

Fields
Field Name Description
cursor - String!
node - OrderServiceTaskRoom!
Example
{
  "cursor": "xyz789",
  "node": OrderServiceTaskRoom
}

OrderServiceTaskRoomOrder

Fields
Input Field Description
field - OrderServiceTaskRoomOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OrderServiceTaskRoomOrderField

Values
Enum Value Description

CREATED_AT

Example
"CREATED_AT"

OrderShift

Fields
Field Name Description
id - ID!
order - Order!
startDate - Date!
endDate - Date
rrule - String!
timeFrom - Time
timeTo - Time
acrossMidnight - Boolean!
duration - Int
requiredExecutors - Int! Minimum number of executors required per operation
deviatingInstructions - String
createServiceReceipt - Boolean!
orderServices - [OrderService!]!
executors - OrderShiftExecutorConnection
Arguments
after - String
before - String
first - Int
last - Int
isActive - Boolean

OrderExecutor is not cancelled

endedAt - DateTime
createdAt - DateTime!
Example
{
  "id": "4",
  "order": Order,
  "startDate": "2007-12-03",
  "endDate": "2007-12-03",
  "rrule": "xyz789",
  "timeFrom": "10:15:30Z",
  "timeTo": "10:15:30Z",
  "acrossMidnight": false,
  "duration": 123,
  "requiredExecutors": 987,
  "deviatingInstructions": "xyz789",
  "createServiceReceipt": false,
  "orderServices": [OrderService],
  "executors": OrderShiftExecutorConnection,
  "endedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z"
}

OrderShiftConnection

Fields
Field Name Description
edges - [OrderShiftEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OrderShiftEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

OrderShiftEdge

Fields
Field Name Description
cursor - String!
node - OrderShift!
Example
{
  "cursor": "xyz789",
  "node": OrderShift
}

OrderShiftExecutor

Fields
Field Name Description
id - ID!
orderShift - OrderShift!
orderExecutor - OrderExecutor!
startDate - Date!
createdAt - DateTime!
Example
{
  "id": 4,
  "orderShift": OrderShift,
  "orderExecutor": OrderExecutor,
  "startDate": "2007-12-03",
  "createdAt": "2007-12-03T10:15:30Z"
}

OrderShiftExecutorConnection

Fields
Field Name Description
edges - [OrderShiftExecutorEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [OrderShiftExecutorEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

OrderShiftExecutorEdge

Fields
Field Name Description
cursor - String!
node - OrderShiftExecutor!
Example
{
  "cursor": "abc123",
  "node": OrderShiftExecutor
}

OrderShiftOrder

Fields
Input Field Description
field - OrderShiftOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

OrderShiftOrderField

Values
Enum Value Description

CREATED_AT

INTERVAL

Example
"CREATED_AT"

OrderStatus

Values
Enum Value Description

ACTIVE

ENDED

Example
"ACTIVE"

PageInfo

Fields
Field Name Description
endCursor - String When paginating forwards, the cursor to continue.
hasNextPage - Boolean! When paginating forwards, are there more items?
hasPreviousPage - Boolean! When paginating backwards, are there more items?
startCursor - String When paginating backwards, the cursor to continue.
Example
{
  "endCursor": "abc123",
  "hasNextPage": true,
  "hasPreviousPage": false,
  "startCursor": "xyz789"
}

Payment

Fields
Field Name Description
id - ID!
amount - Int
paymentDate - Date
invoice - Invoice
receipt - Receipt
createdAt - DateTime
Example
{
  "id": "4",
  "amount": 987,
  "paymentDate": "2007-12-03",
  "invoice": Invoice,
  "receipt": Receipt,
  "createdAt": "2007-12-03T10:15:30Z"
}

PendingInvoiceItem

Fields
Field Name Description
id - ID!
customer - Customer!
object - Object
status - PendingInvoiceItemStatus!
title - String!
description - String
quantity - Float
unitPrice - Int!
taxRate - Float!
unit - String
isCreatedManually - Boolean!
isGroup - Boolean!
executionStart - Date!
executionEnd - Date!
billingPeriodInterval - BillingPeriodInterval
service - Service
material - Material
order - Order
billedAt - DateTime
createdAt - DateTime!
Example
{
  "id": "4",
  "customer": Customer,
  "object": Object,
  "status": "PENDING",
  "title": "xyz789",
  "description": "xyz789",
  "quantity": 123.45,
  "unitPrice": 123,
  "taxRate": 123.45,
  "unit": "abc123",
  "isCreatedManually": true,
  "isGroup": false,
  "executionStart": "2007-12-03",
  "executionEnd": "2007-12-03",
  "billingPeriodInterval": "MONTH",
  "service": Service,
  "material": Material,
  "order": Order,
  "billedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z"
}

PendingInvoiceItemConnection

Fields
Field Name Description
edges - [PendingInvoiceItemEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [PendingInvoiceItemEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

PendingInvoiceItemEdge

Fields
Field Name Description
cursor - String!
node - PendingInvoiceItem!
Example
{
  "cursor": "abc123",
  "node": PendingInvoiceItem
}

PendingInvoiceItemOrder

Fields
Input Field Description
field - PendingInvoiceItemOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

PendingInvoiceItemOrderField

Values
Enum Value Description

CREATED_AT

EXECUTION_START

EXECUTION_END

Example
"CREATED_AT"

PendingInvoiceItemStatus

Values
Enum Value Description

PENDING

BILLED

Example
"PENDING"

Receipt

Fields
Field Name Description
id - ID!
company - Company
customer - Customer
subcontractor - Subcontractor
type - ReceiptType!
status - ReceiptStatus!
number - String
elements - [ReceiptElement]
totalAmount - Int!
outstandingAmount - Int!
dueDate - Date!
receiptDate - Date!
files - [ReceiptFile]
paidAt - Date
currency - CurrencyCode!
createdAt - DateTime
payments - [Payment]
Example
{
  "id": "4",
  "company": Company,
  "customer": Customer,
  "subcontractor": Subcontractor,
  "type": "EXPENSE",
  "status": "UNPAID",
  "number": "abc123",
  "elements": [ReceiptElement],
  "totalAmount": 123,
  "outstandingAmount": 123,
  "dueDate": "2007-12-03",
  "receiptDate": "2007-12-03",
  "files": [ReceiptFile],
  "paidAt": "2007-12-03",
  "currency": CurrencyCode,
  "createdAt": "2007-12-03T10:15:30Z",
  "payments": [Payment]
}

ReceiptConnection

Fields
Field Name Description
edges - [ReceiptEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [ReceiptEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

ReceiptEdge

Fields
Field Name Description
cursor - String!
node - Receipt!
Example
{
  "cursor": "abc123",
  "node": Receipt
}

ReceiptElement

Fields
Field Name Description
id - ID!
netAmount - Int!
taxAmount - Int!
taxRate - Float!
totalAmount - Int!
createdAt - DateTime
Example
{
  "id": 4,
  "netAmount": 987,
  "taxAmount": 123,
  "taxRate": 987.65,
  "totalAmount": 123,
  "createdAt": "2007-12-03T10:15:30Z"
}

ReceiptFile

Fields
Field Name Description
id - ID!
url - String
mimeType - String
Example
{
  "id": "4",
  "url": "abc123",
  "mimeType": "abc123"
}

ReceiptOrder

Fields
Input Field Description
field - ReceiptOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

ReceiptOrderField

Values
Enum Value Description

CREATED_AT

RECEIPT_DATE

DUE_DATE

Example
"CREATED_AT"

ReceiptStatus

Values
Enum Value Description

UNPAID

PAID

Example
"UNPAID"

ReceiptType

Values
Enum Value Description

EXPENSE

CREDIT

Example
"EXPENSE"

RejectTicketInput

Fields
Input Field Description
ticketId - ID!
Example
{"ticketId": 4}

RejectTicketPayload

Fields
Field Name Description
ticket - Ticket
Example
{"ticket": Ticket}

Service

Fields
Field Name Description
id - ID!
title - String!
description - String
unitPrice - Int
taxRate - Float
unit - String
revenueAccount - Int
areas - [ServiceArea!]!
createdAt - DateTime!
Example
{
  "id": 4,
  "title": "abc123",
  "description": "abc123",
  "unitPrice": 123,
  "taxRate": 123.45,
  "unit": "abc123",
  "revenueAccount": 987,
  "areas": [ServiceArea],
  "createdAt": "2007-12-03T10:15:30Z"
}

ServiceArea

Fields
Field Name Description
id - ID!
title - String!
description - String
createdAt - DateTime!
Example
{
  "id": 4,
  "title": "xyz789",
  "description": "abc123",
  "createdAt": "2007-12-03T10:15:30Z"
}

ServiceConnection

Fields
Field Name Description
edges - [ServiceEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [ServiceEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

ServiceEdge

Fields
Field Name Description
cursor - String!
node - Service!
Example
{
  "cursor": "xyz789",
  "node": Service
}

ServiceOrder

Fields
Input Field Description
field - ServiceOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

ServiceOrderField

Values
Enum Value Description

CREATED_AT

TITLE

UNIT_PRICE

Example
"CREATED_AT"

ServiceReceipt

Fields
Field Name Description
id - ID!
customer - Customer!
customerContactPerson - CustomerContactPerson
object - Object
status - ServiceReceiptStatus!
number - Int!
webUrl - URL!
notes - String
signatureCity - String
signatureDate - Date
signatureImageUrl - URL
reviewStatus - ServiceReceiptReviewStatus
serviceReceiptPdf - URL
completedAt - DateTime
signedAt - DateTime
reviewedAt - DateTime
language - LanguageTag!
currency - CurrencyCode!
createdAt - DateTime!
items - ServiceReceiptItemConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for title

Example
{
  "id": "4",
  "customer": Customer,
  "customerContactPerson": CustomerContactPerson,
  "object": Object,
  "status": "DRAFT",
  "number": 123,
  "webUrl": "http://www.test.com/",
  "notes": "abc123",
  "signatureCity": "abc123",
  "signatureDate": "2007-12-03",
  "signatureImageUrl": "http://www.test.com/",
  "reviewStatus": "PENDING",
  "serviceReceiptPdf": "http://www.test.com/",
  "completedAt": "2007-12-03T10:15:30Z",
  "signedAt": "2007-12-03T10:15:30Z",
  "reviewedAt": "2007-12-03T10:15:30Z",
  "language": LanguageTag,
  "currency": CurrencyCode,
  "createdAt": "2007-12-03T10:15:30Z",
  "items": ServiceReceiptItemConnection
}

ServiceReceiptConnection

Fields
Field Name Description
edges - [ServiceReceiptEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [ServiceReceiptEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

ServiceReceiptEdge

Fields
Field Name Description
cursor - String!
node - ServiceReceipt!
Example
{
  "cursor": "xyz789",
  "node": ServiceReceipt
}

ServiceReceiptItem

Fields
Field Name Description
id - ID!
serviceReceipt - ServiceReceipt!
type - ServiceReceiptItemType!
title - String!
description - String
quantity - Float
quantityInputRequired - Boolean!
hideQuantity - Boolean!
unit - String
hasPersonHourUnit - Boolean!
hideDuration - Boolean!
executionStartDate - Date
executionStartTime - Time
executionEndDate - Date
executionEndTime - Time
service - Service The service this item is based on.
object - Object
createdAt - DateTime!
Example
{
  "id": "4",
  "serviceReceipt": ServiceReceipt,
  "type": "SERVICE",
  "title": "xyz789",
  "description": "abc123",
  "quantity": 987.65,
  "quantityInputRequired": true,
  "hideQuantity": true,
  "unit": "xyz789",
  "hasPersonHourUnit": false,
  "hideDuration": false,
  "executionStartDate": "2007-12-03",
  "executionStartTime": "10:15:30Z",
  "executionEndDate": "2007-12-03",
  "executionEndTime": "10:15:30Z",
  "service": Service,
  "object": Object,
  "createdAt": "2007-12-03T10:15:30Z"
}

ServiceReceiptItemConnection

Fields
Field Name Description
edges - [ServiceReceiptItemEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [ServiceReceiptItemEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

ServiceReceiptItemEdge

Fields
Field Name Description
cursor - String!
node - ServiceReceiptItem!
Example
{
  "cursor": "abc123",
  "node": ServiceReceiptItem
}

ServiceReceiptItemOrder

Fields
Input Field Description
field - ServiceReceiptItemOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

ServiceReceiptItemOrderField

Values
Enum Value Description

CREATED_AT

TITLE

EXECUTION_START

EXECUTION_END

Example
"CREATED_AT"

ServiceReceiptItemType

Values
Enum Value Description

SERVICE

MATERIAL

Example
"SERVICE"

ServiceReceiptOrder

Fields
Input Field Description
field - ServiceReceiptOrderField!
direction - OrderDirection!
Example
{"field": "NUMBER", "direction": "ASC"}

ServiceReceiptOrderField

Values
Enum Value Description

NUMBER

STATUS

REVIEW_STATUS

COMPLETED_AT

SIGNED_AT

CREATED_AT

Example
"NUMBER"

ServiceReceiptReviewStatus

Values
Enum Value Description

PENDING

COMPLETED

Example
"PENDING"

ServiceReceiptStatus

Values
Enum Value Description

DRAFT

COMPLETED

SIGNED

WAITING_FOR_REVIEW

REVIEWED

Example
"DRAFT"

SingleDate

Fields
Field Name Description
date - Date!
Example
{"date": "2007-12-03"}

State

Fields
Field Name Description
id - ID!
name - String!
countryCode - CountryCode!
stateCode - StateCode!
Example
{
  "id": "4",
  "name": "abc123",
  "countryCode": "US",
  "stateCode": StateCode
}

StateCode

Description

ISO 3166-2 state codes

Example
StateCode

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"xyz789"

Subcontractor

Fields
Field Name Description
id - ID!
company - Company!
number - Int!
type - SubcontractorType!
salutation - String
firstName - String
lastName - String
companyName - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
email - String
phone - String
fax - String
website - String
taxNumber - String
vatId - String
datevAccount - Int!
note - String
createdAt - DateTime!
receipts - ReceiptConnection!
Arguments
after - String
before - String
first - Int
last - Int
contactPersons - SubcontractorContactPersonConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for firstName, lastName and email

Example
{
  "id": 4,
  "company": Company,
  "number": 123,
  "type": "PERSON",
  "salutation": "xyz789",
  "firstName": "xyz789",
  "lastName": "xyz789",
  "companyName": "xyz789",
  "addressSupplement": "xyz789",
  "streetAddress": "abc123",
  "zip": "xyz789",
  "city": "abc123",
  "country": "US",
  "email": "abc123",
  "phone": "xyz789",
  "fax": "abc123",
  "website": "abc123",
  "taxNumber": "abc123",
  "vatId": "abc123",
  "datevAccount": 123,
  "note": "xyz789",
  "createdAt": "2007-12-03T10:15:30Z",
  "receipts": ReceiptConnection,
  "contactPersons": SubcontractorContactPersonConnection
}

SubcontractorConnection

Fields
Field Name Description
edges - [SubcontractorEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [SubcontractorEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

SubcontractorContactPerson

Fields
Field Name Description
id - ID!
isDefault - Boolean!
salutation - String!
firstName - String
lastName - String!
role - String
email - String
phone - String
createdAt - DateTime!
Example
{
  "id": 4,
  "isDefault": true,
  "salutation": "abc123",
  "firstName": "abc123",
  "lastName": "xyz789",
  "role": "xyz789",
  "email": "xyz789",
  "phone": "abc123",
  "createdAt": "2007-12-03T10:15:30Z"
}

SubcontractorContactPersonConnection

Fields
Field Name Description
edges - [SubcontractorContactPersonEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [SubcontractorContactPersonEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

SubcontractorContactPersonEdge

Fields
Field Name Description
cursor - String!
node - SubcontractorContactPerson!
Example
{
  "cursor": "abc123",
  "node": SubcontractorContactPerson
}

SubcontractorEdge

Fields
Field Name Description
cursor - String!
node - Subcontractor!
Example
{
  "cursor": "xyz789",
  "node": Subcontractor
}

SubcontractorType

Values
Enum Value Description

PERSON

COMPANY

Example
"PERSON"

Supplier

Fields
Field Name Description
id - ID!
number - Int!
type - SupplierType!
salutation - String
firstName - String
lastName - String
companyName - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
email - String
phone - String
fax - String
website - String
taxNumber - String
vatId - String
datevAccount - Int!
tags - [String!]!
note - String
createdAt - DateTime!
contactPersons - SupplierContactPersonConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for firstName, lastName and email

Example
{
  "id": "4",
  "number": 123,
  "type": "PERSON",
  "salutation": "xyz789",
  "firstName": "xyz789",
  "lastName": "xyz789",
  "companyName": "abc123",
  "addressSupplement": "abc123",
  "streetAddress": "abc123",
  "zip": "xyz789",
  "city": "abc123",
  "country": "US",
  "email": "abc123",
  "phone": "xyz789",
  "fax": "xyz789",
  "website": "abc123",
  "taxNumber": "xyz789",
  "vatId": "xyz789",
  "datevAccount": 123,
  "tags": ["abc123"],
  "note": "abc123",
  "createdAt": "2007-12-03T10:15:30Z",
  "contactPersons": SupplierContactPersonConnection
}

SupplierConnection

Fields
Field Name Description
edges - [SupplierEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [SupplierEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

SupplierContactPerson

Fields
Field Name Description
id - ID!
isDefault - Boolean!
salutation - String!
firstName - String
lastName - String!
role - String
email - String
phone - String
createdAt - DateTime!
Example
{
  "id": 4,
  "isDefault": false,
  "salutation": "xyz789",
  "firstName": "xyz789",
  "lastName": "xyz789",
  "role": "xyz789",
  "email": "xyz789",
  "phone": "abc123",
  "createdAt": "2007-12-03T10:15:30Z"
}

SupplierContactPersonConnection

Fields
Field Name Description
edges - [SupplierContactPersonEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [SupplierContactPersonEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

SupplierContactPersonEdge

Fields
Field Name Description
cursor - String!
node - SupplierContactPerson!
Example
{
  "cursor": "xyz789",
  "node": SupplierContactPerson
}

SupplierEdge

Fields
Field Name Description
cursor - String!
node - Supplier!
Example
{
  "cursor": "xyz789",
  "node": Supplier
}

SupplierOrder

Fields
Input Field Description
field - SupplierOrderField!
direction - OrderDirection!
Example
{"field": "NUMBER", "direction": "ASC"}

SupplierOrderField

Values
Enum Value Description

NUMBER

NAME

CREATED_AT

Example
"NUMBER"

SupplierType

Values
Enum Value Description

PERSON

COMPANY

Example
"PERSON"

Ticket

Fields
Field Name Description
id - ID!
object - Object!
objectRoom - ObjectRoom
order - Order
sourceOperation - Operation
number - Int!
type - TicketType
isPublic - Boolean!
inputChannel - TicketInputChannel
location - String
description - String!
status - TicketStatus!
priority - TicketPriority!
discoverDate - Date
dueDate - Date
rejectedAt - DateTime
completedAt - DateTime
files - TicketFileConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for fileName

orderBy - TicketFileOrder
operations - OperationConnection!
Arguments
after - String
before - String
first - Int
last - Int
query - String

Query for title

hasBillingItems - Boolean
hasMissingBillingItemQuantity - Boolean
executionFrom - Date

Only operations with execution at this date or later will be counted.

executionTo - Date

Only operations with execution before and up to and including this date will be counted.

hasNoExecutor - Boolean
zips - [String!]
cities - [String!]
orderBy - OperationOrder
createdAt - DateTime!
Example
{
  "id": "4",
  "object": Object,
  "objectRoom": ObjectRoom,
  "order": Order,
  "sourceOperation": Operation,
  "number": 987,
  "type": "COMPLAINT",
  "isPublic": true,
  "inputChannel": "PORTAL",
  "location": "xyz789",
  "description": "xyz789",
  "status": "OPEN",
  "priority": "LOW",
  "discoverDate": "2007-12-03",
  "dueDate": "2007-12-03",
  "rejectedAt": "2007-12-03T10:15:30Z",
  "completedAt": "2007-12-03T10:15:30Z",
  "files": TicketFileConnection,
  "operations": OperationConnection,
  "createdAt": "2007-12-03T10:15:30Z"
}

TicketConnection

Fields
Field Name Description
edges - [TicketEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [TicketEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

TicketEdge

Fields
Field Name Description
cursor - String!
node - Ticket!
Example
{
  "cursor": "abc123",
  "node": Ticket
}

TicketFile

Fields
Field Name Description
id - ID!
fileName - String!
mimeType - String!
size - Int
url - URL!
createdAt - DateTime!
Example
{
  "id": "4",
  "fileName": "abc123",
  "mimeType": "abc123",
  "size": 987,
  "url": "http://www.test.com/",
  "createdAt": "2007-12-03T10:15:30Z"
}

TicketFileConnection

Fields
Field Name Description
edges - [TicketFileEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [TicketFileEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

TicketFileEdge

Fields
Field Name Description
cursor - String!
node - TicketFile!
Example
{
  "cursor": "abc123",
  "node": TicketFile
}

TicketFileOrder

Fields
Input Field Description
field - TicketFileOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

TicketFileOrderField

Values
Enum Value Description

CREATED_AT

FILE_NAME

MIME_TYPE

SIZE

Example
"CREATED_AT"

TicketInputChannel

Values
Enum Value Description

PORTAL

PHONE

EMAIL

VERBAL

Example
"PORTAL"

TicketOrder

Fields
Input Field Description
field - TicketOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

TicketOrderField

Values
Enum Value Description

CREATED_AT

UPDATED_AT

NUMBER

DISCOVER_DATE

DUE_DATE

REJECTED_AT

COMPLETED_AT

Example
"CREATED_AT"

TicketPriority

Values
Enum Value Description

LOW

MIDDLE

HIGH

Example
"LOW"

TicketStatus

Values
Enum Value Description

OPEN

SCHEDULED

REJECTED

COMPLETED

Example
"OPEN"

TicketType

Values
Enum Value Description

COMPLAINT

EXTRA

MATERIAL_DEMAND

PROPERTY_DAMAGE

OTHER

Example
"COMPLAINT"

Time

Example
"10:15:30Z"

TimeRecord

Fields
Field Name Description
id - ID!
employee - Employee!
object - Object
operationExecutor - OperationExecutor
date - Date!
journeyStart - DateTime Start of journey in UTC
start - DateTime Start of time record in UTC
end - DateTime End of time record in UTC. If end is null means the TimeRecord is running.
planDuration - Int
actualDuration - Int
breakDuration - Int
hasTotalBreakInput - Boolean!
breaks - [TimeRecordBreak]
journeyDuration - Int
journeyStartLocation - Location
startLocation - Location
endLocation - Location
createdAutomatically - Boolean!
confirmedAt - DateTime If set the TimeRecord is confirmed
createdAt - DateTime!
Example
{
  "id": 4,
  "employee": Employee,
  "object": Object,
  "operationExecutor": OperationExecutor,
  "date": "2007-12-03",
  "journeyStart": "2007-12-03T10:15:30Z",
  "start": "2007-12-03T10:15:30Z",
  "end": "2007-12-03T10:15:30Z",
  "planDuration": 123,
  "actualDuration": 123,
  "breakDuration": 123,
  "hasTotalBreakInput": false,
  "breaks": [TimeRecordBreak],
  "journeyDuration": 987,
  "journeyStartLocation": Location,
  "startLocation": Location,
  "endLocation": Location,
  "createdAutomatically": true,
  "confirmedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z"
}

TimeRecordBreak

Fields
Field Name Description
id - ID!
timeRecord - TimeRecord!
start - DateTime!
end - DateTime
createdAt - DateTime
Example
{
  "id": 4,
  "timeRecord": TimeRecord,
  "start": "2007-12-03T10:15:30Z",
  "end": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z"
}

TimeRecordConnection

Fields
Field Name Description
edges - [TimeRecordEdge]
pageInfo - PageInfo!
totalCount - Int!
Example
{
  "edges": [TimeRecordEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

TimeRecordEdge

Fields
Field Name Description
cursor - String!
node - TimeRecord!
Example
{
  "cursor": "abc123",
  "node": TimeRecord
}

TimeRecordOrder

Fields
Input Field Description
field - TimeRecordOrderField!
direction - OrderDirection!
Example
{"field": "CREATED_AT", "direction": "ASC"}

TimeRecordOrderField

Values
Enum Value Description

CREATED_AT

DATE

START

Example
"CREATED_AT"

URL

Example
"http://www.test.com/"

UpdateAbsenceInput

Fields
Input Field Description
absenceId - ID!
type - AbsenceType!
start - DateTime!
end - DateTime!
note - String
startDayFraction - Float
endDayFraction - Float
Example
{
  "absenceId": 4,
  "type": "VACATION",
  "start": "2007-12-03T10:15:30Z",
  "end": "2007-12-03T10:15:30Z",
  "note": "xyz789",
  "startDayFraction": 987.65,
  "endDayFraction": 123.45
}

UpdateAbsencePayload

Fields
Field Name Description
absence - Absence
Example
{"absence": Absence}

UpdateCreditNoteDeliveryDateInput

Fields
Input Field Description
date - Date
start - Date
end - Date
Example
{
  "date": "2007-12-03",
  "start": "2007-12-03",
  "end": "2007-12-03"
}

UpdateCreditNoteInput

Fields
Input Field Description
creditNoteId - ID!
subcontractorId - ID!
subcontractorContactPersonId - ID
number - Int!
dueDate - Date
dueDateFormat - CreditNoteDueDateFormat
hideDueDateText - Boolean This will hide the due date text on the credit note pdf
creditNoteDate - Date!
deliveryDate - UpdateCreditNoteDeliveryDateInput!
items - [UpdateCreditNoteItemInput]
introductionText - String If the value is not set, it will not be updated.
closingText - String If the value is not set, it will not be updated.
Example
{
  "creditNoteId": 4,
  "subcontractorId": 4,
  "subcontractorContactPersonId": "4",
  "number": 123,
  "dueDate": "2007-12-03",
  "dueDateFormat": "DAYS",
  "hideDueDateText": true,
  "creditNoteDate": "2007-12-03",
  "deliveryDate": UpdateCreditNoteDeliveryDateInput,
  "items": [UpdateCreditNoteItemInput],
  "introductionText": "xyz789",
  "closingText": "abc123"
}

UpdateCreditNoteItemInput

Fields
Input Field Description
creditNoteItemId - ID
title - String!
description - String
quantity - Float!
unitPrice - Int!
taxRate - Float!
unit - String
serviceId - ID
materialId - ID
Example
{
  "creditNoteItemId": 4,
  "title": "xyz789",
  "description": "xyz789",
  "quantity": 987.65,
  "unitPrice": 987,
  "taxRate": 987.65,
  "unit": "abc123",
  "serviceId": 4,
  "materialId": "4"
}

UpdateCreditNotePayload

Fields
Field Name Description
creditNote - CreditNote
Example
{"creditNote": CreditNote}

UpdateCustomerContactPersonInput

Fields
Input Field Description
customerContactPersonId - ID!
isDefault - Boolean
salutation - String!
firstName - String
lastName - String!
role - String
email - String
phone - String
Example
{
  "customerContactPersonId": "4",
  "isDefault": true,
  "salutation": "abc123",
  "firstName": "xyz789",
  "lastName": "abc123",
  "role": "abc123",
  "email": "abc123",
  "phone": "xyz789"
}

UpdateCustomerContactPersonPayload

Fields
Field Name Description
customerContactPerson - CustomerContactPerson
Example
{"customerContactPerson": CustomerContactPerson}

UpdateCustomerEmailInput

Fields
Input Field Description
id - ID
type - CustomerEmailType!
email - String!
Example
{
  "id": "4",
  "type": "GENERAL",
  "email": "abc123"
}

UpdateCustomerInput

Fields
Input Field Description
customerId - ID!
type - CustomerType!
salutation - String
firstName - String
lastName - String
companyName - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
emails - [UpdateCustomerEmailInput!]
phone - String
fax - String
website - String
vatId - String
Example
{
  "customerId": 4,
  "type": "PERSON",
  "salutation": "xyz789",
  "firstName": "abc123",
  "lastName": "abc123",
  "companyName": "abc123",
  "addressSupplement": "abc123",
  "streetAddress": "xyz789",
  "zip": "abc123",
  "city": "abc123",
  "country": "US",
  "emails": [UpdateCustomerEmailInput],
  "phone": "xyz789",
  "fax": "abc123",
  "website": "xyz789",
  "vatId": "xyz789"
}

UpdateCustomerPayload

Fields
Field Name Description
customer - Customer
Example
{"customer": Customer}

UpdateEmployeeInput

Fields
Input Field Description
employeeId - ID!
salutation - String!
firstName - String
lastName - String!
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
state - StateCode
email - String
phone - String
birthDate - Date
personnelNumberPrefix - String
personnelNumber - Int!
hasDrivingLicenceClassB - Boolean
automaticTimeRecording - Boolean
tags - [String!]
Example
{
  "employeeId": 4,
  "salutation": "abc123",
  "firstName": "xyz789",
  "lastName": "xyz789",
  "addressSupplement": "abc123",
  "streetAddress": "abc123",
  "zip": "abc123",
  "city": "xyz789",
  "country": "US",
  "state": StateCode,
  "email": "xyz789",
  "phone": "abc123",
  "birthDate": "2007-12-03",
  "personnelNumberPrefix": "abc123",
  "personnelNumber": 987,
  "hasDrivingLicenceClassB": false,
  "automaticTimeRecording": false,
  "tags": ["abc123"]
}

UpdateEmployeePayload

Fields
Field Name Description
employee - Employee
Example
{"employee": Employee}

UpdateEstimateInput

Fields
Input Field Description
estimateId - ID!
customerId - ID!
number - Int!
estimateDate - Date!
validityDate - Date!
items - [UpdateEstimateItemInput]
introductionText - String If the value is not set, it will not be updated.
closingText - String If the value is not set, it will not be updated.
Example
{
  "estimateId": "4",
  "customerId": "4",
  "number": 987,
  "estimateDate": "2007-12-03",
  "validityDate": "2007-12-03",
  "items": [UpdateEstimateItemInput],
  "introductionText": "abc123",
  "closingText": "abc123"
}

UpdateEstimateItemInput

Fields
Input Field Description
estimateItemId - ID
position - Int Position of this item within the estimate. Defaults to the item's index if omitted.
title - String!
description - String
quantity - Float!
unitPrice - Int!
taxRate - Float!
unit - String
serviceId - ID The service this item is based on.
materialId - ID
objectId - ID The object (Objekt / service location) this item is assigned to. Its customer must match the estimate's customer.
Example
{
  "estimateItemId": "4",
  "position": 987,
  "title": "xyz789",
  "description": "abc123",
  "quantity": 123.45,
  "unitPrice": 123,
  "taxRate": 987.65,
  "unit": "xyz789",
  "serviceId": "4",
  "materialId": 4,
  "objectId": 4
}

UpdateEstimatePayload

Fields
Field Name Description
estimate - Estimate
Example
{"estimate": Estimate}

UpdateEstimateWebEnabledInput

Fields
Input Field Description
estimateId - ID! The id of the estimate on which to update the web enabled option.
webEnabled - Boolean! Enables the web view for the estimate.
Example
{"estimateId": "4", "webEnabled": true}

UpdateEstimateWebEnabledPayload

Fields
Field Name Description
estimate - Estimate The estimate for which web enabled was updated.
Example
{"estimate": Estimate}

UpdateInvoiceDeliveryDateInput

Fields
Input Field Description
date - Date
start - Date
end - Date
Example
{
  "date": "2007-12-03",
  "start": "2007-12-03",
  "end": "2007-12-03"
}

UpdateInvoiceInput

Fields
Input Field Description
invoiceId - ID!
customerId - ID!
number - Int!
dueDate - Date
dueDateFormat - InvoiceDueDateFormat
hideDueDateText - Boolean This will hide the due date text on the invoice pdf
invoiceDate - Date!
deliveryDate - UpdateInvoiceDeliveryDateInput!
items - [UpdateInvoiceItemInput]
introductionText - String If the value is not set, it will not be updated.
closingText - String If the value is not set, it will not be updated.
Example
{
  "invoiceId": "4",
  "customerId": 4,
  "number": 123,
  "dueDate": "2007-12-03",
  "dueDateFormat": "DAYS",
  "hideDueDateText": false,
  "invoiceDate": "2007-12-03",
  "deliveryDate": UpdateInvoiceDeliveryDateInput,
  "items": [UpdateInvoiceItemInput],
  "introductionText": "xyz789",
  "closingText": "abc123"
}

UpdateInvoiceItemInput

Fields
Input Field Description
invoiceItemId - ID
title - String!
description - String
quantity - Float!
unitPrice - Int!
taxRate - Float!
unit - String
serviceId - ID The service this item is based on.
materialId - ID
Example
{
  "invoiceItemId": "4",
  "title": "xyz789",
  "description": "abc123",
  "quantity": 987.65,
  "unitPrice": 987,
  "taxRate": 123.45,
  "unit": "xyz789",
  "serviceId": 4,
  "materialId": 4
}

UpdateInvoicePayload

Fields
Field Name Description
invoice - Invoice
Example
{"invoice": Invoice}

UpdateObjectInput

Description

Either name, streetAddress or city has to be set

Fields
Input Field Description
objectId - ID!
customerContactPersonId - ID
name - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
state - StateCode
locationRadiusMeters - Int
email - String
phone - String
extraInvoiceAddressFieldLines - String
costCenter - String
invoiceAddress - UpdateObjectInvoiceAddressInput
invoiceSettings - UpdateObjectInvoiceSettingsInput
tags - [String!]
Example
{
  "objectId": "4",
  "customerContactPersonId": "4",
  "name": "abc123",
  "addressSupplement": "abc123",
  "streetAddress": "xyz789",
  "zip": "abc123",
  "city": "abc123",
  "country": "US",
  "state": StateCode,
  "locationRadiusMeters": 987,
  "email": "abc123",
  "phone": "xyz789",
  "extraInvoiceAddressFieldLines": "xyz789",
  "costCenter": "abc123",
  "invoiceAddress": UpdateObjectInvoiceAddressInput,
  "invoiceSettings": UpdateObjectInvoiceSettingsInput,
  "tags": ["xyz789"]
}

UpdateObjectInvoiceAddressInput

Fields
Input Field Description
type - ObjectInvoiceAddressType!
salutation - String Has to be set on type PERSON
firstName - String
lastName - String Has to be set on type PERSON
companyName - String Has to be set on type COMPANY
addressSupplement - String
streetAddress - String!
zip - String!
city - String!
country - CountryCode
Example
{
  "type": "PERSON",
  "salutation": "xyz789",
  "firstName": "xyz789",
  "lastName": "xyz789",
  "companyName": "abc123",
  "addressSupplement": "xyz789",
  "streetAddress": "xyz789",
  "zip": "abc123",
  "city": "abc123",
  "country": "US"
}

UpdateObjectInvoiceSettingsInput

Fields
Input Field Description
eInvoiceType - EInvoiceType
dueDateType - DueDateType
hideDueDateText - Boolean This will hide the due date text on the invoice pdf
introductionText - String
closingText - String
Example
{
  "eInvoiceType": "NONE",
  "dueDateType": "IMMEDIATELY",
  "hideDueDateText": true,
  "introductionText": "abc123",
  "closingText": "abc123"
}

UpdateObjectPayload

Fields
Field Name Description
object - Object
Example
{"object": Object}

UpdateOperationReportInput

Fields
Input Field Description
operationReportId - ID!
description - String
Example
{
  "operationReportId": 4,
  "description": "xyz789"
}

UpdateOperationReportPayload

Fields
Field Name Description
operationReport - OperationReport!
Example
{"operationReport": OperationReport}

UpdatePendingInvoiceItemInput

Fields
Input Field Description
pendingInvoiceItemId - ID!
serviceId - ID
materialId - ID
title - String!
description - String
quantity - Float
unitPrice - Int!
taxRate - Float!
unit - String
Example
{
  "pendingInvoiceItemId": "4",
  "serviceId": 4,
  "materialId": 4,
  "title": "abc123",
  "description": "xyz789",
  "quantity": 123.45,
  "unitPrice": 123,
  "taxRate": 123.45,
  "unit": "abc123"
}

UpdatePendingInvoiceItemPayload

Fields
Field Name Description
pendingInvoiceItem - PendingInvoiceItem
Example
{"pendingInvoiceItem": PendingInvoiceItem}

UpdateSubcontractorContactPersonInput

Fields
Input Field Description
subcontractorContactPersonId - ID!
isDefault - Boolean
salutation - String!
firstName - String
lastName - String!
role - String
email - String
phone - String
Example
{
  "subcontractorContactPersonId": "4",
  "isDefault": false,
  "salutation": "abc123",
  "firstName": "abc123",
  "lastName": "xyz789",
  "role": "abc123",
  "email": "abc123",
  "phone": "abc123"
}

UpdateSubcontractorContactPersonPayload

Fields
Field Name Description
subcontractorContactPerson - SubcontractorContactPerson
Example
{"subcontractorContactPerson": SubcontractorContactPerson}

UpdateSubcontractorInput

Fields
Input Field Description
subcontractorId - ID!
type - SubcontractorType
salutation - String
firstName - String
lastName - String
companyName - String
streetAddress - String
zip - String
city - String
country - CountryCode
email - String
phone - String
fax - String
website - String
taxNumber - String
vatId - String
Example
{
  "subcontractorId": 4,
  "type": "PERSON",
  "salutation": "abc123",
  "firstName": "xyz789",
  "lastName": "abc123",
  "companyName": "abc123",
  "streetAddress": "xyz789",
  "zip": "xyz789",
  "city": "abc123",
  "country": "US",
  "email": "xyz789",
  "phone": "abc123",
  "fax": "xyz789",
  "website": "xyz789",
  "taxNumber": "xyz789",
  "vatId": "xyz789"
}

UpdateSubcontractorPayload

Fields
Field Name Description
subcontractor - Subcontractor
Example
{"subcontractor": Subcontractor}

UpdateSupplierContactPersonInput

Fields
Input Field Description
supplierContactPersonId - ID!
isDefault - Boolean
salutation - String!
firstName - String
lastName - String!
role - String
email - String
phone - String
Example
{
  "supplierContactPersonId": 4,
  "isDefault": true,
  "salutation": "abc123",
  "firstName": "abc123",
  "lastName": "xyz789",
  "role": "xyz789",
  "email": "xyz789",
  "phone": "abc123"
}

UpdateSupplierContactPersonPayload

Fields
Field Name Description
supplierContactPerson - SupplierContactPerson
Example
{"supplierContactPerson": SupplierContactPerson}

UpdateSupplierInput

Fields
Input Field Description
supplierId - ID!
type - SupplierType!
salutation - String
firstName - String
lastName - String
companyName - String
addressSupplement - String
streetAddress - String
zip - String
city - String
country - CountryCode
email - String
phone - String
fax - String
website - String
taxNumber - String
vatId - String
tags - [String!]
Example
{
  "supplierId": 4,
  "type": "PERSON",
  "salutation": "xyz789",
  "firstName": "xyz789",
  "lastName": "abc123",
  "companyName": "xyz789",
  "addressSupplement": "xyz789",
  "streetAddress": "abc123",
  "zip": "xyz789",
  "city": "xyz789",
  "country": "US",
  "email": "xyz789",
  "phone": "abc123",
  "fax": "abc123",
  "website": "abc123",
  "taxNumber": "abc123",
  "vatId": "xyz789",
  "tags": ["abc123"]
}

UpdateSupplierPayload

Fields
Field Name Description
supplier - Supplier
Example
{"supplier": Supplier}

UpdateTicketInput

Fields
Input Field Description
ticketId - ID!
objectRoomId - ID
orderId - ID
sourceOperationId - ID
type - TicketType
isPublic - Boolean
inputChannel - TicketInputChannel
location - String
description - String!
priority - TicketPriority!
discoverDate - Date
dueDate - Date
Example
{
  "ticketId": "4",
  "objectRoomId": "4",
  "orderId": "4",
  "sourceOperationId": 4,
  "type": "COMPLAINT",
  "isPublic": false,
  "inputChannel": "PORTAL",
  "location": "xyz789",
  "description": "xyz789",
  "priority": "LOW",
  "discoverDate": "2007-12-03",
  "dueDate": "2007-12-03"
}

UpdateTicketPayload

Fields
Field Name Description
ticket - Ticket
Example
{"ticket": Ticket}

UpdateTimeRecordBreakInput

Fields
Input Field Description
timeRecordBreakId - ID!
start - DateTime!
end - DateTime!
Example
{
  "timeRecordBreakId": 4,
  "start": "2007-12-03T10:15:30Z",
  "end": "2007-12-03T10:15:30Z"
}

UpdateTimeRecordBreakPayload

Fields
Field Name Description
timeRecordBreak - TimeRecordBreak
Example
{"timeRecordBreak": TimeRecordBreak}

UpdateTimeRecordInput

Fields
Input Field Description
timeRecordId - ID!
start - DateTime! Start of time record in UTC
end - DateTime! End of time record in UTC
journeyStart - DateTime Start of journey in UTC (must be before start)
breakDuration - Int Total break duration in seconds; applied only when hasTotalBreakInput is true
hasTotalBreakInput - Boolean true: use breakDuration as the manual total and remove individual breaks; false: recompute breakDuration from individual breaks
Example
{
  "timeRecordId": "4",
  "start": "2007-12-03T10:15:30Z",
  "end": "2007-12-03T10:15:30Z",
  "journeyStart": "2007-12-03T10:15:30Z",
  "breakDuration": 987,
  "hasTotalBreakInput": true
}

UpdateTimeRecordPayload

Fields
Field Name Description
timeRecord - TimeRecord
Example
{"timeRecord": TimeRecord}

WorkingTimeModelAbsenceDurationCalculation

Values
Enum Value Description

PLAN_HOURS

TARGET_HOURS

Example
"PLAN_HOURS"

WorkingTimeModelPaidInterimCalculation

Values
Enum Value Description

FULL_INTERIM

INTERIM_WITH_JOURNEY

JOURNEY

NONE

Example
"FULL_INTERIM"

WorkingTimeModelSalaryCalculation

Values
Enum Value Description

ACTUAL_HOURS

MIN_PLAN_HOURS

MAX_PLAN_HOURS

TARGET_HOURS

Example
"ACTUAL_HOURS"