Skip to main content

Ongedocumenteerde API endpoints

  • January 16, 2026
  • 23 replies
  • 579 views

Jerdi Pol
Forum|alt.badge.img+2

Bij deze een topic om ongedocumenteerde API endpoints op een centrale plek vast te leggen.
Deze lijst zal vast niet compleet zijn, maar daar is deze community voor.
Post hieronder een comment met wat er mist en dan voeg ik het toe aan de lijst!

 

WARNING:
Gebruik van de endpoints is op eigen risico. TOPdesk kan op elk moment wijzigingen doorvoeren of de endpoint uitschakelen, zonder voorafgaande melding.
Dit kan dan leiden tot breaking changes.



Share & Subscribe API

Method: GET,

URL: /tas/api/shareandsubscribe/sharees?incidentId={ID}
Method: POST,

URL: /tas/api/shareandsubscribe/sharees?incidentId={ID}

Body: "person-id-to-share"


Voorbeeld POST:

URL: /tas/api/shareandsubscribe/sharees?incidentId=bffdf204-3097-49ca-9ada-3c02fe1d5b00

Body: "c32c9c81-464f-40b1-a52b-68a4f3fded7a"

Geproxied de API aan roepen via SERVICES

Method: Alles dat voor het API endpoint werkt

URL: /services/internal-tas-proxy/tas/api

 Email designs ophalen

Method: GET

URL: /services/action-v1/api/emailDesigns

Verbindingen ophalen

Method: GET

URL: /services/action-v1/api/httpRequestConnections

Storing notificaties ophalen

Method: GET

URL: /services/action-v1/api/failureNotifications

 Automatisch Acties ophalen (Overview)

Method: GET

URL: /services/action-v1/api/actions/overviewItems

Automatisch Acties ophalen (Item)

Method: GET

URL: /services/action-v1/api/actions/{MODULE}/{ID}

MODULES: webhook, tas_change, tas_incident, tas_problem, assetManagement

Voorbeeld: /services/action-v1/api/actions/tas_incident/12345678-f56a-4cb7-a230-204a0b88e989
 

Deze lijst is nog wel langer maar reageer vooral in de comments met alles wat hier nog niet staat!

23 replies

Forum|alt.badge.img+8

Ik zal straks ook nog een aantal leuke delen! 


Forum|alt.badge.img+8

Imports - Supporting Files

 

Get a list of Imports

GET /services/import-to-api-v1/api/supportingfiles/imports

Output example:

{
"imports": [
{
"configuration": {
"sourceType": "",
"archivingReasonToUse": "",
"briefDescription": "",
"canCreateNewRecords": true,
"canUpdateExistingActiveRecords": true,
"canUpdateExistingArchivedRecords": true,
"cardTypeKey": "person",
"failureNotificationOptions": {
"strategy": "USE_DEFAULT",
"sendOnDoneWithErrors": true
},
"fieldMapping": {
"email": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "mail",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"jobTitle": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "jobTitle",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"branch": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "companyName",
"targetFieldOnForeignCard": "name",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"tasLoginName": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "userPrincipalName",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"firstName": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "givenName",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"picture": {
"type": "SOURCE_PICTURE"
},
"telephone": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "businessPhones",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"networkLoginName": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "onPremisesSamAccountName",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"department": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "department",
"targetFieldOnForeignCard": "name",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "CREATE_NEW"
},
"lastName": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "surname",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"employeeNumber": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "employeeId",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"mainframeLoginName": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "onPremisesSecurityIdentifier",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"mobileNumber": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "mobilePhone",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
}
},
"keyFieldNames": [
"tasLoginName"
],
"missingRecordAction": "ARCHIVE",
"module": "supportingfiles",
"preFilter": {
"azureFilterConfig": {
"groupIds": [
""
]
}
},
"scheduleExpression": "0 0 3 * * ?",
"sourceFilter": {
"conditions": [
{
"sourceField": "givenName",
"type": "NOT_EMPTY",
"value": ""
},
{
"sourceField": "surname",
"type": "NOT_EMPTY",
"value": ""
},
{
"sourceField": "mail",
"type": "NOT_EMPTY",
"value": ""
},
{
"sourceField": "userPrincipalName",
"type": "NOT_EMPTY",
"value": ""
}
],
"type": "AND"
},
"triggerOnSchedule": true,
"version": "1.1"
},
"connectionId": 1,
"creationDate": "",
"creator": "",
"creatorName": "",
"id": "",
"lastStartDate": "",
"modificationDate": "",
"modifier": "",
"modifierName": ""
}
]
}

 

Run a import by ID

POST /services/import-to-api-v1/api/supportingfiles/imports/${ID}/execute

Parameter Type Omschrijving Verplicht
ID string (uuid) The import ID true

 

Output example:

{
"id": "execution_id"
}

 

Get a list of import history

GET /services/import-to-api-v1/api/supportingfiles/executions/history?page=1&search=

Parameter Type Omschrijving Verplicht
page int Page number true
search string Search string false

 

Output example:

{
"numberOfPages": 91,
"results": [
{
"configuration": {
"sourceType": "",
"archivingReasonToUse": "",
"briefDescription": "",
"canCreateNewRecords": true,
"canUpdateExistingActiveRecords": true,
"canUpdateExistingArchivedRecords": true,
"cardTypeKey": "",
"failureNotificationOptions": {
"strategy": "USE_DEFAULT",
"sendOnDoneWithErrors": true
},
"fieldMapping": {
"employeeNumber": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "employeeId",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"email": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "mail",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"mobileNumber": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "mobilePhone",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"picture": {
"type": "SOURCE_PICTURE"
},
"lastName": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "surname",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"telephone": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "businessPhones",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"branch": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "companyName",
"targetFieldOnForeignCard": "name",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"loginPermission": {
"type": "FIXED_VALUE",
"onlyImportedIfTargetFieldIsEmpty": false,
"value": true
},
"firstName": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "givenName",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"networkLoginName": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "onPremisesSamAccountName",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"jobTitle": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "jobTitle",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"linkedPerson": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "userPrincipalName",
"targetFieldOnForeignCard": "tasLoginName",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
},
"department": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "department",
"targetFieldOnForeignCard": "name",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "CREATE_NEW"
},
"loginName": {
"type": "SOURCE_VALUE",
"emptyValueFallback": "",
"ignoreEmptySourceValue": false,
"onlyImportedIfTargetFieldIsEmpty": false,
"sourceField": "userPrincipalName",
"tooLongValueAction": "SKIP_RECORD",
"unrecognizedForeignValueAction": "SKIP_RECORD"
}
},
"keyFieldNames": [
"loginName"
],
"missingRecordAction": "ARCHIVE",
"module": "supportingfiles",
"preFilter": {
"azureFilterConfig": {
"groupIds": [
""
]
}
},
"scheduleExpression": "0 30 * * * ?",
"sourceFilter": {
"conditions": [
{
"sourceField": "userPrincipalName",
"type": "NOT_EMPTY",
"value": ""
},
{
"sourceField": "accountEnabled",
"type": "EQUAL",
"value": "True"
}
],
"type": "AND"
},
"triggerOnSchedule": true,
"version": "1.1"
},
"id": "",
"importId": "",
"modifier": "",
"modifierName": "",
"startDate": "",
"starter": "",
"starterName": "",
"status": "",
"triggerType": "",
}
]
}

 

Get import result

GET /services/import-to-api-v1/api/supportingfiles/executions/${ID}/progress

Parameter Type Omschrijving Verplicht
ID string (uuid) The execution ID true

 

Output example:

{
"errors": [],
"id": "",
"lastResultIndex": 5714100,
"modifier": "",
"modifierName": "",
"progressPercentage": 100,
"results": [
{
"executionId": "",
"status": "",
"details": {
"id": "",
"entityKey": {
"loginName": ""
},
"errors": [
{
"errorCode": "internal_error_with_details",
"errorMessage": "",
"fields": [],
"values": []
}
]
}
}
],
"startDate": "",
"starter": "",
"starterName": "",
"status": "DONE",
"summary": null,
"triggerType": ""
}

 


Forum|alt.badge.img+2
  • Starter
  • January 26, 2026

heb er op het moment maar 1 maar deze is wel de basis voor mijn actiereeks die behandelaren archiveert als ze een bepaalde tijd niet ingelogd hebben in TOPdesk.

 

dit is de service achter het rapport overzicht active behandelaars:

/services/active-user-overview/api/all-user-activity


Sanne van Opstal-Brakel
Community Manager
Forum|alt.badge.img+11

Ik merk dat klanten veel naar deze post kijken wat ansich echt helemaal top is, maar ik wil hier wel eventjes een kanttekening bij maken...
 

We zien dat deze API-endpoints worden gebruikt, maar ik wil even benadrukken dat dit een ongedocumenteerde en niet-ondersteunde endpoints zijn.

 

Gebruik hiervan is op eigen risico. We kunnen op elk moment wijzigingen doorvoeren of de endpoint uitschakelen, zonder voorafgaande melding. Dit kan dan leiden tot breaking changes.

 

Voor stabiele en ondersteunde integraties adviseren we daarom om uitsluitend gebruik te maken van de gedocumenteerde API-endpoints.


Forum|alt.badge.img+8

Ik merk dat klanten veel naar deze post kijken wat ansich echt helemaal top is, maar ik wil hier wel eventjes een kanttekening bij maken...
 

We zien dat deze API-endpoints worden gebruikt, maar ik wil even benadrukken dat dit een ongedocumenteerde en niet-ondersteunde endpoints zijn.

 

Gebruik hiervan is op eigen risico. We kunnen op elk moment wijzigingen doorvoeren of de endpoint uitschakelen, zonder voorafgaande melding. Dit kan dan leiden tot breaking changes.

 

Voor stabiele en ondersteunde integraties adviseren we daarom om uitsluitend gebruik te maken van de gedocumenteerde API-endpoints.

Ik sluit mij hier volledig bij aan. Het is ook op eigen risico. Maar, er is blijkbaar wel behoefte naar deze ongedocumenteerde functionaliteit(en).
 

Hoe kijkt TOPdesk hiernaar? Even los van het feit voor TIPs.   


Jerdi Pol
Forum|alt.badge.img+2
  • Author
  • February 2, 2026

Ik merk dat klanten veel naar deze post kijken wat ansich echt helemaal top is, maar ik wil hier wel eventjes een kanttekening bij maken...
 

We zien dat deze API-endpoints worden gebruikt, maar ik wil even benadrukken dat dit een ongedocumenteerde en niet-ondersteunde endpoints zijn.

 

Gebruik hiervan is op eigen risico. We kunnen op elk moment wijzigingen doorvoeren of de endpoint uitschakelen, zonder voorafgaande melding. Dit kan dan leiden tot breaking changes.

 

Voor stabiele en ondersteunde integraties adviseren we daarom om uitsluitend gebruik te maken van de gedocumenteerde API-endpoints.

Ik heb een extra duidelijke warning boven in het bericht gezet!

Ik ben overigens ook benieuwd naar hoe TOPdesk kijkt naar het feit dat er toch interesse is voor de endpoints en of het misschien een goed idee is om de API uit te breiden/compleet te maken.


Sanne van Opstal-Brakel
Community Manager
Forum|alt.badge.img+11

Dank voor jullie vragen ​@Jerdi-Deltion  en ​@Rico Roodenburg!  

De beste manier om aan te geven dat je behoefte hebt aan een bepaald API‑endpoint, is door hiervoor een feature request in te dienen via TIP. Op die manier komt het signaal via de juiste route bij onze Product Management‑teams terecht. Zij nemen deze input mee wanneer er wordt gekeken naar uitbreidingen of verbeteringen aan bestaande modules en de bijbehorende API’s.

 

Wanneer modules worden geüpdatet, evalueren we regelmatig welke API’s beschikbaar zijn, waar extra behoefte ligt en of bepaalde functionaliteiten wel of niet als open endpoint beschikbaar kunnen of moeten worden gesteld. Dat proces gebeurt zorgvuldig, omdat we willen voorkomen dat we endpoints aanbieden die we op termijn niet kunnen blijven ondersteunen.

 

Wat misschien ook goed is om te noemen: binnen TOPdesk maken we tijdens ontwikkeling steeds meer gebruik van API’s. Daardoor kun je soms via de developer tools in je browser endpoints tegenkomen die technisch bestaan, maar niet bedoeld zijn voor publiek gebruik. Omdat deze niet zijn gedocumenteerd, is er geen garantie dat ze blijven werken, bij een update kunnen ze zo verdwijnen of veranderen. Dat maakt het gebruik ervan dus echt op eigen risico.


Forum|alt.badge.img
  • New Member
  • February 5, 2026

We have been pushing with TIP and our account manager for years to get shares available via API in a supported way since we are trying to move our email notification in automated action since we have fields that needs to be adjusted dynamically (we are a bilingual university) and as such we need to maintain a lot more event if we need to do them in the email action. 

Also at this point share has been available for years in incident but no move on the approved endpoint which leads us to use it as a patch to meet our needs. (same problem with the change api being a lot more limited compared to incident for instance)


Forum|alt.badge.img+2
  • Starter
  • March 12, 2026

Begrijp ik het goed dat je deze in kan zetten om op een incident "delen met anderen” te automatiseren?

Share & Subscribe API

Method: GET,

URL: /tas/api/shareandsubscribe/sharees?incidentId={ID}

 

Method: POST,

URL: /tas/api/shareandsubscribe/sharees?incidentId={ID}

Body: "person-id-to-share"

Voorbeeld POST:

URL: /tas/api/shareandsubscribe/sharees?incidentId=bffdf204-3097-49ca-9ada-3c02fe1d5b00

Body: "c32c9c81-464f-40b1-a52b-68a4f3fded7a"

 

 


Forum|alt.badge.img
  • New Member
  • March 12, 2026

Yes you can use GET, POST and DELETE to remove sharees

Delete works the same as post 

Method: DELETE,

URL: /tas/api/shareandsubscribe/sharees?incidentId={ID}

Body: "person-id-to-share"

Voorbeeld DELETE:

URL: /tas/api/shareandsubscribe/sharees?incidentId=bffdf204-3097-49ca-9ada-3c02fe1d5b00

Body: "c32c9c81-464f-40b1-a52b-68a4f3fded7a"


Forum|alt.badge.img+2
  • Starter
  • March 12, 2026

Heb jij (of iemand anders) heel toevallig een json (met POST) op een incident in gebruik die ik mag gebruiken (beter goed gekopieerd dan slecht verzonnen)

 


edwintalsma
Forum|alt.badge.img+3
  • Starter
  • April 2, 2026

Weet iemand toevallig een ongedocumenteerde api call om een attentie bij een persoonskaart weg te halen?


Niels Henriët
Forum|alt.badge.img+4

Weet iemand toevallig een ongedocumenteerde api call om een attentie bij een persoonskaart weg te halen?

Via een PATCH naar /tas/api/persons/id/{id} met body:
 

{

    "attention": null,

    "attentionComment": ""

}


edwintalsma
Forum|alt.badge.img+3
  • Starter
  • April 2, 2026

Weet iemand toevallig een ongedocumenteerde api call om een attentie bij een persoonskaart weg te halen?

Via een PATCH naar /tas/api/persons/id/{id} met body:
 

{

    "attention": null,

    "attentionComment": ""

}

Bijna.

{
 "attention": null
}
 

Werkt wel. Bedankt 😀


Forum|alt.badge.img+8

Weet iemand toevallig een ongedocumenteerde api call om een attentie bij een persoonskaart weg te halen?

Via een PATCH naar /tas/api/persons/id/{id} met body:
 

{

    "attention": null,

    "attentionComment": ""

}

Bijna.

{
 "attention": null
}
 

Werkt wel. Bedankt 😀

Lekker bezig! En het mooiste.. nog supported ook!

https://developers.topdesk.com/explorer/?page=supporting-files#/Persons/patchPersonById:~:text=%22attention%22%3A%20%7B%0A%20%20%20%20%22id%22%3A%20%223fa85f64%2D5717%2D4562%2Db3fc%2D2c963f66afa6%22%2C%0A%20%20%20%20%22comment%22%3A%20%22string%22%0A%20%20%7D%2C


Forum|alt.badge.img+2
  • Starter
  • April 17, 2026

nog 2 dingen die mensen misschien handig vinden deze staan niet beschreven op developers maar met wat zoeken kan je deze wel vinden op my.topdesk

 

de eerste is de endpoint voor het uploaden van import bestanden 

PUT
/services/import-to-api-v1/api/sourceFiles?filename=%myfile%

 

De tweede is dat je ODATA kan gebruiken in je actiereeksen 

GET
/services/reporting/v2/odata/%odatatable%

Zo kan je op eigenlijk alles wat in odata zoeken ook al is hier niet een get voor of kan je filteren op dingen die de standaard API get niet toelaat. Het filteren kan je doen op de zelfde manier als query normaal alleen gebruik je ?$filter=
even een niet echt nuttig voorbeeld: /services/reporting/v2/odata/IncidentDetails?$filter=IncidentNumber eq '${_card["naam"]!}'


Forum|alt.badge.img
  • New Member
  • April 23, 2026

heb er op het moment maar 1 maar deze is wel de basis voor mijn actiereeks die behandelaren archiveert als ze een bepaalde tijd niet ingelogd hebben in TOPdesk.

 

dit is de service achter het rapport overzicht active behandelaars:

/services/active-user-overview/api/all-user-activity

Hier heb ik ook naar gekeken maar ik kom er niet achter hoe je kunt achterhalen wanneer de laatste login is. Dit staat niet in de response van /services/active-user-overview/api/all-user-activity en ook niet in de response van een get op operatorID.
Hoe heb je dit opgelost?


Forum|alt.badge.img+2
  • Starter
  • April 23, 2026

heb er op het moment maar 1 maar deze is wel de basis voor mijn actiereeks die behandelaren archiveert als ze een bepaalde tijd niet ingelogd hebben in TOPdesk.

 

dit is de service achter het rapport overzicht active behandelaars:

/services/active-user-overview/api/all-user-activity

Hier heb ik ook naar gekeken maar ik kom er niet achter hoe je kunt achterhalen wanneer de laatste login is. Dit staat niet in de response van /services/active-user-overview/api/all-user-activity en ook niet in de response van een get op operatorID.
Hoe heb je dit opgelost?

Als ik dit uitvoer dan krijg ik onderstaande maar wel alleen als het account het afgelopen jaar een keer ingelogd heeft. Anders mist de lastActive inderdaad. 

{
      "dynamicName": "[Naam]",
      "id": "[unid]",
      "isLoggedIn": true/false,
      "lastActive": 1776955656017,
      "licensed": true/false,
      "loginName": "[loginnaam]",
      "principalId": "[id]"
    }

LastActive is unix time dus ik reken de huidige tijd plus de tijd die ingesteld is en vergelijk de 2 en afhankelijk van wat groter is doet die wel of geen dingen. 

Voor als er geen lastActive is doe ik een get op de behandelaarskaart en gebruik ik de datum van aanmaak en doe ik een berekening of die datum plus de tijd die ingesteld staat groter is als de dag dat die afgaat. 

 


Forum|alt.badge.img
  • New Member
  • April 24, 2026

Haha thanks, ik zie het inderdaad. Mijn testomgeving heeft maar drie van de 400 behandelaars die daadwerkelijk kunnen inloggen, de elementen die ik bekeek ontbrak lastAcitve.

Bedankt voor je reactie, ik ga er mee aan de slag.


Forum|alt.badge.img
  • New Member
  • May 1, 2026

Is er iemand die een oplossing heeft voor operationele activiteiten?

Het is met de api wel mogelijk om er 1 aan te maken, maar het is niet mogelijk om er een reeks aan te koppelen. 

Het punt is dat er nu een lijst van honderden acties is (in SharePoint) die we naar operationele activiteiten willen verplaatsen, maar als er geen mogelijkheid is om er een reeks aan te koppelen dan zouden we dat handmatig moeten doen en je voelt hem aan aankomen, daar wordt ik niet blij van.


Forum|alt.badge.img+2

Ik heb voor de volgende optie een TIP aangevraagd:

 

Method: GET,

URL: /tas/api/shareandsubscribe/sharees?incidentId={ID}

 

Ik probeerde het zelf alleen kreeg ik geen resultaat (kan aan mij liggen)


Forum|alt.badge.img+8

Ik heb voor de volgende optie een TIP aangevraagd:

 

Method: GET,

URL: /tas/api/shareandsubscribe/sharees?incidentId={ID}

 

Ik probeerde het zelf alleen kreeg ik geen resultaat (kan aan mij liggen)

Wat is je doel?


Forum|alt.badge.img+2

Ik heb voor de volgende optie een TIP aangevraagd:

 

Method: GET,

URL: /tas/api/shareandsubscribe/sharees?incidentId={ID}

 

Ik probeerde het zelf alleen kreeg ik geen resultaat (kan aan mij liggen)

Wat is je doel?

Mijn doel is het informeren van een vestigingsmanager (VM)(locatie verantwoordelijke)

Context: 250~ locaties door heel nederland qua kinderopvang, medewerkers mogen facilitaire meldingen doen als er bijv een raam slecht sluit of een speeltoestel niet meer in orde is etc.

 

Graag zou ik willen dat de VM op de hoogte is van alle facilitaire meldingen. Voor nu kan ik alle meldingen wel koppelen alleen krijgen ze dan alleen mail updates en zien ze niet alle meldingen terug. Dit resulteert er in dat een VM meerdere meldingen maakt over hetzelfde onderwerp.

Een oplossing zou zijn, het vinkje bij melding inzicht, zodat je alle meldingen kunt zien van een specifieke locatie, dit gaat bij ons niet omdat:

  1. VM heeft meerdere locaties
  2. Er zit geen filter op het vinkje, stel je wilt een melding maken bij HR over prive zaken dan kan iedereen hier in meekijken