Ga naar inhoud

Koppeling met Sjapo

Eyetelligence is gekoppeld met Sjapo.

Informatie voor managers

Om te koppelen met Sjapo zul je een API-key moeten aanmaken en deze verstrekken aan Sjapo zodat ze bij jouw gegevens kunnen. Neem contact met ons op zodat we jouw API-key kunnen verstrekken, dit kun je (nog) niet zelf doen.

Informatie voor ontwikkelaars

  • We maken gebruik van GraphQL
  • Het schema is beschikbaar op https://cockpit.eyetelligence.nl/api/api/schema
  • Het endpoint voor de Sjapo koppeling is: https://cockpit.eyetelligence.nl/api/api/query
  • De API-key moet als header meegegeven worden in de vorm: Authorization: Bearer [mijn token]
  • Er geldt een fair-use policy
  • Gebruik onderstaande query om de relevante data op te halen:
query ($period: Period!, $year: Int!) {
    sjapo(period: $period) {
        id
        employee {
            id
            employeeNumber
            name
            givenNames
            prefix
            surname
            email
            dateOfBirth
            address {
                country
                region
                city
                street
                houseNumber
                houseNumberAddition
                postcode
            }
        }
        startDate
        endDate
        hours(period: $period)
        attendances(period: $period) {
            id
            startCorrected
        }
        overtimeHours(period: $period)
        illnessHours(period: $period)
        shifts(period: $period) {
            id
            start
            end
            comment
            breakDuration
            shiftType
        }
        availabilities(period: $period) {
            id
            start
            end
            isAvailable
            comment
        }
        todos(period: $period) {
            label
        }
    }
    journals(year: $year) {
        employeeName
        employeeNumber
        period
        year
        run
        department
        costCenter
        costUnit
        percentage
        generalLedgerAccount
        componentName
        debit
        credit
        total
    }
}

Bijvoorbeeld:

curl https://cockpit.eyetelligence.nl/api/api/query \
    -H 'Authorization: Bearer apitoken' \
    --data-urlencode 'query=
        query ($period: Period!, $year: Int!) {
            sjapo (period: $period) {
                id
                employee {
                    id
                    employeeNumber
                    name
                    givenNames
                }
                startDate
                endDate
                hours(period: $period)
                shifts(period: $period) {
                    id
                    start
                    end
                    comment
                    shiftType
                }
                availabilities(period: $period) {
                    id
                    start
                    end
                    isAvailable
                    comment
                }
                todos(period: $period) {
                    label
                }
            }
            journals(year: $year) {
                employeeName
                employeeNumber
                period
                year
                run
                department
                costCenter
                costUnit
                percentage
                generalLedgerAccount
                componentName
                debit
                credit
                total
            }
        }
    ' \
    --data-urlencode 'variables={"period":{"year":2023,"period":7},"year":2024}'